Decompile weaponHasAmmoFlag and discover AMMOFLAG constants

This commit is contained in:
Ryan Dwyer
2021-09-09 22:51:40 +10:00
parent 02e19b8c8c
commit d6cccc48ae
10 changed files with 101 additions and 107 deletions
+5
View File
@@ -157,6 +157,11 @@
#define AIMCONTROL_HOLD 0
#define AIMCONTROL_TOGGLE 1
#define AMMOFLAG_NORESERVE 1 // Ammo cannot be held outside of weapon (cloak and combat boost)
#define AMMOFLAG_EQUIPPEDISRESERVE 2 // For throwables: equipped ammo and reserve is kind of the same thing
#define AMMOFLAG_INCREMENTALRELOAD 4 // Shotgun and crossbow
#define AMMOFLAG_QTYAFFECTSPARTVIS 8 // Quantity of ammo in the clip affects model part visibility on the weapon (Devastator)
#define AMMOTYPE_PISTOL 0x01
#define AMMOTYPE_SMG 0x02
#define AMMOTYPE_CROSSBOW 0x03
+2 -2
View File
@@ -8,7 +8,7 @@ void bgun0f097ba0(s32 handnum, s32 weaponnum);
s32 bgunGetUnequippedReloadIndex(s32 weaponnum);
void bgunTickUnequippedReload(void);
bool bgun0f097df0(struct inventory_typef *arg0, struct hand *hand);
void bgun0f097e74(s16 partnum, s32 arg1, struct hand *hand, struct modelfiledata *arg3);
void bgunSetPartVisible(s16 partnum, bool visible, struct hand *hand, struct modelfiledata *filedata);
void bgun0f097f28(struct hand *hand, struct modelfiledata *arg1, struct inventory_typef *arg2);
void bgun0f098030(struct hand *hand, struct modelfiledata *arg1);
f32 bgun0f09815c(struct hand *hand);
@@ -153,7 +153,7 @@ void bgun0f0a9494(u32 operation);
void bgun0f0a94d0(u32 operation, struct coord *pos, struct coord *rot);
void bgunSetGunAmmoVisible(u32 reason, bool enable);
void bgunSetAmmoQuantity(s32 ammotype, s32 quantity);
s32 bgunGetAmmoCountWithCheck(s32 type);
s32 bgunGetReservedAmmoCount(s32 type);
s32 bgunGetAmmoCount(s32 ammotype);
s32 bgunGetCapacityByAmmotype(u32 ammotype);
bool bgunAmmotypeAllowsUnlimitedAmmo(u32 ammotype);
+1 -1
View File
@@ -19,7 +19,7 @@ void currentPlayerZoomOut(f32 fovpersec);
void currentPlayerZoomIn(f32 fovpersec);
bool weaponHasFlag(s32 itemid, u32 flag);
bool weaponHasClassFlag(s32 weaponnum, u32 flag);
bool func0f0b184c(s32 weaponnum, s32 funcnum, s32 arg2);
bool weaponHasAmmoFlag(s32 weaponnum, s32 funcnum, u32 flag);
s32 currentPlayerGetDeviceState(s32 weaponnum);
void currentPlayerSetDeviceActive(s32 weaponum, bool active);
u16 weaponGetModelNum(s32 weaponnum);