summaryrefslogtreecommitdiff
path: root/src/being.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/being.h')
-rw-r--r--src/being.h92
1 files changed, 80 insertions, 12 deletions
diff --git a/src/being.h b/src/being.h
index 2782a265..fb6e837a 100644
--- a/src/being.h
+++ b/src/being.h
@@ -33,15 +33,83 @@
class Controller;
/**
+ * Element attribute for beings, actors and items.
+ */
+typedef enum {
+ ELEMENT_NEUTRAL = 0,
+ ELEMENT_FIRE,
+ ELEMENT_WATER,
+ ELEMENT_EARTH,
+ ELEMENT_AIR,
+ ELEMENT_SACRED,
+ ELEMENT_DEATH
+} Element;
+
+/**
+ * States attribute for beings, and actors.
+ * States can be multiple for the same being.
+ */
+struct BeingState {
+ bool STATE_NORMAL;
+ bool STATE_POISONED;
+ bool STATE_STONED;
+ bool STATE_STUNNED;
+ bool STATE_SLOWED;
+ bool STATE_TIRED;
+ bool STATE_MAD;
+ bool STATE_BERSERK;
+ bool STATE_HASTED;
+ bool STATE_FLOATING;
+};
+
+/**
+ * Moves enum for beings and actors for others players vision.
+ */
+typedef enum {
+ ACTION_DEFAULT = 0,
+ ACTION_STAND,
+ ACTION_WALK,
+ ACTION_RUN,
+ ACTION_JUMP,
+ ACTION_CRAWL,
+ ACTION_ATTACK,
+ ACTION_ATTACK_SWING,
+ ACTION_ATTACK_STAB,
+ ACTION_ATTACK_BOW,
+ ACTION_ATTACK_THROW,
+ ACTION_CAST_MAGIC,
+ ACTION_USE_ITEM,
+ ACTION_SIT,
+ ACTION_SLEEP,
+ ACTION_HURT,
+ ACTION_DEAD,
+ ACTION_INVALID
+} SpriteAction;
+
+/**
+ * Beings and actors directions
+ */
+typedef enum {
+ DIRECTION_NORTH,
+ DIRECTION_NORTHWEST,
+ DIRECTION_NORTHEAST,
+ DIRECTION_WEST,
+ DIRECTION_EAST,
+ DIRECTION_SOUTH,
+ DIRECTION_SOUTHWEST,
+ DIRECTION_SOUTHEAST
+} SpriteDirection;
+
+/**
* Raw statistics of a Player.
*/
enum {
- STAT_STR = 0,
- STAT_AGI,
- STAT_VIT,
- STAT_INT,
- STAT_DEX,
- STAT_LUK,
+ STAT_STRENGTH = 0,
+ STAT_AGILITY,
+ STAT_VITALITY,
+ STAT_INTELLIGENCE,
+ STAT_DEXTERITY,
+ STAT_LUCK,
NB_RSTAT
};
@@ -57,12 +125,12 @@ struct RawStatistics
* Computed statistics of a Being.
*/
enum {
- STAT_HEA = 0,
- STAT_ATT,
- STAT_DEF,
- STAT_MAG,
- STAT_ACC,
- STAT_SPD,
+ STAT_HEAT = 0,
+ STAT_ATTACK,
+ STAT_DEFENCE,
+ STAT_MAGIC,
+ STAT_ACCURACY,
+ STAT_SPEED,
NB_CSTAT
};