]> git.localhorst.tv Git - l2e.git/blobdiff - src/common/Item.h
added sword attack animation
[l2e.git] / src / common / Item.h
index 0542acc6a2dacc1c9999ce871167d1055402e4e4..1d9d51c56baa8260779f6b3115d876bc8d4a964d 100644 (file)
 
 #include <SDL.h>
 
-namespace graphics { class Sprite; }
+namespace graphics {
+       class Animation;
+       class Sprite;
+}
 
 namespace common {
 
+class Ikari;
+
 class Item {
 
 public:
@@ -43,6 +48,12 @@ public:
        bool HasChestIcon() const { return chestIcon; }
        const graphics::Sprite *ChestIcon() const { return chestIcon; }
 
+       bool HasIkari() const { return ikari; }
+       const Ikari *GetIkari() const { return ikari; }
+
+       graphics::Animation *AttackAnimation() { return attackAnimation; }
+       const graphics::Animation *AttackAnimation() const { return attackAnimation; }
+
        Uint16 Value() const { return value; }
 
        bool CanEquipWeapon() const { return equipable & EQUIPPABLE_WEAPON; }
@@ -74,6 +85,8 @@ public:
        void SetName(const char *n) { name = n; }
        void SetMenuIcon(const graphics::Sprite *icon) { menuIcon = icon; }
        void SetUsableInBattle() { usability |= USABILITY_BATTLE; }
+       void SetIkari(const Ikari *i) { ikari = i; }
+       void SetAttackAnimation(graphics::Animation *a) { attackAnimation = a; }
 
 private:
        enum Usability {
@@ -118,6 +131,8 @@ private:
        const char *name;
        const graphics::Sprite *menuIcon;
        const graphics::Sprite *chestIcon;
+       const Ikari *ikari;
+       graphics::Animation *attackAnimation;
 
        Uint16 value;
        Uint16 properties;