Updated some defines

- ATKMODE defines removed to avoid confusion - these are really two 4-bit fields, not bit flags!
This commit is contained in:
phobos2077
2023-05-14 01:44:15 +02:00
parent 1683678657
commit 493003af54
3 changed files with 47 additions and 41 deletions
@@ -129,6 +129,14 @@
#define self_is_armed critter_is_armed(self_obj)
#define self_wearing_armor critter_wearing_armor(self_obj)
// perks and traits
#define get_perk(cr,perk) has_trait(TRAIT_PERK,cr,perk)
#define dude_perk(perk) get_perk(dude_obj,perk)
#define self_perk(perk) get_perk(self_obj,perk)
#define get_trait(cr,trait) has_trait(TRAIT_TRAIT,cr,trait)
#define dude_trait(trait) get_trait(dude_obj,trait)
#define self_trait(trait) get_trait(self_obj,trait)
#define self_carrying_laser_pistol ((obj_pid(critter_inven_obj(self_obj,INVEN_TYPE_LEFT_HAND)) == PID_LASER_PISTOL) orElse \
(obj_pid(critter_inven_obj(self_obj,INVEN_TYPE_RIGHT_HAND)) == PID_LASER_PISTOL))
+32 -18
View File
@@ -49,24 +49,38 @@
#define WEAPON_2HAND 0x00000200 // 2Hnd (weapon is two-handed)
#define WEAPON_ENERGY 0x00000400 // Energy Weapon (forces weapon to use Energy Weapons skill) [sfall 4.2/3.8.20]
#define ATKMODE_PRI_NONE 0
#define ATKMODE_PRI_PUNCH 1 // 0001
#define ATKMODE_PRI_KICK 2 // 0010
#define ATKMODE_PRI_SWING 3 // 0011
#define ATKMODE_PRI_THRUST 4 // 0100
#define ATKMODE_PRI_THROW 5 // 0101
#define ATKMODE_PRI_SINGLE 6 // 0110
#define ATKMODE_PRI_BURST 7 // 0111
#define ATKMODE_PRI_FLAME 8 // 1000
#define ATKMODE_SEC_NONE 0
#define ATKMODE_SEC_PUNCH 16 // 0x00000010
#define ATKMODE_SEC_KICK 32 // 0x00000020
#define ATKMODE_SEC_SWING 48 // 0x00000030
#define ATKMODE_SEC_THRUST 64 // 0x00000040
#define ATKMODE_SEC_THROW 80 // 0x00000050
#define ATKMODE_SEC_SINGLE 96 // 0x00000060
#define ATKMODE_SEC_BURST 112 // 0x00000070
#define ATKMODE_SEC_FLAME 128 // 0x00000080
// The attack types returned by get_attack_type or as fifth argument of HOOK_ITEMDAMAGE
#define ATKTYPE_LWEP1 (0)
#define ATKTYPE_LWEP2 (1)
#define ATKTYPE_RWEP1 (2)
#define ATKTYPE_RWEP2 (3)
#define ATKTYPE_PUNCH (4)
#define ATKTYPE_KICK (5)
#define ATKTYPE_LWEP_RELOAD (6)
#define ATKTYPE_RWEP_RELOAD (7)
#define ATKTYPE_STRONGPUNCH (8)
#define ATKTYPE_HAMMERPUNCH (9)
#define ATKTYPE_HAYMAKER (10)
#define ATKTYPE_JAB (11)
#define ATKTYPE_PALMSTRIKE (12)
#define ATKTYPE_PIERCINGSTRIKE (13)
#define ATKTYPE_STRONGKICK (14)
#define ATKTYPE_SNAPKICK (15)
#define ATKTYPE_POWERKICK (16)
#define ATKTYPE_HIPKICK (17)
#define ATKTYPE_HOOKKICK (18)
#define ATKTYPE_PIERCINGKICK (19)
#define ATTACK_MODE_NONE (0)
#define ATTACK_MODE_PUNCH (1)
#define ATTACK_MODE_KICK (2)
#define ATTACK_MODE_SWING (3)
#define ATTACK_MODE_THRUST (4)
#define ATTACK_MODE_THROW (5)
#define ATTACK_MODE_SINGLE (6)
#define ATTACK_MODE_BURST (7)
#define ATTACK_MODE_FLAME (8)
/* Object flags for get/set_flags */
#define FLAG_HIDDEN (0x1)
+7 -23
View File
@@ -104,28 +104,6 @@
#define ENCOUNTER_FLAG_ICON_SP (0x8) // use special encounter icon
#define ENCOUNTER_FLAG_FADEOUT (0x10) // fade out the screen on encounter (Note: you yourself should restore the fade screen when entering the encounter)
// The attack types returned by get_attack_type
#define ATKTYPE_LWEP1 (0)
#define ATKTYPE_LWEP2 (1)
#define ATKTYPE_RWEP1 (2)
#define ATKTYPE_RWEP2 (3)
#define ATKTYPE_PUNCH (4)
#define ATKTYPE_KICK (5)
#define ATKTYPE_LWEP_RELOAD (6)
#define ATKTYPE_RWEP_RELOAD (7)
#define ATKTYPE_STRONGPUNCH (8)
#define ATKTYPE_HAMMERPUNCH (9)
#define ATKTYPE_HAYMAKER (10)
#define ATKTYPE_JAB (11)
#define ATKTYPE_PALMSTRIKE (12)
#define ATKTYPE_PIERCINGSTRIKE (13)
#define ATKTYPE_STRONGKICK (14)
#define ATKTYPE_SNAPKICK (15)
#define ATKTYPE_POWERKICK (16)
#define ATKTYPE_HIPKICK (17)
#define ATKTYPE_HOOKKICK (18)
#define ATKTYPE_PIERCINGKICK (19)
// Return values for "typeof"
#define VALTYPE_NONE (0) // not used yet
#define VALTYPE_INT (1)
@@ -293,6 +271,9 @@
#define set_weapon_usable(item) set_object_data(item, OBJ_DATA_MISC_FLAGS, get_object_data(item, OBJ_DATA_MISC_FLAGS) bwand 0xFFFFFFEF)
#define weapon_is_unusable(item) (get_object_data(item, OBJ_DATA_MISC_FLAGS) bwand 0x00000010)
#define weapon_attack_mode1(pid) (get_proto_data(pid, PROTO_FLAG_EXT) bwand 0x0000000F)
#define weapon_attack_mode2(pid) ((get_proto_data(pid, PROTO_FLAG_EXT) bwand 0x000000F0) / 0x10)
/* SFALL_FUNCX MACROS */
@@ -401,7 +382,10 @@
#define spatial_radius(obj) sfall_func1("spatial_radius", obj)
#define string_compare(str1, str2) sfall_func2("string_compare", str1, str2)
#define string_compare_locale(str1, str2, codePage) sfall_func3("string_compare", str1, str2, codePage)
#define string_format(format, a1, a2) sfall_func3("string_format", format, a1, a2)
#define string_format1(format, a1) sfall_func2("string_format", format, a1)
#define string_format2(format, a1, a2) sfall_func3("string_format", format, a1, a2)
#define string_format3(format, a1, a2, a3) sfall_func4("string_format", format, a1, a2, a3)
#define string_format4(format, a1, a2, a3, a4) sfall_func5("string_format", format, a1, a2, a3, a4)
#define string_tolower(text) sfall_func2("string_to_case", text, 0)
#define string_toupper(text) sfall_func2("string_to_case", text, 1)
#define tile_by_position(x, y) sfall_func2("tile_by_position", x, y)