diff options
author | Andrei Karas <akaras@inbox.ru> | 2013-11-10 14:53:33 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2013-11-10 15:41:25 +0300 |
commit | 44e5d8bcb7fea443ca9ed3844454b11ac6e4dbed (patch) | |
tree | 1af016870cd47c00e860673d1710b0b98a3bf101 /src/being/being.h | |
parent | e5f83f094dd658163150ea2a41c5d4a67f21019c (diff) | |
download | manaplus-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.h | 14 |
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; |