diff --git a/reapi/include/cssdk/dlls/API/CSEntity.h b/reapi/include/cssdk/dlls/API/CSEntity.h index a179efa..a8e5456 100644 --- a/reapi/include/cssdk/dlls/API/CSEntity.h +++ b/reapi/include/cssdk/dlls/API/CSEntity.h @@ -31,6 +31,7 @@ class CBaseEntity; class CCSEntity { + DECLARE_CLASS_TYPES(CCSEntity, CCSEntity); public: CCSEntity() : m_pContainingEntity(nullptr) @@ -47,24 +48,28 @@ public: class CCSDelay: public CCSEntity { + DECLARE_CLASS_TYPES(CCSDelay, CCSEntity); public: }; class CCSAnimating: public CCSDelay { + DECLARE_CLASS_TYPES(CCSAnimating, CCSDelay); public: }; class CCSToggle: public CCSAnimating { + DECLARE_CLASS_TYPES(CCSToggle, CCSAnimating); public: }; class CCSMonster: public CCSToggle { + DECLARE_CLASS_TYPES(CCSMonster, CCSToggle); public: }; diff --git a/reapi/include/cssdk/dlls/API/CSPlayer.h b/reapi/include/cssdk/dlls/API/CSPlayer.h index 1494509..bb5120a 100644 --- a/reapi/include/cssdk/dlls/API/CSPlayer.h +++ b/reapi/include/cssdk/dlls/API/CSPlayer.h @@ -37,7 +37,9 @@ enum WeaponInfiniteAmmoMode WPNMODE_INFINITE_BPAMMO }; -class CCSPlayer: public CCSMonster { +class CCSPlayer: public CCSMonster +{ + DECLARE_CLASS_TYPES(CCSPlayer, CCSMonster); public: CCSPlayer() : m_bForceShowMenu(false), diff --git a/reapi/include/cssdk/dlls/API/CSPlayerItem.h b/reapi/include/cssdk/dlls/API/CSPlayerItem.h index cd67ea2..74abc0b 100644 --- a/reapi/include/cssdk/dlls/API/CSPlayerItem.h +++ b/reapi/include/cssdk/dlls/API/CSPlayerItem.h @@ -31,6 +31,7 @@ class CBasePlayerItem; class CCSPlayerItem: public CCSAnimating { + DECLARE_CLASS_TYPES(CCSPlayerItem, CCSAnimating); public: CCSPlayerItem() { diff --git a/reapi/include/cssdk/dlls/airtank.h b/reapi/include/cssdk/dlls/airtank.h index 3f435a8..717dbf8 100644 --- a/reapi/include/cssdk/dlls/airtank.h +++ b/reapi/include/cssdk/dlls/airtank.h @@ -27,7 +27,9 @@ */ #pragma once -class CAirtank: public CGrenade { +class CAirtank: public CGrenade +{ + DECLARE_CLASS_TYPES(CAirtank, CGrenade); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/ammo.h b/reapi/include/cssdk/dlls/ammo.h index 4b22b9e..de116b0 100644 --- a/reapi/include/cssdk/dlls/ammo.h +++ b/reapi/include/cssdk/dlls/ammo.h @@ -27,70 +27,90 @@ */ #pragma once -class C9MMAmmo: public CBasePlayerAmmo { +class C9MMAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C9MMAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class CBuckShotAmmo: public CBasePlayerAmmo { +class CBuckShotAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(CBuckShotAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C556NatoAmmo: public CBasePlayerAmmo { +class C556NatoAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C556NatoAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C556NatoBoxAmmo: public CBasePlayerAmmo { +class C556NatoBoxAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C556NatoBoxAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C762NatoAmmo: public CBasePlayerAmmo { +class C762NatoAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C762NatoAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C45ACPAmmo: public CBasePlayerAmmo { +class C45ACPAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C45ACPAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C50AEAmmo: public CBasePlayerAmmo { +class C50AEAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C50AEAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C338MagnumAmmo: public CBasePlayerAmmo { +class C338MagnumAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C338MagnumAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C57MMAmmo: public CBasePlayerAmmo { +class C57MMAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C57MMAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; }; -class C357SIGAmmo: public CBasePlayerAmmo { +class C357SIGAmmo: public CBasePlayerAmmo +{ + DECLARE_CLASS_TYPES(C357SIGAmmo, CBasePlayerAmmo); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/basemonster.h b/reapi/include/cssdk/dlls/basemonster.h index 05cb5e3..d40008e 100644 --- a/reapi/include/cssdk/dlls/basemonster.h +++ b/reapi/include/cssdk/dlls/basemonster.h @@ -45,7 +45,9 @@ enum MONSTERSTATE }; class CBaseToggle; -class CBaseMonster: public CBaseToggle { +class CBaseMonster: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CBaseMonster, CBaseToggle); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual void TraceAttack(entvars_t *pevAttacker, float flDamage, Vector vecDir, TraceResult *ptr, int bitsDamageType) = 0; diff --git a/reapi/include/cssdk/dlls/bmodels.h b/reapi/include/cssdk/dlls/bmodels.h index d6e948b..6e9b565 100644 --- a/reapi/include/cssdk/dlls/bmodels.h +++ b/reapi/include/cssdk/dlls/bmodels.h @@ -59,7 +59,9 @@ #define SF_CONVEYOR_NOTSOLID 0x0002 // This is just a solid wall if not inhibited -class CFuncWall: public CBaseEntity { +class CFuncWall: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncWall, CBaseEntity); public: virtual void Spawn() = 0; @@ -68,20 +70,26 @@ public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CFuncWallToggle: public CFuncWall { +class CFuncWallToggle: public CFuncWall +{ + DECLARE_CLASS_TYPES(CFuncWallToggle, CFuncWall); public: virtual void Spawn() = 0; virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CFuncConveyor: public CFuncWall { +class CFuncConveyor: public CFuncWall +{ + DECLARE_CLASS_TYPES(CFuncConveyor, CFuncWall); public: virtual void Spawn() = 0; virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; // A simple entity that looks solid but lets you walk through it. -class CFuncIllusionary: public CBaseToggle { +class CFuncIllusionary: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CFuncIllusionary, CBaseToggle); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -95,7 +103,9 @@ public: // // otherwise it will be invisible and not solid. This can be used to keep // specific monsters out of certain areas -class CFuncMonsterClip: public CFuncWall { +class CFuncMonsterClip: public CFuncWall +{ + DECLARE_CLASS_TYPES(CFuncMonsterClip, CFuncWall); public: virtual void Spawn() = 0; @@ -103,7 +113,9 @@ public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CFuncRotating: public CBaseEntity { +class CFuncRotating: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncRotating, CBaseEntity); public: // basic functions virtual void Spawn() = 0; @@ -125,7 +137,9 @@ public: Vector m_angles; }; -class CPendulum: public CBaseEntity { +class CPendulum: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CPendulum, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/buttons.h b/reapi/include/cssdk/dlls/buttons.h index 087417a..9c525d3 100644 --- a/reapi/include/cssdk/dlls/buttons.h +++ b/reapi/include/cssdk/dlls/buttons.h @@ -49,7 +49,9 @@ #define SF_BTARGET_USE 0x0001 #define SF_BTARGET_ON 0x0002 -class CEnvGlobal: public CPointEntity { +class CEnvGlobal: public CPointEntity +{ + DECLARE_CLASS_TYPES(CEnvGlobal, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -62,12 +64,16 @@ public: int m_initialstate; }; -class CRotButton: public CBaseButton { +class CRotButton: public CBaseButton +{ + DECLARE_CLASS_TYPES(CRotButton, CBaseButton); public: virtual void Spawn() = 0; }; -class CMomentaryRotButton: public CBaseToggle { +class CMomentaryRotButton: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CMomentaryRotButton, CBaseToggle); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -84,7 +90,9 @@ public: int m_sounds; }; -class CEnvSpark: public CBaseEntity { +class CEnvSpark: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CEnvSpark, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -95,7 +103,9 @@ public: float m_flDelay; }; -class CButtonTarget: public CBaseEntity { +class CButtonTarget: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CButtonTarget, CBaseEntity); public: virtual void Spawn() = 0; virtual int ObjectCaps() = 0; diff --git a/reapi/include/cssdk/dlls/cbase.h b/reapi/include/cssdk/dlls/cbase.h index c72b919..53d4a03 100644 --- a/reapi/include/cssdk/dlls/cbase.h +++ b/reapi/include/cssdk/dlls/cbase.h @@ -41,7 +41,14 @@ class CBasePlayerItem; class CSquadMonster; class CCSEntity; -class CBaseEntity { +#define DECLARE_CLASS_TYPES(className, baseClassName)\ +public: \ + using BaseClass = baseClassName; \ + using ThisClass = className; \ + +class CBaseEntity +{ + DECLARE_CLASS_TYPES(CBaseEntity, CBaseEntity); public: // Constructor. Set engine to use C/C++ callback functions // pointers to engine data @@ -246,15 +253,18 @@ inline void CBaseEntity::SetBlocked(std::nullptr_t) m_pfnBlocked = nullptr; } -class CPointEntity: public CBaseEntity { +class CPointEntity: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CPointEntity, CBaseEntity); public: virtual void Spawn() = 0; virtual int ObjectCaps() = 0; }; - // generic Delay entity -class CBaseDelay: public CBaseEntity { +class CBaseDelay: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBaseDelay, CBaseEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int Save(CSave &save) = 0; @@ -264,7 +274,9 @@ public: int m_iszKillTarget; }; -class CBaseAnimating: public CBaseDelay { +class CBaseAnimating: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CBaseAnimating, CBaseDelay); public: virtual int Save(CSave &save) = 0; virtual int Restore(CRestore &restore) = 0; @@ -297,7 +309,9 @@ private: }; // generic Toggle entity. -class CBaseToggle: public CBaseAnimating { +class CBaseToggle: public CBaseAnimating +{ + DECLARE_CLASS_TYPES(CBaseToggle, CBaseAnimating); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int Save(CSave &save) = 0; @@ -357,7 +371,9 @@ inline void CBaseToggle::SetMoveDone(std::nullptr_t) #include "player.h" // Generic Button -class CBaseButton: public CBaseToggle { +class CBaseButton: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CBaseButton, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -389,7 +405,9 @@ public: #define MAX_MULTI_TARGETS 16 // maximum number of targets a single multi_manager entity may be assigned. #define MS_MAX_TARGETS 32 -class CMultiSource: public CPointEntity { +class CMultiSource: public CPointEntity +{ + DECLARE_CLASS_TYPES(CMultiSource, CPointEntity); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -412,7 +430,9 @@ public: #define SF_WORLD_FORCETEAM 0x0004 // Force teams // This spawns first when each level begins. -class CWorld: public CBaseEntity { +class CWorld: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CWorld, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/doors.h b/reapi/include/cssdk/dlls/doors.h index 43ef05d..a5e985c 100644 --- a/reapi/include/cssdk/dlls/doors.h +++ b/reapi/include/cssdk/dlls/doors.h @@ -44,7 +44,9 @@ #define SF_DOOR_TOUCH_ONLY_CLIENTS 1024 // Only clients can touch #define SF_DOOR_SILENT 0x80000000 -class CBaseDoor: public CBaseToggle { +class CBaseDoor: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CBaseDoor, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -72,14 +74,18 @@ public: float m_lastBlockedTimestamp; }; -class CRotDoor: public CBaseDoor { +class CRotDoor: public CBaseDoor +{ + DECLARE_CLASS_TYPES(CRotDoor, CBaseDoor); public: virtual void Spawn() = 0; virtual void Restart() = 0; virtual void SetToggleState(int state) = 0; }; -class CMomentaryDoor: public CBaseToggle { +class CMomentaryDoor: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CMomentaryDoor, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/effects.h b/reapi/include/cssdk/dlls/effects.h index 5df1335..f7abc18 100644 --- a/reapi/include/cssdk/dlls/effects.h +++ b/reapi/include/cssdk/dlls/effects.h @@ -63,7 +63,9 @@ #define SF_MESSAGE_ONCE 0x0001 // Fade in, not out #define SF_MESSAGE_ALL 0x0002 // Send to all clients -class CSprite: public CPointEntity { +class CSprite: public CPointEntity +{ + DECLARE_CLASS_TYPES(CSprite, CPointEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -112,7 +114,9 @@ private: float m_maxFrame; }; -class CBeam: public CBaseEntity { +class CBeam: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBeam, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -164,7 +168,9 @@ public: } }; -class CLaser: public CBeam { +class CLaser: public CBeam +{ + DECLARE_CLASS_TYPES(CLaser, CBeam); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -178,7 +184,9 @@ public: Vector m_firePosition; }; -class CBubbling: public CBaseEntity { +class CBubbling: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBubbling, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -194,7 +202,9 @@ public: int m_state; }; -class CLightning: public CBeam { +class CLightning: public CBeam +{ + DECLARE_CLASS_TYPES(CLightning, CBeam); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -226,7 +236,9 @@ public: float m_radius; }; -class CGlow: public CPointEntity { +class CGlow: public CPointEntity +{ + DECLARE_CLASS_TYPES(CGlow, CPointEntity); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; @@ -237,7 +249,9 @@ public: float m_maxFrame; }; -class CBombGlow: public CSprite { +class CBombGlow: public CSprite +{ + DECLARE_CLASS_TYPES(CBombGlow, CSprite); public: virtual void Spawn() = 0; virtual void Think() = 0; @@ -247,7 +261,9 @@ public: bool m_bSetModel; }; -class CGibShooter: public CBaseDelay { +class CGibShooter: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CGibShooter, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -267,7 +283,9 @@ public: float m_flGibLife; }; -class CEnvShooter: public CGibShooter { +class CEnvShooter: public CGibShooter +{ + DECLARE_CLASS_TYPES(CEnvShooter, CGibShooter); public: virtual void Precache() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -276,7 +294,9 @@ public: #define MAX_BEAM 24 -class CTestEffect: public CBaseDelay { +class CTestEffect: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CTestEffect, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -291,7 +311,9 @@ public: float m_flStartTime; }; -class CBlood: public CPointEntity { +class CBlood: public CPointEntity +{ + DECLARE_CLASS_TYPES(CBlood, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -305,7 +327,9 @@ public: void SetBloodAmount(float amount) { pev->dmg = amount; } }; -class CShake: public CPointEntity { +class CShake: public CPointEntity +{ + DECLARE_CLASS_TYPES(CShake, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -322,7 +346,9 @@ public: void SetRadius(float radius) { pev->dmg = radius; } }; -class CFade: public CPointEntity { +class CFade: public CPointEntity +{ + DECLARE_CLASS_TYPES(CFade, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -335,7 +361,9 @@ public: void SetHoldTime(float hold) { pev->dmg_save = hold; } }; -class CMessage: public CPointEntity { +class CMessage: public CPointEntity +{ + DECLARE_CLASS_TYPES(CMessage, CPointEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -343,7 +371,9 @@ public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CEnvFunnel: public CBaseDelay { +class CEnvFunnel: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CEnvFunnel, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -352,14 +382,18 @@ public: int m_iSprite; }; -class CEnvBeverage: public CBaseDelay { +class CEnvBeverage: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CEnvBeverage, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CItemSoda: public CBaseEntity { +class CItemSoda: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CItemSoda, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/explode.h b/reapi/include/cssdk/dlls/explode.h index 1a2f7a0..4906ace 100644 --- a/reapi/include/cssdk/dlls/explode.h +++ b/reapi/include/cssdk/dlls/explode.h @@ -34,7 +34,9 @@ #define SF_ENVEXPLOSION_NODECAL (1<<4) // don't make a scorch mark #define SF_ENVEXPLOSION_NOSPARKS (1<<5) // don't make a scorch mark -class CShower: public CBaseEntity { +class CShower: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CShower, CBaseEntity); public: virtual void Spawn() = 0; virtual int ObjectCaps() = 0; @@ -42,7 +44,9 @@ public: virtual void Touch(CBaseEntity *pOther) = 0; }; -class CEnvExplosion: public CBaseMonster { +class CEnvExplosion: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CEnvExplosion, CBaseMonster); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/func_break.h b/reapi/include/cssdk/dlls/func_break.h index 51099d5..aeb22ac 100644 --- a/reapi/include/cssdk/dlls/func_break.h +++ b/reapi/include/cssdk/dlls/func_break.h @@ -62,7 +62,9 @@ typedef enum } Materials; -class CBreakable: public CBaseDelay { +class CBreakable: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CBreakable, CBaseDelay); public: // basic functions virtual void Spawn() = 0; @@ -97,7 +99,9 @@ public: float m_flHealth; }; -class CPushable: public CBreakable { +class CPushable: public CBreakable +{ + DECLARE_CLASS_TYPES(CPushable, CBreakable); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/func_tank.h b/reapi/include/cssdk/dlls/func_tank.h index 6ae26fa..47893c5 100644 --- a/reapi/include/cssdk/dlls/func_tank.h +++ b/reapi/include/cssdk/dlls/func_tank.h @@ -43,7 +43,9 @@ enum TANKBULLET TANK_BULLET_12MM, // explosion? }; -class CFuncTank: public CBaseEntity { +class CFuncTank: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncTank, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -116,12 +118,16 @@ protected: int m_iszMaster; // Master entity (game_team_master or multisource) }; -class CFuncTankGun: public CFuncTank { +class CFuncTankGun: public CFuncTank +{ + DECLARE_CLASS_TYPES(CFuncTankGun, CFuncTank); public: virtual void Fire(const Vector &barrelEnd, const Vector &forward, entvars_t *pevAttacker) = 0; }; -class CFuncTankLaser: public CFuncTank { +class CFuncTankLaser: public CFuncTank +{ + DECLARE_CLASS_TYPES(CFuncTankLaser, CFuncTank); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int Save(CSave &save) = 0; @@ -134,19 +140,25 @@ private: float m_laserTime; }; -class CFuncTankRocket: public CFuncTank { +class CFuncTankRocket: public CFuncTank +{ + DECLARE_CLASS_TYPES(CFuncTankRocket, CFuncTank); public: virtual void Precache() = 0; virtual void Fire(const Vector &barrelEnd, const Vector &forward, entvars_t *pevAttacker) = 0; }; -class CFuncTankMortar: public CFuncTank { +class CFuncTankMortar: public CFuncTank +{ + DECLARE_CLASS_TYPES(CFuncTankMortar, CFuncTank); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual void Fire(const Vector &barrelEnd, const Vector &forward, entvars_t *pevAttacker) = 0; }; -class CFuncTankControls: public CBaseEntity { +class CFuncTankControls: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncTankControls, CBaseEntity); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; diff --git a/reapi/include/cssdk/dlls/gamerules.h b/reapi/include/cssdk/dlls/gamerules.h index 1e17e58..5755581 100644 --- a/reapi/include/cssdk/dlls/gamerules.h +++ b/reapi/include/cssdk/dlls/gamerules.h @@ -211,7 +211,9 @@ enum class CItem; -class CGameRules { +class CGameRules +{ + DECLARE_CLASS_TYPES(CGameRules, CGameRules); protected: virtual ~CGameRules() {}; public: @@ -335,7 +337,9 @@ public: #define GAMERULES_API_INTERFACE_VERSION "GAMERULES_API_INTERFACE_VERSION001" // CHalfLifeRules - rules for the single player Half-Life game. -class CHalfLifeRules: public CGameRules { +class CHalfLifeRules: public CGameRules +{ + DECLARE_CLASS_TYPES(CHalfLifeRules, CGameRules); protected: virtual ~CHalfLifeRules() {}; public: @@ -417,7 +421,9 @@ public: }; // CHalfLifeMultiplay - rules for the basic half life multiplayer competition -class CHalfLifeMultiplay: public CGameRules { +class CHalfLifeMultiplay: public CGameRules +{ + DECLARE_CLASS_TYPES(CHalfLifeMultiplay, CGameRules); protected: virtual ~CHalfLifeMultiplay() {}; public: @@ -670,7 +676,9 @@ typedef struct mapcycle_s } mapcycle_t; -class CCStrikeGameMgrHelper: public IVoiceGameMgrHelper { +class CCStrikeGameMgrHelper: public IVoiceGameMgrHelper +{ + DECLARE_CLASS_TYPES(CCStrikeGameMgrHelper, IVoiceGameMgrHelper); public: virtual bool CanPlayerHearPlayer(CBasePlayer *pListener, CBasePlayer *pSender) = 0; virtual void ResetCanHearPlayer(edict_t* pEdict) = 0; diff --git a/reapi/include/cssdk/dlls/gib.h b/reapi/include/cssdk/dlls/gib.h index 3455703..d76aa58 100644 --- a/reapi/include/cssdk/dlls/gib.h +++ b/reapi/include/cssdk/dlls/gib.h @@ -28,8 +28,9 @@ #pragma once -class CGib : public CBaseEntity +class CGib: public CBaseEntity { + DECLARE_CLASS_TYPES(CGib, CBaseEntity); public: virtual int ObjectCaps() = 0; diff --git a/reapi/include/cssdk/dlls/h_battery.h b/reapi/include/cssdk/dlls/h_battery.h index e523dd6..22bf81e 100644 --- a/reapi/include/cssdk/dlls/h_battery.h +++ b/reapi/include/cssdk/dlls/h_battery.h @@ -27,7 +27,9 @@ */ #pragma once -class CRecharge: public CBaseToggle { +class CRecharge: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CRecharge, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/h_cycler.h b/reapi/include/cssdk/dlls/h_cycler.h index 5f9ab00..ad737d2 100644 --- a/reapi/include/cssdk/dlls/h_cycler.h +++ b/reapi/include/cssdk/dlls/h_cycler.h @@ -27,7 +27,9 @@ */ #pragma once -class CCycler: public CBaseMonster { +class CCycler: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CCycler, CBaseMonster); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; @@ -44,18 +46,24 @@ public: }; // we should get rid of all the other cyclers and replace them with this. -class CGenericCycler: public CCycler { +class CGenericCycler: public CCycler +{ + DECLARE_CLASS_TYPES(CGenericCycler, CCycler); public: virtual void Spawn() = 0; }; // Probe droid imported for tech demo compatibility -class CCyclerProbe: public CCycler { +class CCyclerProbe: public CCycler +{ + DECLARE_CLASS_TYPES(CCyclerProbe, CCycler); public: virtual void Spawn() = 0; }; -class CCyclerSprite: public CBaseEntity { +class CCyclerSprite: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CCyclerSprite, CBaseEntity); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -77,7 +85,9 @@ public: vec3_t m_rendercolor; }; -class CWeaponCycler: public CBasePlayerWeapon { +class CWeaponCycler: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CWeaponCycler, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual int GetItemInfo(ItemInfo *p) = 0; @@ -92,7 +102,9 @@ public: }; // Flaming Wreakage -class CWreckage: public CBaseMonster { +class CWreckage: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CWreckage, CBaseMonster); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/healthkit.h b/reapi/include/cssdk/dlls/healthkit.h index eb4e63d..7fa8165 100644 --- a/reapi/include/cssdk/dlls/healthkit.h +++ b/reapi/include/cssdk/dlls/healthkit.h @@ -27,14 +27,18 @@ */ #pragma once -class CHealthKit: public CItem { +class CHealthKit: public CItem +{ + DECLARE_CLASS_TYPES(CHealthKit, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CWallHealth: public CBaseToggle { +class CWallHealth: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CWallHealth, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/hostage/hostage.h b/reapi/include/cssdk/dlls/hostage/hostage.h index a0be24c..427b253 100644 --- a/reapi/include/cssdk/dlls/hostage/hostage.h +++ b/reapi/include/cssdk/dlls/hostage/hostage.h @@ -79,7 +79,9 @@ extern CHostageManager *g_pHostages; extern int g_iHostageNumber; // A Counter-Strike Hostage Simple -class CHostage: public CBaseMonster { +class CHostage: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CHostage, CBaseMonster); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/items.h b/reapi/include/cssdk/dlls/items.h index 07a524e..898d19f 100644 --- a/reapi/include/cssdk/dlls/items.h +++ b/reapi/include/cssdk/dlls/items.h @@ -83,14 +83,18 @@ enum ItemID ITEM_BATTERY }; -class CItem: public CBaseEntity { +class CItem: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CItem, CBaseEntity); public: virtual void Spawn() = 0; virtual CBaseEntity *Respawn() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CWorldItem: public CBaseEntity { +class CWorldItem: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CWorldItem, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -98,56 +102,72 @@ public: int m_iType; }; -class CItemSuit: public CItem { +class CItemSuit: public CItem +{ + DECLARE_CLASS_TYPES(CItemSuit, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemBattery: public CItem { +class CItemBattery: public CItem +{ + DECLARE_CLASS_TYPES(CItemBattery, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemAntidote: public CItem { +class CItemAntidote: public CItem +{ + DECLARE_CLASS_TYPES(CItemAntidote, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemSecurity: public CItem { +class CItemSecurity: public CItem +{ + DECLARE_CLASS_TYPES(CItemSecurity, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemLongJump: public CItem { +class CItemLongJump: public CItem +{ + DECLARE_CLASS_TYPES(CItemLongJump, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemKevlar: public CItem { +class CItemKevlar: public CItem +{ + DECLARE_CLASS_TYPES(CItemKevlar, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemAssaultSuit: public CItem { +class CItemAssaultSuit: public CItem +{ + DECLARE_CLASS_TYPES(CItemAssaultSuit, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual BOOL MyTouch(CBasePlayer *pPlayer) = 0; }; -class CItemThighPack: public CItem { +class CItemThighPack: public CItem +{ + DECLARE_CLASS_TYPES(CItemThighPack, CItem); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/lights.h b/reapi/include/cssdk/dlls/lights.h index df0fb68..f58c048 100644 --- a/reapi/include/cssdk/dlls/lights.h +++ b/reapi/include/cssdk/dlls/lights.h @@ -29,7 +29,9 @@ #define SF_LIGHT_START_OFF 1 -class CLight: public CPointEntity { +class CLight: public CPointEntity +{ + DECLARE_CLASS_TYPES(CLight, CPointEntity); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -43,7 +45,9 @@ private: BOOL m_iStartedOff; }; -class CEnvLight: public CLight { +class CEnvLight: public CLight +{ + DECLARE_CLASS_TYPES(CEnvLight, CLight); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/mapinfo.h b/reapi/include/cssdk/dlls/mapinfo.h index f6805fe..35184b2 100644 --- a/reapi/include/cssdk/dlls/mapinfo.h +++ b/reapi/include/cssdk/dlls/mapinfo.h @@ -30,6 +30,7 @@ class CMapInfo: public CPointEntity { + DECLARE_CLASS_TYPES(CMapInfo, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/maprules.h b/reapi/include/cssdk/dlls/maprules.h index dde173e..9a21f6b 100644 --- a/reapi/include/cssdk/dlls/maprules.h +++ b/reapi/include/cssdk/dlls/maprules.h @@ -52,7 +52,9 @@ #define SF_PTEAM_KILL 0x0002 #define SF_PTEAM_GIB 0x0004 -class CRuleEntity: public CBaseEntity { +class CRuleEntity: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CRuleEntity, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -66,14 +68,18 @@ private: }; // CRulePointEntity -- base class for all rule "point" entities (not brushes) -class CRulePointEntity: public CRuleEntity { +class CRulePointEntity: public CRuleEntity +{ + DECLARE_CLASS_TYPES(CRulePointEntity, CRuleEntity); public: virtual void Spawn() = 0; }; // CRuleBrushEntity -- base class for all rule "brush" entities (not brushes) // Default behavior is to set up like a trigger, invisible, but keep the model for volume testing -class CRuleBrushEntity: public CRuleEntity { +class CRuleBrushEntity: public CRuleEntity +{ + DECLARE_CLASS_TYPES(CRuleBrushEntity, CRuleEntity); public: virtual void Spawn() = 0; }; @@ -82,7 +88,9 @@ public: // Points +/- total // Flag: Allow negative scores SF_SCORE_NEGATIVE // Flag: Award points to team in teamplay SF_SCORE_TEAM -class CGameScore: public CRulePointEntity { +class CGameScore: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameScore, CRulePointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -95,14 +103,18 @@ public: }; // CGameEnd / game_end -- Ends the game in MP -class CGameEnd: public CRulePointEntity { +class CGameEnd: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameEnd, CRulePointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; // CGameText / game_text -- NON-Localized HUD Message (use env_message to display a titles.txt message) // Flag: All players SF_ENVTEXT_ALLPLAYERS -class CGameText: public CRulePointEntity { +class CGameText: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameText, CRulePointEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int Save(CSave &save) = 0; @@ -124,7 +136,9 @@ private: // team index (pulled from server team list "mp_teamlist" // Flag: Remove on Fire // Flag: Any team until set? -- Any team can use this until the team is set (otherwise no teams can use it) -class CGameTeamMaster: public CRulePointEntity { +class CGameTeamMaster: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameTeamMaster, CRulePointEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int ObjectCaps() = 0; @@ -143,7 +157,9 @@ public: // CGameTeamSet / game_team_set -- Changes the team of the entity it targets to the activator's team // Flag: Fire once // Flag: Clear team -- Sets the team to "NONE" instead of activator -class CGameTeamSet: public CRulePointEntity { +class CGameTeamSet: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameTeamSet, CRulePointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; public: @@ -153,7 +169,9 @@ public: // CGamePlayerZone / game_player_zone -- players in the zone fire my target when I'm fired // Needs master? -class CGamePlayerZone: public CRuleBrushEntity { +class CGamePlayerZone: public CRuleBrushEntity +{ + DECLARE_CLASS_TYPES(CGamePlayerZone, CRulePointEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int Save(CSave &save) = 0; @@ -168,7 +186,9 @@ private: // CGamePlayerHurt / game_player_hurt -- Damages the player who fires it // Flag: Fire once -class CGamePlayerHurt: public CRulePointEntity { +class CGamePlayerHurt: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGamePlayerHurt, CRulePointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; public: @@ -178,7 +198,9 @@ public: // CGameCounter / game_counter -- Counts events and fires target // Flag: Fire once // Flag: Reset on Fire -class CGameCounter: public CRulePointEntity { +class CGameCounter: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameCounter, CRulePointEntity); public: virtual void Spawn() = 0; virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; @@ -201,7 +223,9 @@ private: // CGameCounterSet / game_counter_set -- Sets the counter's value // Flag: Fire once -class CGameCounterSet: public CRulePointEntity { +class CGameCounterSet: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGameCounterSet, CRulePointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; public: @@ -210,7 +234,9 @@ public: // CGamePlayerEquip / game_playerequip -- Sets the default player equipment // Flag: USE Only -class CGamePlayerEquip: public CRulePointEntity { +class CGamePlayerEquip: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGamePlayerEquip, CRulePointEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual void Touch(CBaseEntity *pOther) = 0; @@ -226,7 +252,9 @@ public: // Flag: Fire once // Flag: Kill Player // Flag: Gib Player -class CGamePlayerTeam: public CRulePointEntity { +class CGamePlayerTeam: public CRulePointEntity +{ + DECLARE_CLASS_TYPES(CGamePlayerTeam, CRulePointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; private: diff --git a/reapi/include/cssdk/dlls/monsters.h b/reapi/include/cssdk/dlls/monsters.h index 842e058..f959c1f 100644 --- a/reapi/include/cssdk/dlls/monsters.h +++ b/reapi/include/cssdk/dlls/monsters.h @@ -102,7 +102,9 @@ enum HitBoxGroup NUM_HITGROUPS, }; -class CGib: public CBaseEntity { +class CGib: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CGib, CBaseEntity); public: virtual int ObjectCaps() = 0; public: diff --git a/reapi/include/cssdk/dlls/mortar.h b/reapi/include/cssdk/dlls/mortar.h index e74636c..6b44466 100644 --- a/reapi/include/cssdk/dlls/mortar.h +++ b/reapi/include/cssdk/dlls/mortar.h @@ -27,7 +27,9 @@ */ #pragma once -class CFuncMortarField: public CBaseToggle { +class CFuncMortarField: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CFuncMortarField, CBaseToggle); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -46,7 +48,9 @@ public: int m_fControl; }; -class CMortar: public CGrenade { +class CMortar: public CGrenade +{ + DECLARE_CLASS_TYPES(CMortar, CGrenade); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/pathcorner.h b/reapi/include/cssdk/dlls/pathcorner.h index 5be28a3..be787be 100644 --- a/reapi/include/cssdk/dlls/pathcorner.h +++ b/reapi/include/cssdk/dlls/pathcorner.h @@ -27,7 +27,9 @@ */ #pragma once -class CPathCorner: public CPointEntity { +class CPathCorner: public CPointEntity +{ + DECLARE_CLASS_TYPES(CPathCorner, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/plats.h b/reapi/include/cssdk/dlls/plats.h index ec67be3..714d1f5 100644 --- a/reapi/include/cssdk/dlls/plats.h +++ b/reapi/include/cssdk/dlls/plats.h @@ -41,7 +41,9 @@ #define FGUNTARGET_START_ON 0x0001 -class CBasePlatTrain: public CBaseToggle { +class CBasePlatTrain: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CBasePlatTrain, CBaseToggle); public: virtual void Precache() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -57,7 +59,9 @@ public: float m_volume; }; -class CFuncPlat: public CBasePlatTrain { +class CFuncPlat: public CBasePlatTrain +{ + DECLARE_CLASS_TYPES(CFuncPlat, CBasePlatTrain); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -68,7 +72,9 @@ public: virtual void HitBottom() = 0; }; -class CPlatTrigger: public CBaseEntity { +class CPlatTrigger: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CPlatTrigger, CBaseEntity); public: virtual int ObjectCaps() = 0; virtual void Touch(CBaseEntity *pOther) = 0; @@ -76,7 +82,9 @@ public: CFuncPlat *m_pPlatform; }; -class CFuncPlatRot: public CFuncPlat { +class CFuncPlatRot: public CFuncPlat +{ + DECLARE_CLASS_TYPES(CFuncPlatRot, CFuncPlat); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; @@ -90,7 +98,9 @@ public: Vector m_start; }; -class CFuncTrain: public CBasePlatTrain { +class CFuncTrain: public CBasePlatTrain +{ + DECLARE_CLASS_TYPES(CFuncTrain, CBasePlatTrain); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -110,13 +120,17 @@ public: BOOL m_activated; }; -class CFuncTrainControls: public CBaseEntity { +class CFuncTrainControls: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncTrainControls, CBaseEntity); public: virtual void Spawn() = 0; virtual int ObjectCaps() = 0; }; -class CFuncTrackChange: public CFuncPlatRot { +class CFuncTrackChange: public CFuncPlatRot +{ + DECLARE_CLASS_TYPES(CFuncTrackChange, CFuncPlatRot); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -155,13 +169,17 @@ public: int m_use; }; -class CFuncTrackAuto: public CFuncTrackChange { +class CFuncTrackAuto: public CFuncTrackChange +{ + DECLARE_CLASS_TYPES(CFuncTrackAuto, CFuncTrackChange); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; virtual void UpdateAutoTargets(int toggleState) = 0; }; -class CGunTarget: public CBaseMonster { +class CGunTarget: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CGunTarget, CBaseMonster); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; diff --git a/reapi/include/cssdk/dlls/player.h b/reapi/include/cssdk/dlls/player.h index 113bf06..4f396b7 100644 --- a/reapi/include/cssdk/dlls/player.h +++ b/reapi/include/cssdk/dlls/player.h @@ -273,20 +273,26 @@ enum MusicState { SILENT, CALM, INTENSE }; class CCSPlayer; -class CStripWeapons: public CPointEntity { +class CStripWeapons: public CPointEntity +{ + DECLARE_CLASS_TYPES(CStripWeapons, CPointEntity); public: virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; // Multiplayer intermission spots. -class CInfoIntermission: public CPointEntity { +class CInfoIntermission: public CPointEntity +{ + DECLARE_CLASS_TYPES(CInfoIntermission, CPointEntity); public: virtual void Spawn() = 0; virtual void Think() = 0; }; // Dead HEV suit prop -class CDeadHEV: public CBaseMonster { +class CDeadHEV: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CDeadHEV, CBaseMonster); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -296,17 +302,23 @@ public: static char *m_szPoses[4]; }; -class CSprayCan: public CBaseEntity { +class CSprayCan: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CSprayCan, CBaseEntity); public: virtual void Think() = 0; virtual int ObjectCaps() = 0; }; -class CBloodSplat: public CBaseEntity { +class CBloodSplat: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBloodSplat, CBaseEntity); public: }; -class CBasePlayer: public CBaseMonster { +class CBasePlayer: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CBasePlayer, CBaseMonster); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -589,7 +601,9 @@ public: float m_tmNextAccountHealthUpdate; }; -class CWShield: public CBaseEntity { +class CWShield: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CWShield, CBaseEntity); public: virtual void Spawn() = 0; virtual void Touch(CBaseEntity *pOther) = 0; diff --git a/reapi/include/cssdk/dlls/sound.h b/reapi/include/cssdk/dlls/sound.h index c4e636c..36c16f1 100644 --- a/reapi/include/cssdk/dlls/sound.h +++ b/reapi/include/cssdk/dlls/sound.h @@ -100,7 +100,9 @@ typedef struct dynpitchvol } dynpitchvol_t; -class CAmbientGeneric: public CBaseEntity { +class CAmbientGeneric: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CAmbientGeneric, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -116,7 +118,9 @@ public: BOOL m_fLooping; // TRUE when the sound played will loop }; -class CEnvSound: public CPointEntity { +class CEnvSound: public CPointEntity +{ + DECLARE_CLASS_TYPES(CEnvSound, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -128,7 +132,9 @@ public: float m_flRoomtype; }; -class CSpeaker: public CBaseEntity { +class CSpeaker: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CSpeaker, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/subs.h b/reapi/include/cssdk/dlls/subs.h index 8cae347..29eb669 100644 --- a/reapi/include/cssdk/dlls/subs.h +++ b/reapi/include/cssdk/dlls/subs.h @@ -28,12 +28,16 @@ #pragma once -class CNullEntity: public CBaseEntity { +class CNullEntity: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CNullEntity, CBaseEntity); public: virtual void Spawn() = 0; }; -class CBaseDMStart: public CPointEntity { +class CBaseDMStart: public CPointEntity +{ + DECLARE_CLASS_TYPES(CBaseDMStart, CPointEntity); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual BOOL IsTriggered(CBaseEntity *pEntity) = 0; diff --git a/reapi/include/cssdk/dlls/training_gamerules.h b/reapi/include/cssdk/dlls/training_gamerules.h index 079e2be..d6863c9 100644 --- a/reapi/include/cssdk/dlls/training_gamerules.h +++ b/reapi/include/cssdk/dlls/training_gamerules.h @@ -27,7 +27,9 @@ */ #pragma once -class CHalfLifeTraining: public CHalfLifeMultiplay { +class CHalfLifeTraining: public CHalfLifeMultiplay +{ + DECLARE_CLASS_TYPES(CHalfLifeTraining, CHalfLifeMultiplay); protected: virtual ~CHalfLifeTraining() {}; public: @@ -50,7 +52,9 @@ public: bool fVGUIMenus; }; -class CBaseGrenCatch: public CBaseEntity { +class CBaseGrenCatch: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBaseGrenCatch, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -67,7 +71,9 @@ public: bool m_fFlashTouched; }; -class CFuncWeaponCheck: public CBaseEntity { +class CFuncWeaponCheck: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncWeaponCheck, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/trains.h b/reapi/include/cssdk/dlls/trains.h index 10927b6..4c98a3a 100644 --- a/reapi/include/cssdk/dlls/trains.h +++ b/reapi/include/cssdk/dlls/trains.h @@ -45,7 +45,9 @@ #define SF_CORNER_TELEPORT 0x002 #define SF_CORNER_FIREONCE 0x004 -class CPathTrack: public CPointEntity { +class CPathTrack: public CPointEntity +{ + DECLARE_CLASS_TYPES(CPathTrack, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData* pkvd) = 0; @@ -61,7 +63,9 @@ public: CPathTrack *m_paltpath; }; -class CFuncTrackTrain: public CBaseEntity { +class CFuncTrackTrain: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncTrackTrain, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -96,7 +100,9 @@ private: unsigned short m_usAdjustPitch; }; -class CFuncVehicle: public CBaseEntity { +class CFuncVehicle: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncVehicle, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; diff --git a/reapi/include/cssdk/dlls/triggers.h b/reapi/include/cssdk/dlls/triggers.h index 576b4c3..e41f757 100644 --- a/reapi/include/cssdk/dlls/triggers.h +++ b/reapi/include/cssdk/dlls/triggers.h @@ -72,7 +72,9 @@ #define SF_RENDER_MASKMODE (1 << 2) #define SF_RENDER_MASKCOLOR (1 << 3) -class CFrictionModifier: public CBaseEntity { +class CFrictionModifier: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFrictionModifier, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -85,7 +87,9 @@ public: // This trigger will fire when the level spawns (or respawns if not fire once) // It will check a global state before firing. It supports delay and killtargets -class CAutoTrigger: public CBaseDelay { +class CAutoTrigger: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CAutoTrigger, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -100,7 +104,9 @@ public: USE_TYPE triggerType; }; -class CTriggerRelay: public CBaseDelay { +class CTriggerRelay: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CTriggerRelay, CBaseDelay); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -116,7 +122,9 @@ public: // at specified times. // FLAG: THREAD (create clones when triggered) // FLAG: CLONE (this is a clone for a threaded execution) -class CMultiManager: public CBaseToggle { +class CMultiManager: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CMultiManager, CBaseToggle); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -137,13 +145,17 @@ public: // // This entity will copy its render parameters (renderfx, rendermode, rendercolor, renderamt) // to its targets when triggered. -class CRenderFxManager: public CBaseEntity { +class CRenderFxManager: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CRenderFxManager, CBaseEntity); public: virtual void Spawn() = 0; virtual void Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value) = 0; }; -class CBaseTrigger: public CBaseToggle { +class CBaseTrigger: public CBaseToggle +{ + DECLARE_CLASS_TYPES(CBaseTrigger, CBaseToggle); public: virtual void KeyValue(KeyValueData *pkvd) = 0; virtual int ObjectCaps() = 0; @@ -151,14 +163,18 @@ public: // trigger_hurt - hurts anything that touches it. if the trigger has a targetname, firing it will toggle state // int gfToggleState = 0; // used to determine when all radiation trigger hurts have called 'RadiationThink' -class CTriggerHurt: public CBaseTrigger { +class CTriggerHurt: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerHurt, CBaseTrigger); public: virtual void Spawn() = 0; virtual void Restart() = 0; virtual int ObjectCaps() = 0; }; -class CTriggerMonsterJump: public CBaseTrigger { +class CTriggerMonsterJump: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerMonsterJump, CBaseTrigger); public: virtual void Spawn() = 0; virtual void Think() = 0; @@ -166,7 +182,9 @@ public: }; // trigger_cdaudio - starts/stops cd audio tracks -class CTriggerCDAudio: public CBaseTrigger { +class CTriggerCDAudio: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerCDAudio, CBaseTrigger); public: virtual void Spawn() = 0; virtual void Touch(CBaseEntity *pOther) = 0; @@ -174,7 +192,9 @@ public: }; // This plays a CD track when fired or when the player enters it's radius -class CTargetCDAudio: public CPointEntity { +class CTargetCDAudio: public CPointEntity +{ + DECLARE_CLASS_TYPES(CTargetCDAudio, CPointEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -196,7 +216,9 @@ public: // 4) // NEW // if a trigger has a NETNAME, that NETNAME will become the TARGET of the triggered object. -class CTriggerMultiple: public CBaseTrigger { +class CTriggerMultiple: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerMultiple, CBaseTrigger); public: virtual void Spawn() = 0; }; @@ -212,7 +234,9 @@ public: // 2) beep beep // 3) large switch // 4) -class CTriggerOnce: public CTriggerMultiple { +class CTriggerOnce: public CTriggerMultiple +{ + DECLARE_CLASS_TYPES(CTriggerOnce, CTriggerMultiple); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -223,19 +247,25 @@ public: // If nomessage is not set, it will print "1 more.. " etc when triggered and // "sequence complete" when finished. After the counter has been triggered "cTriggersLeft" // times (default 2), it will fire all of it's targets and remove itself. -class CTriggerCounter: public CBaseTrigger { +class CTriggerCounter: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerCounter, CBaseTrigger); public: virtual void Spawn() = 0; }; // Derive from point entity so this doesn't move across levels -class CTriggerVolume: public CPointEntity { +class CTriggerVolume: public CPointEntity +{ + DECLARE_CLASS_TYPES(CTriggerVolume, CPointEntity); public: virtual void Spawn() = 0; }; // Fires a target after level transition and then dies -class CFireAndDie: public CBaseDelay { +class CFireAndDie: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CFireAndDie, CBaseDelay); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -245,7 +275,9 @@ public: // QUAKED trigger_changelevel (0.5 0.5 0.5) ? NO_INTERMISSION // When the player touches this, he gets sent to the map listed in the "map" variable. Unless the NO_INTERMISSION flag is set, the view will go to the info_intermission spot and display stats. -class CChangeLevel: public CBaseTrigger { +class CChangeLevel: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CChangeLevel, CBaseTrigger); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -258,14 +290,18 @@ public: float m_changeTargetDelay; }; -class CLadder: public CBaseTrigger { +class CLadder: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CLadder, CBaseTrigger); public: virtual void Spawn() = 0; virtual void Precache() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; }; -class CTriggerPush: public CBaseTrigger { +class CTriggerPush: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerPush, CBaseTrigger); public: virtual void Spawn() = 0; virtual void Restart() = 0; @@ -274,54 +310,74 @@ public: virtual void Touch(CBaseEntity *pOther) = 0; }; -class CTriggerTeleport: public CBaseTrigger { +class CTriggerTeleport: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerTeleport, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CBuyZone: public CBaseTrigger { +class CBuyZone: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CBuyZone, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CBombTarget: public CBaseTrigger { +class CBombTarget: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CBombTarget, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CHostageRescue: public CBaseTrigger { +class CHostageRescue: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CHostageRescue, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CEscapeZone: public CBaseTrigger { +class CEscapeZone: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CEscapeZone, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CVIP_SafetyZone: public CBaseTrigger { +class CVIP_SafetyZone: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CVIP_SafetyZone, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CTriggerSave: public CBaseTrigger { +class CTriggerSave: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerSave, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CTriggerEndSection: public CBaseTrigger { +class CTriggerEndSection: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerEndSection, CBaseTrigger); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; }; -class CTriggerGravity: public CBaseTrigger { +class CTriggerGravity: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CTriggerGravity, CBaseTrigger); public: virtual void Spawn() = 0; }; // this is a really bad idea. -class CTriggerChangeTarget: public CBaseDelay { +class CTriggerChangeTarget: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CTriggerChangeTarget, CBaseDelay); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -333,7 +389,9 @@ private: int m_iszNewTarget; }; -class CTriggerCamera: public CBaseDelay { +class CTriggerCamera: public CBaseDelay +{ + DECLARE_CLASS_TYPES(CTriggerCamera, CBaseDelay); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; @@ -357,12 +415,16 @@ public: int m_state; }; -class CWeather: public CBaseTrigger { +class CWeather: public CBaseTrigger +{ + DECLARE_CLASS_TYPES(CWeather, CBaseTrigger); public: virtual void Spawn() = 0; }; -class CClientFog: public CBaseEntity { +class CClientFog: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CClientFog, CBaseEntity); public: virtual void Spawn() = 0; virtual void KeyValue(KeyValueData *pkvd) = 0; diff --git a/reapi/include/cssdk/dlls/vehicle.h b/reapi/include/cssdk/dlls/vehicle.h index 8b7a0d0..14a0018 100644 --- a/reapi/include/cssdk/dlls/vehicle.h +++ b/reapi/include/cssdk/dlls/vehicle.h @@ -46,7 +46,9 @@ #define VEHICLE_MAXPITCH 200 #define VEHICLE_MAXSPEED 1500 -class CFuncVehicleControls: public CBaseEntity { +class CFuncVehicleControls: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CFuncVehicleControls, CBaseEntity); public: virtual void Spawn() = 0; virtual int ObjectCaps() = 0; diff --git a/reapi/include/cssdk/dlls/weapons.h b/reapi/include/cssdk/dlls/weapons.h index d4d9064..609ea91 100644 --- a/reapi/include/cssdk/dlls/weapons.h +++ b/reapi/include/cssdk/dlls/weapons.h @@ -135,7 +135,9 @@ struct MULTIDAMAGE #include "weapontype.h" #include "items.h" -class CArmoury: public CBaseEntity { +class CArmoury: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CArmoury, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -149,7 +151,9 @@ public: }; // Smoke Grenade / HE grenade / Flashbang grenade / C4 -class CGrenade: public CBaseMonster { +class CGrenade: public CBaseMonster +{ + DECLARE_CLASS_TYPES(CGrenade, CBaseMonster); public: virtual void Spawn() = 0; virtual int Save(CSave &save) = 0; @@ -188,7 +192,9 @@ public: // Items that the player has in their inventory that they can use class CCSPlayerItem; -class CBasePlayerItem: public CBaseAnimating { +class CBasePlayerItem: public CBaseAnimating +{ + DECLARE_CLASS_TYPES(CBasePlayerItem, CBaseAnimating); public: virtual int Save(CSave &save) = 0; virtual int Restore(CRestore &restore) = 0; @@ -229,7 +235,9 @@ public: // inventory items that class CCSPlayerWeapon; -class CBasePlayerWeapon: public CBasePlayerItem { +class CBasePlayerWeapon: public CBasePlayerItem +{ + DECLARE_CLASS_TYPES(CBasePlayerWeapon, CBasePlayerItem); public: virtual int Save(CSave &save) = 0; virtual int Restore(CRestore &restore) = 0; @@ -308,14 +316,18 @@ public: float m_flLastFireTime; }; -class CBasePlayerAmmo: public CBaseEntity { +class CBasePlayerAmmo: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CBasePlayerAmmo, CBaseEntity); public: virtual void Spawn() = 0; virtual BOOL AddAmmo(CBaseEntity *pOther) = 0; virtual CBaseEntity *Respawn() = 0; }; -class CWeaponBox: public CBaseEntity { +class CWeaponBox: public CBaseEntity +{ + DECLARE_CLASS_TYPES(CWeaponBox, CBaseEntity); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -332,7 +344,9 @@ public: bool m_bIsBomb; }; -class CUSP: public CBasePlayerWeapon { +class CUSP: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CUSP, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -352,7 +366,9 @@ public: float m_flBaseDamageSil; }; -class CMP5N: public CBasePlayerWeapon { +class CMP5N: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CMP5N, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -370,7 +386,9 @@ public: unsigned short m_usFire; }; -class CSG552: public CBasePlayerWeapon { +class CSG552: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CSG552, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -389,7 +407,9 @@ public: unsigned short m_usFire; }; -class CAK47: public CBasePlayerWeapon { +class CAK47: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CAK47, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -408,7 +428,9 @@ public: unsigned short m_usFire; }; -class CAUG: public CBasePlayerWeapon { +class CAUG: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CAUG, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -427,7 +449,9 @@ public: unsigned short m_usFire; }; -class CAWP: public CBasePlayerWeapon { +class CAWP: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CAWP, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -449,7 +473,9 @@ public: #define BOMB_FLAG_DROPPED 0 // if the bomb was dropped due to voluntary dropping or death/disconnect #define BOMB_FLAG_PLANTED 1 // if the bomb has been planted will also trigger the round timer to hide will also show where the dropped bomb on the Terrorist team's radar. -class CC4: public CBasePlayerWeapon { +class CC4: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CC4, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -470,7 +496,9 @@ public: bool m_bHasShield; }; -class CDEAGLE: public CBasePlayerWeapon { +class CDEAGLE: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CDEAGLE, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -489,7 +517,9 @@ public: unsigned short m_usFire; }; -class CFlashbang: public CBasePlayerWeapon { +class CFlashbang: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CFlashbang, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -507,7 +537,9 @@ public: virtual BOOL IsPistol() = 0; }; -class CG3SG1: public CBasePlayerWeapon { +class CG3SG1: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CG3SG1, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -525,7 +557,9 @@ public: unsigned short m_usFire; }; -class CGLOCK18: public CBasePlayerWeapon { +class CGLOCK18: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CGLOCK18, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -544,7 +578,9 @@ public: bool m_bBurstFire; }; -class CHEGrenade: public CBasePlayerWeapon { +class CHEGrenade: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CHEGrenade, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -563,7 +599,9 @@ public: unsigned short m_usCreate; }; -class CKnife: public CBasePlayerWeapon { +class CKnife: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CKnife, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -587,7 +625,9 @@ public: float m_flSwingDistance; }; -class CM249: public CBasePlayerWeapon { +class CM249: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CM249, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -605,7 +645,9 @@ public: unsigned short m_usFire; }; -class CM3: public CBasePlayerWeapon { +class CM3: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CM3, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -623,7 +665,9 @@ public: unsigned short m_usFire; }; -class CM4A1: public CBasePlayerWeapon { +class CM4A1: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CM4A1, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -643,7 +687,9 @@ public: float m_flBaseDamageSil; }; -class CMAC10: public CBasePlayerWeapon { +class CMAC10: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CMAC10, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -661,7 +707,9 @@ public: unsigned short m_usFire; }; -class CP228: public CBasePlayerWeapon { +class CP228: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CP228, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -680,7 +728,9 @@ public: unsigned short m_usFire; }; -class CP90: public CBasePlayerWeapon { +class CP90: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CP90, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -698,7 +748,9 @@ public: unsigned short m_usFire; }; -class CSCOUT: public CBasePlayerWeapon { +class CSCOUT: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CSCOUT, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -716,7 +768,9 @@ public: unsigned short m_usFire; }; -class CSmokeGrenade: public CBasePlayerWeapon { +class CSmokeGrenade: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CSmokeGrenade, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -735,7 +789,9 @@ public: unsigned short m_usCreate; }; -class CTMP: public CBasePlayerWeapon { +class CTMP: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CTMP, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -753,7 +809,9 @@ public: unsigned short m_usFire; }; -class CXM1014: public CBasePlayerWeapon { +class CXM1014: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CXM1014, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -771,7 +829,9 @@ public: unsigned short m_usFire; }; -class CELITE: public CBasePlayerWeapon { +class CELITE: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CELITE, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -790,7 +850,9 @@ public: unsigned short m_usFire_RIGHT; }; -class CFiveSeven: public CBasePlayerWeapon { +class CFiveSeven: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CFiveSeven, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -809,7 +871,9 @@ public: unsigned short m_usFire; }; -class CUMP45: public CBasePlayerWeapon { +class CUMP45: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CUMP45, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -827,7 +891,9 @@ public: unsigned short m_usFire; }; -class CSG550: public CBasePlayerWeapon { +class CSG550: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CSG550, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -845,7 +911,9 @@ public: unsigned short m_usFire; }; -class CGalil: public CBasePlayerWeapon { +class CGalil: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CGalil, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0; @@ -864,7 +932,9 @@ public: unsigned short m_usFire; }; -class CFamas: public CBasePlayerWeapon { +class CFamas: public CBasePlayerWeapon +{ + DECLARE_CLASS_TYPES(CFamas, CBasePlayerWeapon); public: virtual void Spawn() = 0; virtual void Precache() = 0;