summaryrefslogtreecommitdiff
path: root/src/map/map.t.hpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2012-12-20 18:32:32 -0800
committerBen Longbons <b.r.longbons@gmail.com>2012-12-24 10:02:19 -0800
commit2b092c150e1226decc48160316070fc44d5fbba0 (patch)
tree48456d14896059fd223401aa15d4e29010a81436 /src/map/map.t.hpp
parentb52127bcbf817ff8285b36d22198b275327e16bb (diff)
downloadtmwa-2b092c150e1226decc48160316070fc44d5fbba0.tar.gz
tmwa-2b092c150e1226decc48160316070fc44d5fbba0.tar.bz2
tmwa-2b092c150e1226decc48160316070fc44d5fbba0.tar.xz
tmwa-2b092c150e1226decc48160316070fc44d5fbba0.zip
Enumify option, opt1, opt2, and opt3
Diffstat (limited to 'src/map/map.t.hpp')
-rw-r--r--src/map/map.t.hpp91
1 files changed, 91 insertions, 0 deletions
diff --git a/src/map/map.t.hpp b/src/map/map.t.hpp
new file mode 100644
index 0000000..50110e9
--- /dev/null
+++ b/src/map/map.t.hpp
@@ -0,0 +1,91 @@
+#ifndef MAP_T_HPP
+#define MAP_T_HPP
+
+#include "../common/utils.hpp"
+
+// [Fate] status.option properties. These are persistent status changes.
+// IDs that are not listed are not used in the code (to the best of my knowledge)
+enum class Option : uint16_t
+{
+ ZERO = 0x0000,
+
+ SIGHT = 0x0001,
+ // apparently some weaker non-GM hide
+ HIDE2 = 0x0002,
+ CLOAK = 0x0004,
+ CART1 = 0x0008,
+ FALCON = 0x0010,
+ RIDING = 0x0020,
+ // [Fate] This is the GM `@hide' flag
+ HIDE = 0x0040,
+ CART2 = 0x0080,
+ CART3 = 0x0100,
+ CART4 = 0x0200,
+ CART5 = 0x0400,
+ ORC_HEAD = 0x0800,
+ // [Fate] Complete invisibility to other clients
+ INVISIBILITY = 0x1000,
+ _wedding = 0x1000,
+ // [Fate] Auto-logging of nearby comments
+ SCRIBE = 0x2000,
+ _ruwach = 0x2000,
+ CHASEWALK = 0x4000,
+ sign = 0x8000,
+
+
+ // ?
+ REAL_ANY_HIDE = HIDE | CLOAK | HIDE2,
+ OLD_ANY_HIDE = CHASEWALK | CLOAK | HIDE2,
+ CART_MASK = CART1 | CART2 | CART3 | CART4 | CART5,
+ MASK = sign | CHASEWALK | _wedding | CART_MASK | RIDING | FALCON,
+};
+enum class Opt1 : uint16_t
+{
+ ZERO = 0,
+ _stone1 = 1,
+ _freeze = 2,
+ _stan = 3,
+ _sleep = 4,
+ _stone6 = 6,
+};
+enum class Opt2 : uint16_t
+{
+ ZERO = 0x0000,
+ _poison = 0x0001,
+ _curse = 0x0002,
+ _silence = 0x0004,
+ BLIND = 0x0010,
+ _speedpotion0 = 0x0020,
+ _signumcrucis = 0x0040,
+ _atkpot = 0x0080,
+ _heal = 0x0100,
+ _slowpoison = 0x0200,
+ sign = 0x8000,
+};
+enum class Opt3 : uint16_t
+{
+ ZERO = 0x0000,
+ _concentration = 0x0001,
+ _overthrust = 0x0002,
+ _energycoat = 0x0004,
+ _explosionspirits = 0x0008,
+ _steelbody = 0x0010,
+ _bladestop = 0x0020,
+ _berserk = 0x0080,
+
+ _marionette = 0x0400,
+ _assumptio = 0x0800,
+
+ sign = 0x8000,
+};
+
+ENUM_BITWISE_OPERATORS(Option)
+ENUM_BITWISE_OPERATORS(Opt2)
+ENUM_BITWISE_OPERATORS(Opt3)
+
+
+enum
+{ BL_NUL, BL_PC, BL_NPC, BL_MOB, BL_ITEM, BL_CHAT, BL_SKILL, BL_SPELL };
+enum
+{ WARP, SHOP, SCRIPT, MONS, MESSAGE };
+#endif // MAP_T_HPP