mirror of
https://github.com/rehlds/reapi.git
synced 2024-12-28 15:45:31 +03:00
Added new members for CBasePlayerItem, CBasePlayerWeapon
This commit is contained in:
parent
559b6b88bd
commit
3101f29ff7
@ -34,7 +34,9 @@ enum members_tables_e
|
||||
mt_movevars,
|
||||
mt_usercmd,
|
||||
mt_pmtrace,
|
||||
mt_csplayer
|
||||
mt_csplayer,
|
||||
mt_baseitem,
|
||||
mt_baseweapon,
|
||||
};
|
||||
|
||||
#define MAX_REGION_RANGE 1024
|
||||
|
@ -3879,3 +3879,291 @@ enum CCSPlayer_Members
|
||||
*/
|
||||
m_bForceShowMenu,
|
||||
};
|
||||
|
||||
// CBasePlayerItem
|
||||
enum CBasePlayerItem_Members
|
||||
{
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: class CBasePlayer *
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_pPlayer = BEGIN_MEMBER_REGION(baseitem),
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: class CBasePlayerItem *
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_pNext,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iId,
|
||||
};
|
||||
|
||||
// CBasePlayerWeapon
|
||||
enum CBasePlayerWeapon_Members
|
||||
{
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iPlayEmptySound = BEGIN_MEMBER_REGION(baseweapon),
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_fFireOnEmpty,
|
||||
|
||||
/*
|
||||
* Description: soonest time ItemPostFrame will call PrimaryAttack
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flNextPrimaryAttack,
|
||||
|
||||
/*
|
||||
* Description: soonest time ItemPostFrame will call SecondaryAttack
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flNextSecondaryAttack,
|
||||
|
||||
/*
|
||||
* Description: "primary" ammo index into players m_rgAmmo[]
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iPrimaryAmmoType,
|
||||
|
||||
/*
|
||||
* Description: "secondary" ammo index into players m_rgAmmo[]
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iSecondaryAmmoType,
|
||||
|
||||
/*
|
||||
* Description: number of shots left in the primary weapon clip, -1 it not used
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iClip,
|
||||
|
||||
/*
|
||||
* Description: the last version of m_iClip sent to hud dll
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iClientClip,
|
||||
|
||||
/*
|
||||
* Description: the last version of the weapon state sent to hud dll (is current weapon, is on target)
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iClientWeaponState,
|
||||
|
||||
/*
|
||||
* Description: Are we in the middle of a reload
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_fInReload,
|
||||
|
||||
/*
|
||||
* Description: Are we in the middle of a reload for the shotguns
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_fInSpecialReload,
|
||||
|
||||
/*
|
||||
* Description: how much ammo you get when you pick up this weapon as placed by a level designer
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iDefaultAmmo,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iShellId,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_fMaxSpeed,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: bool
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_bDelayFire,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iDirection,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: bool
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_bSecondarySilencerOn,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flAccuracy,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flLastFire,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iShotsFired,
|
||||
|
||||
/*
|
||||
* Description: time to shoot the remaining bullets of the glock18 burst fire
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flGlock18Shoot,
|
||||
|
||||
/*
|
||||
* Description: used to keep track of the shots fired during the Glock18 burst fire mode
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iGlock18ShotsFired,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flFamasShoot,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iFamasShotsFired,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_fBurstSpread,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_iWeaponState,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flNextReload,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flDecreaseShotsFired,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_usFireGlock18,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: int
|
||||
* Get params: get_member(index, member);
|
||||
* Set params: set_member(index, member, value);
|
||||
*/
|
||||
m_usFireFamas,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flPrevPrimaryAttack,
|
||||
|
||||
/*
|
||||
* Description: -
|
||||
* Member type: float
|
||||
* Get params: Float:get_member(index, member);
|
||||
* Set params: set_member(index, member, Float:value);
|
||||
*/
|
||||
m_flLastFireTime
|
||||
};
|
||||
|
@ -210,8 +210,8 @@ typedef IVoidHookChain<class CBasePlayer *, int, int, BOOL, char *> IReGameHook_
|
||||
typedef IVoidHookChainRegistry<class CBasePlayer *, int, int, BOOL, char *> IReGameHookRegistry_ShowMenu;
|
||||
|
||||
// ShowVGUIMenu hook
|
||||
typedef IVoidHookChain<class CBasePlayer *, int, int, char *, bool> IReGameHook_ShowVGUIMenu;
|
||||
typedef IVoidHookChainRegistry<class CBasePlayer *, int, int, char *, bool> IReGameHookRegistry_ShowVGUIMenu;
|
||||
typedef IVoidHookChain<class CBasePlayer *, int, int, char *> IReGameHook_ShowVGUIMenu;
|
||||
typedef IVoidHookChainRegistry<class CBasePlayer *, int, int, char *> IReGameHookRegistry_ShowVGUIMenu;
|
||||
|
||||
// CHalfLifeMultiplay::FShouldSwitchWeapon hook
|
||||
typedef IHookChain<BOOL, class CBasePlayer *, class CBasePlayerItem *> IReGameHook_CSGameRules_FShouldSwitchWeapon;
|
||||
|
@ -684,14 +684,14 @@ void ShowMenu(IReGameHook_ShowMenu *chain, CBasePlayer *pPlayer, int bitsValidSl
|
||||
callVoidForward(RG_ShowMenu, original, indexOfEdict(pPlayer->pev), bitsValidSlots, nDisplayTime, fNeedMore, pszText);
|
||||
}
|
||||
|
||||
void ShowVGUIMenu(IReGameHook_ShowVGUIMenu *chain, CBasePlayer *pPlayer, int MenuType, int BitMask, char *szOldMenu, bool bForceOldMenu)
|
||||
void ShowVGUIMenu(IReGameHook_ShowVGUIMenu *chain, CBasePlayer *pPlayer, int MenuType, int BitMask, char *szOldMenu)
|
||||
{
|
||||
auto original = [chain](int _pPlayer, int _MenuType, int _BitMask, char *_szOldMenu, bool _bForceOldMenu)
|
||||
auto original = [chain](int _pPlayer, int _MenuType, int _BitMask, char *_szOldMenu)
|
||||
{
|
||||
chain->callNext(getPrivate<CBasePlayer>(_pPlayer), _MenuType, _BitMask, _szOldMenu, _bForceOldMenu);
|
||||
chain->callNext(getPrivate<CBasePlayer>(_pPlayer), _MenuType, _BitMask, _szOldMenu);
|
||||
};
|
||||
|
||||
callVoidForward(RG_ShowVGUIMenu, original, indexOfEdict(pPlayer->pev), MenuType, BitMask, szOldMenu, bForceOldMenu);
|
||||
callVoidForward(RG_ShowVGUIMenu, original, indexOfEdict(pPlayer->pev), MenuType, BitMask, szOldMenu);
|
||||
}
|
||||
|
||||
int g_iClientStartSpeak, g_iClientStopSpeak;
|
||||
|
@ -306,7 +306,7 @@ void CBasePlayer_SetClientUserInfoName(IReGameHook_CBasePlayer_SetClientUserInfo
|
||||
void HandleMenu_ChooseAppearance(IReGameHook_HandleMenu_ChooseAppearance *chain, CBasePlayer *pPlayer, int slot);
|
||||
BOOL HandleMenu_ChooseTeam(IReGameHook_HandleMenu_ChooseTeam *chain, CBasePlayer *pPlayer, int slot);
|
||||
void ShowMenu(IReGameHook_ShowMenu *chain, CBasePlayer *pPlayer, int bitsValidSlots, int nDisplayTime, BOOL fNeedMore, char *pszText);
|
||||
void ShowVGUIMenu(IReGameHook_ShowVGUIMenu *chain, CBasePlayer *pPlayer, int MenuType, int BitMask, char *szOldMenu, bool bForceOldMenu);
|
||||
void ShowVGUIMenu(IReGameHook_ShowVGUIMenu *chain, CBasePlayer *pPlayer, int MenuType, int BitMask, char *szOldMenu);
|
||||
|
||||
extern int g_iClientStartSpeak;
|
||||
extern int g_iClientStopSpeak;
|
||||
|
@ -14,6 +14,8 @@
|
||||
#define UCMD_MEMBERS(mx) CLASS_MEMBERS(usercmd_s, mx, ucmd_)
|
||||
#define PMTRACE_MEMBERS(mx) CLASS_MEMBERS(pmtrace_s, mx, pmt_)
|
||||
#define CSPL_MEMBERS(mx) CLASS_MEMBERS(CCSPlayer, mx,)
|
||||
#define BASEITEM_MEMBERS(mx) CLASS_MEMBERS(CBasePlayerItem, mx,)
|
||||
#define BASEWPN_MEMBERS(mx) CLASS_MEMBERS(CBasePlayerWeapon, mx,)
|
||||
|
||||
inline MType getMemberType(float*) { return MEMBER_FLOAT; }
|
||||
inline MType getMemberType(float) { return MEMBER_FLOAT; }
|
||||
@ -668,6 +670,50 @@ member_t memberlist_csplayer[] = {
|
||||
CSPL_MEMBERS(m_bForceShowMenu),
|
||||
};
|
||||
|
||||
member_t memberlist_baseitem[] = {
|
||||
BASEITEM_MEMBERS(m_pPlayer),
|
||||
BASEITEM_MEMBERS(m_pNext),
|
||||
BASEITEM_MEMBERS(m_iId),
|
||||
};
|
||||
|
||||
member_t memberlist_baseweapon[] = {
|
||||
BASEWPN_MEMBERS(m_iPlayEmptySound),
|
||||
BASEWPN_MEMBERS(m_fFireOnEmpty),
|
||||
BASEWPN_MEMBERS(m_flNextPrimaryAttack),
|
||||
BASEWPN_MEMBERS(m_flNextSecondaryAttack),
|
||||
//BASEWPN_MEMBERS(m_flTimeWeaponIdle), // FIXME: conflict with CBasePlayer::m_flTimeWeaponIdle
|
||||
BASEWPN_MEMBERS(m_iPrimaryAmmoType),
|
||||
BASEWPN_MEMBERS(m_iSecondaryAmmoType),
|
||||
BASEWPN_MEMBERS(m_iClip),
|
||||
BASEWPN_MEMBERS(m_iClientClip),
|
||||
BASEWPN_MEMBERS(m_iClientWeaponState),
|
||||
BASEWPN_MEMBERS(m_fInReload),
|
||||
BASEWPN_MEMBERS(m_fInSpecialReload),
|
||||
BASEWPN_MEMBERS(m_iDefaultAmmo),
|
||||
BASEWPN_MEMBERS(m_iShellId),
|
||||
BASEWPN_MEMBERS(m_fMaxSpeed),
|
||||
BASEWPN_MEMBERS(m_bDelayFire),
|
||||
BASEWPN_MEMBERS(m_iDirection),
|
||||
BASEWPN_MEMBERS(m_bSecondarySilencerOn),
|
||||
BASEWPN_MEMBERS(m_flAccuracy),
|
||||
BASEWPN_MEMBERS(m_flLastFire),
|
||||
BASEWPN_MEMBERS(m_iShotsFired),
|
||||
//BASEWPN_MEMBERS(m_vVecAiming),
|
||||
//BASEWPN_MEMBERS(model_name),
|
||||
BASEWPN_MEMBERS(m_flGlock18Shoot),
|
||||
BASEWPN_MEMBERS(m_iGlock18ShotsFired),
|
||||
BASEWPN_MEMBERS(m_flFamasShoot),
|
||||
BASEWPN_MEMBERS(m_iFamasShotsFired),
|
||||
BASEWPN_MEMBERS(m_fBurstSpread),
|
||||
BASEWPN_MEMBERS(m_iWeaponState),
|
||||
BASEWPN_MEMBERS(m_flNextReload),
|
||||
BASEWPN_MEMBERS(m_flDecreaseShotsFired),
|
||||
BASEWPN_MEMBERS(m_usFireGlock18),
|
||||
BASEWPN_MEMBERS(m_usFireFamas),
|
||||
BASEWPN_MEMBERS(m_flPrevPrimaryAttack),
|
||||
BASEWPN_MEMBERS(m_flLastFireTime),
|
||||
};
|
||||
|
||||
memberlist_t memberlist;
|
||||
|
||||
member_t *memberlist_t::operator[](size_t members) const
|
||||
@ -689,6 +735,8 @@ member_t *memberlist_t::operator[](size_t members) const
|
||||
CASE(usercmd)
|
||||
CASE(pmtrace)
|
||||
CASE(csplayer)
|
||||
CASE(baseitem)
|
||||
CASE(baseweapon)
|
||||
}
|
||||
|
||||
return nullptr;
|
||||
|
@ -50,7 +50,9 @@ struct memberlist_t
|
||||
mt_movevars,
|
||||
mt_usercmd,
|
||||
mt_pmtrace,
|
||||
mt_csplayer
|
||||
mt_csplayer,
|
||||
mt_baseitem,
|
||||
mt_baseweapon
|
||||
};
|
||||
};
|
||||
|
||||
@ -669,3 +671,49 @@ enum CSPlayer_Members
|
||||
m_szModel = BEGIN_MEMBER_REGION(csplayer),
|
||||
m_bForceShowMenu,
|
||||
};
|
||||
|
||||
enum CBasePlayerItem_Members
|
||||
{
|
||||
m_pPlayer = BEGIN_MEMBER_REGION(baseitem),
|
||||
m_pNext,
|
||||
m_iId,
|
||||
};
|
||||
|
||||
enum CBasePlayerWeapon_Members
|
||||
{
|
||||
m_iPlayEmptySound = BEGIN_MEMBER_REGION(baseweapon),
|
||||
m_fFireOnEmpty,
|
||||
m_flNextPrimaryAttack,
|
||||
m_flNextSecondaryAttack,
|
||||
//m_flTimeWeaponIdle,
|
||||
m_iPrimaryAmmoType,
|
||||
m_iSecondaryAmmoType,
|
||||
m_iClip,
|
||||
m_iClientClip,
|
||||
m_iClientWeaponState,
|
||||
m_fInReload,
|
||||
m_fInSpecialReload,
|
||||
m_iDefaultAmmo,
|
||||
m_iShellId,
|
||||
m_fMaxSpeed,
|
||||
m_bDelayFire,
|
||||
m_iDirection,
|
||||
m_bSecondarySilencerOn,
|
||||
m_flAccuracy,
|
||||
m_flLastFire,
|
||||
m_iShotsFired,
|
||||
//m_vVecAiming,
|
||||
//model_name,
|
||||
m_flGlock18Shoot,
|
||||
m_iGlock18ShotsFired,
|
||||
m_flFamasShoot,
|
||||
m_iFamasShotsFired,
|
||||
m_fBurstSpread,
|
||||
m_iWeaponState,
|
||||
m_flNextReload,
|
||||
m_flDecreaseShotsFired,
|
||||
m_usFireGlock18,
|
||||
m_usFireFamas,
|
||||
m_flPrevPrimaryAttack,
|
||||
m_flLastFireTime
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user