summaryrefslogtreecommitdiff
path: root/src/being/being.h
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-11-10 14:53:33 +0300
committerAndrei Karas <akaras@inbox.ru>2013-11-10 15:41:25 +0300
commit44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed (patch)
tree1af016870cd47c00e860673d1710b0b98a3bf101 /src/being/being.h
parente5f83f094dd658163150ea2a41c5d4a67f21019c (diff)
downloadmanaplus-44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed.tar.gz
manaplus-44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed.tar.bz2
manaplus-44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed.tar.xz
manaplus-44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed.zip
add support for item particles.
For this used particlefx tag in items.xml
Diffstat (limited to 'src/being/being.h')
-rw-r--r--src/being/being.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/being/being.h b/src/being/being.h
index 313a92c2d..a2316d607 100644
--- a/src/being/being.h
+++ b/src/being/being.h
@@ -53,6 +53,8 @@ class Party;
class SpeechBubble;
class Text;
+struct ParticleInfo;
+
extern volatile int cur_time;
enum Gender
@@ -903,6 +905,8 @@ class Being : public ActorSprite, public ConfigListener
void setMap(Map *const map);
+ void recreateItemParticles();
+
protected:
/**
* Updates name's location.
@@ -911,6 +915,12 @@ class Being : public ActorSprite, public ConfigListener
void showName();
+ void addItemParticles(const int id, const SpriteDisplay &display);
+
+ void removeAllItemsParticles();
+
+ void removeItemParticles(const int id);
+
static int getDefaultEffectId(const int type);
BeingInfo *mInfo;
@@ -942,9 +952,13 @@ class Being : public ActorSprite, public ConfigListener
Vector mDest; /**< destination coordinates. */
+ typedef std::map<int, ParticleInfo*> SpriteParticleInfo;
+ typedef SpriteParticleInfo::iterator SpriteParticleInfoIter;
+
StringVect mSpriteColors;
std::vector<int> mSpriteIDs;
std::vector<int> mSpriteColorsIds;
+ SpriteParticleInfo mSpriteParticles;
// Character guild information
std::map<int, Guild*> mGuilds;