From 7cfff963f792d37692c7c5355bffbe776dcd3639 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?eray=20or=C3=A7unus?= Date: Thu, 20 Jun 2019 14:22:44 +0300 Subject: Big CPed update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: eray orçunus --- src/weapons/Weapon.h | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'src/weapons/Weapon.h') diff --git a/src/weapons/Weapon.h b/src/weapons/Weapon.h index 0fab027b..87134929 100644 --- a/src/weapons/Weapon.h +++ b/src/weapons/Weapon.h @@ -1,4 +1,5 @@ #pragma once +#include "Entity.h" enum eWeaponType { @@ -18,14 +19,35 @@ enum eWeaponType WEAPONTYPE_HELICANNON }; +enum eWeaponFire { + WEAPON_FIRE_MELEE, + WEAPON_FIRE_INSTANT_HIT, + WEAPON_FIRE_PROJECTILE, + WEAPON_FIRE_AREA_EFFECT, + WEAPON_FIRE_USE +}; + +// Taken from MTA SA, seems it's unchanged +enum eWeaponState +{ + WEAPONSTATE_READY, + WEAPONSTATE_FIRING, + WEAPONSTATE_RELOADING, + WEAPONSTATE_OUT_OF_AMMO, + WEAPONSTATE_MELEE_MADECONTACT +}; + class CWeapon { public: eWeaponType m_eWeaponType; - int32 m_eWeaponState; + eWeaponState m_eWeaponState; int32 m_nAmmoInClip; int32 m_nAmmoTotal; int32 m_nTimer; bool m_bAddRotOffset; + + bool Fire(CEntity*, CVector*); + static void AddGunshell(CEntity*, CVector const&, CVector2D const&, float); }; static_assert(sizeof(CWeapon) == 0x18, "CWeapon: error"); -- cgit v1.2.3