diff options
author | Fire_Head <Fire-Head@users.noreply.github.com> | 2019-07-24 20:00:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-24 20:00:08 +0200 |
commit | 81ee1c509a8d05189901dd59c268bf47a6188eb8 (patch) | |
tree | d836f70678f2ce7b5d86a6745f34b45232ff71d0 /src/weapons | |
parent | update (diff) | |
parent | Merge branch 'master' into master (diff) | |
download | re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar.gz re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar.bz2 re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar.lz re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar.xz re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.tar.zst re3-81ee1c509a8d05189901dd59c268bf47a6188eb8.zip |
Diffstat (limited to '')
-rw-r--r-- | src/weapons/Weapon.cpp | 8 | ||||
-rw-r--r-- | src/weapons/Weapon.h | 7 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/weapons/Weapon.cpp b/src/weapons/Weapon.cpp index 90a6408b..0fc89637 100644 --- a/src/weapons/Weapon.cpp +++ b/src/weapons/Weapon.cpp @@ -5,7 +5,9 @@ #include "WeaponInfo.h" WRAPPER bool CWeapon::Fire(CEntity*, CVector*) { EAXJMP(0x55C380); } +WRAPPER void CWeapon::FireFromCar(CAutomobile *car, bool left) { EAXJMP(0x55C940); } WRAPPER void CWeapon::AddGunshell(CEntity*, CVector const&, CVector2D const&, float) { EAXJMP(0x55F770); } +WRAPPER void CWeapon::Update(int32 audioEntity) { EAXJMP(0x563A10); } void CWeapon::Initialise(eWeaponType type, int ammo) @@ -36,6 +38,12 @@ CWeapon::Reload(void) } bool +CWeapon::IsType2Handed(void) +{ + return m_eWeaponType >= WEAPONTYPE_SHOTGUN && m_eWeaponType <= WEAPONTYPE_FLAMETHROWER && m_eWeaponType != WEAPONTYPE_ROCKETLAUNCHER; +} + +bool CWeapon::IsTypeMelee(void) { return m_eWeaponType == WEAPONTYPE_UNARMED || m_eWeaponType == WEAPONTYPE_BASEBALLBAT; diff --git a/src/weapons/Weapon.h b/src/weapons/Weapon.h index 81516c4e..71fe1f45 100644 --- a/src/weapons/Weapon.h +++ b/src/weapons/Weapon.h @@ -1,5 +1,4 @@ #pragma once -#include "Entity.h" enum eWeaponType { @@ -46,6 +45,9 @@ enum eWeaponState WEAPONSTATE_MELEE_MADECONTACT }; +class CEntity; +class CAutomobile; + class CWeapon { public: @@ -61,9 +63,12 @@ public: } void Initialise(eWeaponType type, int ammo); + void Update(int32 audioEntity); void Reload(void); bool Fire(CEntity*, CVector*); + void FireFromCar(CAutomobile *car, bool left); void AddGunshell(CEntity*, CVector const&, CVector2D const&, float); bool IsTypeMelee(void); + bool IsType2Handed(void); }; static_assert(sizeof(CWeapon) == 0x18, "CWeapon: error"); |