summaryrefslogtreecommitdiff
path: root/src/item.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-10-21 15:08:07 +0300
committerAndrei Karas <akaras@inbox.ru>2014-10-21 16:17:44 +0300
commit26a4a4ddfde04ae02964c434063d74d82e3a2143 (patch)
tree120b7d12002a53eaa40bfa2ebf3562ae231ccb27 /src/item.cpp
parent0875a6ddfda9ece1af4a818e38be1f99e578c59a (diff)
downloadmanaplus-26a4a4ddfde04ae02964c434063d74d82e3a2143.tar.gz
manaplus-26a4a4ddfde04ae02964c434063d74d82e3a2143.tar.bz2
manaplus-26a4a4ddfde04ae02964c434063d74d82e3a2143.tar.xz
manaplus-26a4a4ddfde04ae02964c434063d74d82e3a2143.zip
Add card fields into item.
Diffstat (limited to 'src/item.cpp')
-rw-r--r--src/item.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/item.cpp b/src/item.cpp
index 1dcd2bbcc..3b4beacdc 100644
--- a/src/item.cpp
+++ b/src/item.cpp
@@ -52,6 +52,7 @@ Item::Item(const int id,
mImage(nullptr),
mDescription(),
mTags(),
+ mCards(),
mRefine(refine),
mInvIndex(0),
mEquipment(equipment),
@@ -62,6 +63,8 @@ Item::Item(const int id,
mFavorite(favorite)
{
setId(id, color);
+ for (int f = 0; f < 4; f ++)
+ mCards[f] = 0;
}
Item::~Item()
@@ -130,3 +133,28 @@ std::string Item::getName() const
else
return info.getName();
}
+
+void Item::setCard(const int index, const int id)
+{
+ if (index < 0 || index >= maxCards)
+ return;
+ mCards[index] = id;
+}
+
+int Item::getCard(const int index) const
+{
+ if (index < 0 || index >= maxCards)
+ return 0 ;
+ return mCards[index];
+}
+
+void Item::setCards(const int *const cards, const int size)
+{
+ if (size < 0 || !cards)
+ return;
+ int sz = size;
+ if (sz > maxCards)
+ sz = maxCards;
+ for (int f = 0; f < sz; f ++)
+ mCards[f] = cards[f];
+}