diff options
| author | boris <wzn@moneybot.cc> | 2018-11-28 16:00:02 +1300 |
|---|---|---|
| committer | boris <wzn@moneybot.cc> | 2018-11-28 16:00:02 +1300 |
| commit | 3d412a4b30a9f7c7f51ea6562e694315948bd3da (patch) | |
| tree | 26d67dfd1f3e5fd12903ad13e85d0cb8bcf8f21c /cheat/tf2/CBaseWeapon.h | |
| parent | e4729e4393d90271a3814c7a79950a660c48325a (diff) | |
cleaned up
in short, the cheat and loader are now separate solutions. unused stuff was moved into the legacy solution in case anyone wants to compile it or whatever.
i can change this back if you want to. also, i configured the loader to compile in x64, and have separate build types for linux and win64
Diffstat (limited to 'cheat/tf2/CBaseWeapon.h')
| -rw-r--r-- | cheat/tf2/CBaseWeapon.h | 1389 |
1 files changed, 1389 insertions, 0 deletions
diff --git a/cheat/tf2/CBaseWeapon.h b/cheat/tf2/CBaseWeapon.h new file mode 100644 index 0000000..213a576 --- /dev/null +++ b/cheat/tf2/CBaseWeapon.h @@ -0,0 +1,1389 @@ +#pragma once +#include "IClientEntity.h" +#include "CAttribute.h" +#include "netvars.h" +enum class weapon_attributes { + weapon_allow_inspect = 731, +}; + +enum scoutweapons +{ + //Primary + WPN_Scattergun = 13, + WPN_NewScattergun = 200, + WPN_FAN = 45, + WPN_Shortstop = 220, + WPN_SodaPopper = 448, + WPN_BabyFaceBlaster = 772, + WPN_BotScattergunS = 799, + WPN_BotScattergunG = 808, + WPN_BotScattergunR = 888, + WPN_BotScattergunB = 897, + WPN_BotScattergunC = 906, + WPN_BotScattergunD = 915, + WPN_BotScattergunES = 964, + WPN_BotScattergunEG = 973, + WPN_FestiveFaN = 1078, + WPN_BackScatter = 1103, + //Secondary + WPN_ScoutPistol = 23, + WPN_NewPistol = 209, + WPN_Bonk = 46, + WPN_CritCola = 163, + WPN_Lugermorph = 160, + WPN_Milk = 222, + WPN_Lugermorph2 = 294, + WPN_Winger = 449, + WPN_PocketPistol = 773, + WPN_MutatedMilk = 1121, + WPN_CAPPER = 30666, + //Melee + WPN_Bat = 0, + WPN_NewBat = 190, + WPN_Sandman = 44, + WPN_Fish = 221, + WPN_Cane = 317, + WPN_BostonBasher = 325, + WPN_SunStick = 349, + WPN_FanOWar = 355, + WPN_RuneBlade = 452, + WPN_Saxxy = 423, + WPN_Atomizer = 450, + WPN_ConscientiousObjector = 474, + WPN_UnarmedCombat = 572, + WPN_WrapAssassin = 648, + WPN_FestiveBat = 660, + WPN_FestiveScattergun = 669, + WPN_FlyingGuillotine1 = 812, + WPN_FlyingGuillotine2 = 833, + WPN_FreedomStaff = 880, + WPN_BatOuttaHell = 939, + WPN_MemoryMaker = 954, + WPN_FestiveFish = 999, + WPN_TheHamShank = 1013, + WPN_CrossingGuard = 1127, + WPN_NecroSmasher = 1123, + WPN_Batsaber = 30667, +}; +enum soldierweapons +{ + //Primary + WPN_RocketLauncher = 18, + WPN_NewRocketLauncher = 205, + WPN_DirectHit = 127, + WPN_BlackBox = 228, + WPN_RocketJumper = 237, + WPN_LibertyLauncher = 414, + WPN_CowMangler = 441, + WPN_Original = 513, + WPN_FestiveRocketLauncher = 658, + WPN_BeggersBazooka = 730, + WPN_BotRocketlauncherS = 800, + WPN_BotRocketlauncherG = 809, + WPN_BotRocketlauncherR = 889, + WPN_BotRocketlauncherB = 898, + WPN_BotRocketlauncherC = 907, + WPN_BotRocketlauncherD = 916, + WPN_BotRocketlauncherES = 965, + WPN_BotRocketlauncherEG = 974, + WPN_FestiveBlackbox = 1085, + WPN_Airstrike = 1104, + //Secondary + WPN_SoldierShotgun = 10, + WPN_NewShotgun = 199, + WPN_BuffBanner = 129, + WPN_BattalionBackup = 226, + WPN_Concheror = 354, + WPN_ReserveShooter = 415, + WPN_RighteousBison = 442, + WPN_FestiveBuffBanner = 1001, + WPN_PanicAttack = 1153, + WPN_ManTreads = 444, + WPN_GunBoats = 133, + WPN_BASEJumper = 1101, + //Melee + WPN_Shovel = 6, + WPN_NewShovel = 196, + WPN_Equalizer = 128, + WPN_PainTrain = 154, + WPN_Katana = 357, + WPN_MarketGardener = 416, + WPN_DisciplinaryAction = 447, + WPN_EscapePlan = 775, +}; +enum pyroweapons +{ + //Primary + WPN_Flamethrower = 21, + WPN_NewFlamethrower = 208, + WPN_Backburner = 40, + WPN_Degreaser = 215, + WPN_FestiveFlamethrower = 659, + WPN_Phlogistinator = 594, + WPN_Rainblower = 741, + WPN_BotFlamethrowerS = 798, + WPN_BotFlamethrowerG = 807, + WPN_BotFlamethrowerR = 887, + WPN_BotFlamethrowerB = 896, + WPN_BotFlamethrowerC = 905, + WPN_BotFlamethrowerD = 914, + WPN_BotFlamethrowerES = 963, + WPN_BotFlamethrowerEG = 972, + WPN_FestiveBackburner = 1146, + //Secondary + WPN_PyroShotgun = 12, + WPN_Flaregun = 39, + WPN_Detonator = 351, + WPN_ManMelter = 595, + WPN_ScorchShot = 740, + WPN_FestiveFlaregun = 1081, + WPN_ThermalThruster = 1179, + WPN_GasPasser = 1180, + //Melee + WPN_Fireaxe = 2, + WPN_NewAxe = 192, + WPN_Axtingusher = 38, + WPN_HomeWrecker = 153, + WPN_PowerJack = 214, + WPN_Backscratcher = 326, + WPN_VolcanoFragment = 348, + WPN_Maul = 466, + WPN_Mailbox = 457, + WPN_ThirdDegree = 593, + WPN_Lollychop = 739, + WPN_NeonAnnihilator1 = 813, + WPN_NeonAnnihilator2 = 834, + WPN_FestiveAxtingisher = 1000, +}; +enum demomanweapons +{ + //Primary + WPN_GrenadeLauncher = 19, + WPN_NewGrenadeLauncher = 206, + WPN_LochNLoad = 308, + WPN_LoooseCannon = 996, + WPN_FestiveGrenadeLauncher = 1007, + WPN_IronBomber = 1151, + //Secondary + WPN_StickyLauncher = 20, + WPN_NewStickyLauncher = 207, + WPN_ScottishResistance = 130, + WPN_StickyJumper = 265, + WPN_FestiveStickyLauncher = 661, + WPN_BotStickyS = 797, + WPN_BotStickyG = 806, + WPN_BotStickyR = 886, + WPN_BotStickyB = 895, + WPN_BotStickyC = 904, + WPN_BotStickyD = 913, + WPN_BotStickyES = 962, + WPN_BotStickyEG = 971, + WPN_QuickieBombLauncher = 1150, + WPN_SplendidScreen = 406, + WPN_CharginTarge = 131, + WPN_FestiveCharginTarge = 1144, + WPN_TideTurner = 1099, + //Melee + WPN_Bottle = 1, + WPN_NewBottle = 191, + WPN_Sword = 132, + WPN_ScottsSkullctter = 172, + WPN_Fryingpan = 264, + WPN_Headless = 266, + WPN_Ullapool = 307, + WPN_Claidheamhmor = 327, + WPN_PersainPersuader = 404, + WPN_Golfclub = 482, + WPN_ScottishHandshake = 609, + WPN_GoldenFryingPan = 1071, + WPN_FestiveEyelander = 1082, +}; +enum heavyweapons +{ + //Primary + WPN_Minigun = 15, + WPN_NewMinigun = 202, + WPN_Natascha = 41, + WPN_IronCurtain = 298, + WPN_BrassBeast = 312, + WPN_Tomislav = 424, + WPN_FestiveMinigun = 654, + WPN_HuoLongHeatmaker1 = 811, + WPN_HuoLongHeatmaker2 = 832, + WPN_BotMinigunS = 793, + WPN_BotMinigunG = 802, + WPN_BotMinigunR = 882, + WPN_BotMinigunB = 891, + WPN_BotMinigunC = 900, + WPN_BotMinigunD = 909, + WPN_Deflector = 850, + WPN_BotMinigunES = 958, + WPN_BotMinigunEG = 967, + //Secondary + WPN_HeavyShotgun = 11, + WPN_Sandvich = 42, + WPN_CandyBar = 159, + WPN_Steak = 311, + WPN_Fishcake = 433, + WPN_FamilyBuisness = 425, + WPN_RobotSandvich = 863, + WPN_FestiveSandvich = 1002, + //Melee + WPN_Fists = 5, + WPN_NewFists = 195, + WPN_KGB = 43, + WPN_GRU = 239, + WPN_WarriorSpirit = 310, + WPN_FistsOfSteel = 331, + WPN_EvictionNotice = 426, + WPN_ApocoFists = 587, + WPN_HolidayPunch = 656, + WPN_FestiveGRU = 1084, + WPN_BreadBite = 1100, +}; +enum engineerweapons +{ + //Primary + WPN_EngineerShotgun = 9, + WPN_FrontierJustice = 141, + WPN_Widowmaker = 527, + WPN_Pomson = 588, + WPN_RescueRanger = 997, + WPN_FestiveFrontierJustice = 1004, + //Secondary + WPN_EngineerPistol = 22, + WPN_Wrangler = 140, + WPN_ShortCircut = 528, + WPN_FestiveWrangler = 1086, + WPN_GeigerCounter = 30668, + //Melee + WPN_Wrench = 7, + WPN_NewWrench = 197, + WPN_Goldenwrench = 169, + WPN_SouthernHospitality = 155, + WPN_Gunslinger = 142, + WPN_Jag = 329, + WPN_FestiveWrench = 662, + WPN_EurekaEffect = 589, + WPN_BotWrenchS = 795, + WPN_BotWrenchG = 804, + WPN_BotWrenchR = 884, + WPN_BotWrenchB = 893, + WPN_BotWrenchC = 902, + WPN_BotWrenchD = 911, + WPN_BotWrenchES = 960, + WPN_BotWrenchEG = 969, + //Misc + WPN_Builder = 25, + WPN_Builder2 = 737, + WPN_Destructor = 26, + WPN_Toolbox = 28, +}; +enum medicweapons +{ + //Primary + WPN_SyringeGun = 17, + WPN_NewSyringeGun = 204, + WPN_Blutsauger = 36, + WPN_Crossbow = 305, + WPN_Overdose = 412, + WPN_FestiveCrossbow = 1079, + //Secondary + WPN_Medigun = 29, + WPN_NewMedigun = 211, + WPN_Kritzkrieg = 35, + WPN_QuickFix = 411, + WPN_FestiveMedigun = 663, + WPN_MedigunS = 796, + WPN_MedigunG = 805, + WPN_MedigunR = 885, + WPN_MedigunB = 894, + WPN_MedigunC = 903, + WPN_MedigunD = 912, + WPN_Vaccinator = 998, + WPN_MedigunES = 961, + WPN_MedigunEG = 970, + //Melee + WPN_Bonesaw = 8, + WPN_NewBonesaw = 198, + WPN_Ubersaw = 37, + WPN_Vitasaw = 173, + WPN_Amputator = 304, + WPN_Solemnvow = 413, + WPN_FestiveUbersaw = 1003, +}; +enum sniperweapons +{ + //Primary + WPN_SniperRifle = 14, + WPN_NewSniperRifle = 201, + WPN_Huntsman = 56, + WPN_SydneySleeper = 230, + WPN_Bazaarbargain = 402, + WPN_Machina = 526, + WPN_FestiveSniperRifle = 664, + WPN_HitmanHeatmaker = 752, + WPN_BotSniperRifleS = 792, + WPN_BotSniperRifleG = 801, + WPN_BotSniperRifleR = 881, + WPN_BotSniperRifleB = 890, + WPN_BotSniperRifleC = 899, + WPN_BotSniperRifleD = 908, + WPN_AWP = 851, + WPN_BotSniperRifleES = 957, + WPN_BotSniperRifleEG = 966, + WPN_FestiveHuntsman = 1005, + WPN_CompoundBow = 1092, + WPN_ClassicSniperRifle = 1098, + WPN_ShootingStar = 30665, + //Secondary + WPN_SMG = 16, + WPN_NewSMG = 203, + WPN_Jarate = 58, + WPN_DarwinDangerShield = 231, + WPN_CleanersCarbine = 751, + WPN_FestiveJarate = 1083, + WPN_SelfAwareBeautyMark = 1105, + WPN_RAZORBACK = 57, + WPN_COZYCAMPER = 642, + //Melee + WPN_Kukri = 3, + WPN_NewKukri = 193, + WPN_TribalmansShiv = 171, + WPN_Bushwacka = 232, + WPN_Shahanshah = 401, +}; +enum spyweapons +{ + //Primary + WPN_Revolver = 24, + WPN_NewRevolver = 210, + WPN_Ambassador = 61, + WPN_BigKill = 161, + WPN_Letranger = 224, + WPN_Enforcer = 460, + WPN_Diamondback = 525, + WPN_FestiveAmbassador = 1006, + //Melee + WPN_Knife = 4, + WPN_NewKnife = 194, + WPN_EternalReward = 225, + WPN_DisguiseKit = 27, + WPN_Kunai = 356, + WPN_BigEarner = 461, + WPN_WangaPrick = 574, + WPN_SharpDresser = 638, + WPN_Spycicle = 649, + WPN_FestiveKnife = 665, + WPN_BlackRose = 727, + WPN_BotKnifeS = 794, + WPN_BotKnifeG = 803, + WPN_BotKnifeR = 883, + WPN_BotKnifeB = 892, + WPN_BotKnifeC = 901, + WPN_BotKnifeD = 910, + WPN_BotKnifeES = 959, + WPN_BotKnifeEG = 968, + //Watches + WPN_InivisWatch = 30, + WPN_DeadRinger = 59, + WPN_CloakAndDagger = 60, + WPN_TimePiece = 297, + //Sapper + WPN_Sapper = 735, + WPN_Sapper2 = 736, + WPN_RedTape1 = 810, + WPN_RedTape2 = 831, + WPN_ApSap = 933, + WPN_FestiveSapper = 1080, + WPN_SnackAttack = 1102, +}; + + +class c_base_weapon : public IClientEntity +{ +public: + + NETVAR( m_iItemDefinitionIndex, "m_iItemDefinitionIndex", "DT_BaseAttributableItem", 0, int ); + NETVAR( m_flNextPrimaryAttack, "m_flNextPrimaryAttack", "DT_TFWeaponBase", 0, float ); + NETVAR( m_nInspectStage, "m_nInspectStage", "DT_TFWeaponBase", 0, int ); + NETVAR( m_flInspectAnimTime, "m_flInspectAnimTime", "DT_TFWeaponBase", 0, float ); + NETVAR( m_AttributeList, "m_AttributeList", "DT_BaseAttributableItem", 0, c_attribute_list* ) + NETVAR( m_hOwnerEntity, "m_hOwnerEntity", "DT_BaseEntity", 0, uint32_t ); + NETVAR( m_iClip1, "m_iClip1", "DT_BaseCombatWeapon", 0, int ); + NETVAR( m_hBuilder, "m_hBuilder", "DT_BaseObject", 0, uint32_t ); + void get_weapon_class( ); + + bool is_sniper( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_SniperRifle: + case WPN_NewSniperRifle: + case WPN_Huntsman: + case WPN_SydneySleeper: + case WPN_Bazaarbargain: + case WPN_Machina: + case WPN_FestiveSniperRifle: + case WPN_HitmanHeatmaker: + case WPN_BotSniperRifleS: + case WPN_BotSniperRifleG: + case WPN_BotSniperRifleR: + case WPN_BotSniperRifleB: + case WPN_BotSniperRifleC: + case WPN_BotSniperRifleD: + case WPN_AWP: + case WPN_BotSniperRifleES: + case WPN_BotSniperRifleEG: + case WPN_FestiveHuntsman: + case WPN_CompoundBow: + case WPN_ClassicSniperRifle: + case WPN_ShootingStar: + return true; + break; + default: + return false; + } + } + + + bool has_trajectory( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Sandman: + case WPN_WrapAssassin: + case WPN_FlyingGuillotine1: + case WPN_FlyingGuillotine2: + case WPN_Flaregun: + case WPN_Detonator: + case WPN_ScorchShot: + case WPN_FestiveFlaregun: + case WPN_GrenadeLauncher: + case WPN_NewGrenadeLauncher: + case WPN_LochNLoad: + case WPN_LoooseCannon: + case WPN_FestiveGrenadeLauncher: + case WPN_IronBomber: + case WPN_Ullapool: + case WPN_QuickieBombLauncher: + case WPN_StickyJumper: + case WPN_NewStickyLauncher: + case WPN_StickyLauncher: + case WPN_ScottishResistance: + case WPN_FestiveHuntsman: + case WPN_Huntsman: + case WPN_FestiveJarate: + case WPN_Jarate: + case WPN_SelfAwareBeautyMark: + case WPN_GasPasser: + case WPN_CompoundBow: + return true; + break; + default: + return false; + } + } + + bool is_primary( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Scattergun:
+ case WPN_NewScattergun:
+ case WPN_FAN:
+ case WPN_Shortstop:
+ case WPN_SodaPopper:
+ case WPN_BabyFaceBlaster:
+ case WPN_BotScattergunS:
+ case WPN_BotScattergunG:
+ case WPN_BotScattergunR:
+ case WPN_BotScattergunB:
+ case WPN_BotScattergunC:
+ case WPN_BotScattergunD:
+ case WPN_BotScattergunES:
+ case WPN_BotScattergunEG:
+ case WPN_FestiveFaN:
+ case WPN_BackScatter:
+ case WPN_RocketLauncher:
+ case WPN_NewRocketLauncher:
+ case WPN_DirectHit:
+ case WPN_BlackBox:
+ case WPN_RocketJumper:
+ case WPN_LibertyLauncher:
+ case WPN_CowMangler:
+ case WPN_Original:
+ case WPN_FestiveRocketLauncher:
+ case WPN_BeggersBazooka:
+ case WPN_BotRocketlauncherS:
+ case WPN_BotRocketlauncherG:
+ case WPN_BotRocketlauncherR:
+ case WPN_BotRocketlauncherB:
+ case WPN_BotRocketlauncherC:
+ case WPN_BotRocketlauncherD:
+ case WPN_BotRocketlauncherES:
+ case WPN_BotRocketlauncherEG:
+ case WPN_FestiveBlackbox:
+ case WPN_Airstrike:
+ case WPN_Flamethrower:
+ case WPN_NewFlamethrower:
+ case WPN_Backburner:
+ case WPN_Degreaser:
+ case WPN_FestiveFlamethrower:
+ case WPN_Phlogistinator:
+ case WPN_Rainblower:
+ case WPN_BotFlamethrowerS:
+ case WPN_BotFlamethrowerG:
+ case WPN_BotFlamethrowerR:
+ case WPN_BotFlamethrowerB:
+ case WPN_BotFlamethrowerC:
+ case WPN_BotFlamethrowerD:
+ case WPN_BotFlamethrowerES:
+ case WPN_BotFlamethrowerEG:
+ case WPN_FestiveBackburner:
+ case WPN_GrenadeLauncher:
+ case WPN_NewGrenadeLauncher:
+ case WPN_LochNLoad:
+ case WPN_LoooseCannon:
+ case WPN_FestiveGrenadeLauncher:
+ case WPN_IronBomber:
+ case WPN_Minigun:
+ case WPN_NewMinigun:
+ case WPN_Natascha:
+ case WPN_IronCurtain:
+ case WPN_BrassBeast:
+ case WPN_Tomislav:
+ case WPN_FestiveMinigun:
+ case WPN_HuoLongHeatmaker1:
+ case WPN_HuoLongHeatmaker2:
+ case WPN_BotMinigunS:
+ case WPN_BotMinigunG:
+ case WPN_BotMinigunR:
+ case WPN_BotMinigunB:
+ case WPN_BotMinigunC:
+ case WPN_BotMinigunD:
+ case WPN_Deflector:
+ case WPN_BotMinigunES:
+ case WPN_BotMinigunEG:
+ case WPN_EngineerShotgun:
+ case WPN_FrontierJustice:
+ case WPN_Widowmaker:
+ case WPN_Pomson:
+ case WPN_RescueRanger:
+ case WPN_FestiveFrontierJustice:
+ case WPN_SyringeGun:
+ case WPN_NewSyringeGun:
+ case WPN_Blutsauger:
+ case WPN_Crossbow:
+ case WPN_Overdose:
+ case WPN_FestiveCrossbow:
+ case WPN_SniperRifle:
+ case WPN_NewSniperRifle:
+ case WPN_Huntsman:
+ case WPN_SydneySleeper:
+ case WPN_Bazaarbargain:
+ case WPN_Machina:
+ case WPN_FestiveSniperRifle:
+ case WPN_HitmanHeatmaker:
+ case WPN_BotSniperRifleS:
+ case WPN_BotSniperRifleG:
+ case WPN_BotSniperRifleR:
+ case WPN_BotSniperRifleB:
+ case WPN_BotSniperRifleC:
+ case WPN_BotSniperRifleD:
+ case WPN_AWP:
+ case WPN_BotSniperRifleES:
+ case WPN_BotSniperRifleEG:
+ case WPN_FestiveHuntsman:
+ case WPN_CompoundBow:
+ case WPN_ClassicSniperRifle:
+ case WPN_ShootingStar:
+ case WPN_Revolver:
+ case WPN_NewRevolver:
+ case WPN_Ambassador:
+ case WPN_BigKill:
+ case WPN_Letranger:
+ case WPN_Enforcer:
+ case WPN_Diamondback:
+ case WPN_FestiveAmbassador: + return true; + break; + default: + return false; + } + } + + bool is_secondary( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_ScoutPistol:
+ case WPN_NewPistol:
+ case WPN_Bonk:
+ case WPN_CritCola:
+ case WPN_Lugermorph:
+ case WPN_Milk:
+ case WPN_Lugermorph2:
+ case WPN_Winger:
+ case WPN_PocketPistol:
+ case WPN_MutatedMilk:
+ case WPN_CAPPER:
+ case WPN_SoldierShotgun:
+ case WPN_NewShotgun:
+ case WPN_BuffBanner:
+ case WPN_BattalionBackup:
+ case WPN_Concheror:
+ case WPN_ReserveShooter:
+ case WPN_RighteousBison:
+ case WPN_FestiveBuffBanner:
+ case WPN_PanicAttack:
+ case WPN_ManTreads:
+ case WPN_GunBoats:
+ case WPN_BASEJumper:
+ case WPN_PyroShotgun:
+ case WPN_Flaregun:
+ case WPN_Detonator:
+ case WPN_ManMelter:
+ case WPN_ScorchShot:
+ case WPN_FestiveFlaregun:
+ case WPN_ThermalThruster:
+ case WPN_GasPasser:
+ case WPN_StickyLauncher:
+ case WPN_NewStickyLauncher:
+ case WPN_ScottishResistance:
+ case WPN_StickyJumper:
+ case WPN_FestiveStickyLauncher:
+ case WPN_BotStickyS:
+ case WPN_BotStickyG:
+ case WPN_BotStickyR:
+ case WPN_BotStickyB:
+ case WPN_BotStickyC:
+ case WPN_BotStickyD:
+ case WPN_BotStickyES:
+ case WPN_BotStickyEG:
+ case WPN_QuickieBombLauncher:
+ case WPN_SplendidScreen:
+ case WPN_CharginTarge:
+ case WPN_FestiveCharginTarge:
+ case WPN_TideTurner:
+ case WPN_HeavyShotgun:
+ case WPN_Sandvich:
+ case WPN_CandyBar:
+ case WPN_Steak:
+ case WPN_Fishcake:
+ case WPN_FamilyBuisness:
+ case WPN_RobotSandvich:
+ case WPN_FestiveSandvich:
+ case WPN_EngineerPistol:
+ case WPN_Wrangler:
+ case WPN_ShortCircut:
+ case WPN_FestiveWrangler:
+ case WPN_GeigerCounter:
+ case WPN_Medigun:
+ case WPN_NewMedigun:
+ case WPN_Kritzkrieg:
+ case WPN_QuickFix:
+ case WPN_FestiveMedigun:
+ case WPN_MedigunS:
+ case WPN_MedigunG:
+ case WPN_MedigunR:
+ case WPN_MedigunB:
+ case WPN_MedigunC:
+ case WPN_MedigunD:
+ case WPN_Vaccinator:
+ case WPN_MedigunES:
+ case WPN_MedigunEG:
+ case WPN_SMG:
+ case WPN_NewSMG:
+ case WPN_Jarate:
+ case WPN_DarwinDangerShield:
+ case WPN_CleanersCarbine:
+ case WPN_FestiveJarate:
+ case WPN_SelfAwareBeautyMark:
+ case WPN_RAZORBACK:
+ case WPN_COZYCAMPER: + return true; + break; + default: + return false; + } + } + + bool is_third( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Bat:
+ case WPN_NewBat:
+ case WPN_Sandman:
+ case WPN_Fish:
+ case WPN_Cane:
+ case WPN_BostonBasher:
+ case WPN_SunStick:
+ case WPN_FanOWar:
+ case WPN_RuneBlade:
+ case WPN_Saxxy:
+ case WPN_Atomizer:
+ case WPN_ConscientiousObjector:
+ case WPN_UnarmedCombat:
+ case WPN_WrapAssassin:
+ case WPN_FestiveBat:
+ case WPN_FestiveScattergun:
+ case WPN_FlyingGuillotine1:
+ case WPN_FlyingGuillotine2:
+ case WPN_FreedomStaff:
+ case WPN_BatOuttaHell:
+ case WPN_MemoryMaker:
+ case WPN_FestiveFish:
+ case WPN_TheHamShank:
+ case WPN_CrossingGuard:
+ case WPN_NecroSmasher:
+ case WPN_Batsaber:
+ case WPN_Shovel:
+ case WPN_NewShovel:
+ case WPN_Equalizer:
+ case WPN_PainTrain:
+ case WPN_Katana:
+ case WPN_MarketGardener:
+ case WPN_DisciplinaryAction:
+ case WPN_EscapePlan:
+ case WPN_Fireaxe:
+ case WPN_NewAxe:
+ case WPN_Axtingusher:
+ case WPN_HomeWrecker:
+ case WPN_PowerJack:
+ case WPN_Backscratcher:
+ case WPN_VolcanoFragment:
+ case WPN_Maul:
+ case WPN_Mailbox:
+ case WPN_ThirdDegree:
+ case WPN_Lollychop:
+ case WPN_NeonAnnihilator1:
+ case WPN_NeonAnnihilator2:
+ case WPN_FestiveAxtingisher:
+ case WPN_Bottle:
+ case WPN_NewBottle:
+ case WPN_Sword:
+ case WPN_ScottsSkullctter:
+ case WPN_Fryingpan:
+ case WPN_Headless:
+ case WPN_Ullapool:
+ case WPN_Claidheamhmor:
+ case WPN_PersainPersuader:
+ case WPN_Golfclub:
+ case WPN_ScottishHandshake:
+ case WPN_GoldenFryingPan:
+ case WPN_FestiveEyelander:
+ case WPN_Fists:
+ case WPN_NewFists:
+ case WPN_KGB:
+ case WPN_GRU:
+ case WPN_WarriorSpirit:
+ case WPN_FistsOfSteel:
+ case WPN_EvictionNotice:
+ case WPN_ApocoFists:
+ case WPN_HolidayPunch:
+ case WPN_FestiveGRU:
+ case WPN_BreadBite:
+ case WPN_Wrench:
+ case WPN_NewWrench:
+ case WPN_Goldenwrench:
+ case WPN_SouthernHospitality:
+ case WPN_Gunslinger:
+ case WPN_Jag:
+ case WPN_FestiveWrench:
+ case WPN_EurekaEffect:
+ case WPN_BotWrenchS:
+ case WPN_BotWrenchG:
+ case WPN_BotWrenchR:
+ case WPN_BotWrenchB:
+ case WPN_BotWrenchC:
+ case WPN_BotWrenchD:
+ case WPN_BotWrenchES:
+ case WPN_BotWrenchEG:
+ case WPN_Bonesaw:
+ case WPN_NewBonesaw:
+ case WPN_Ubersaw:
+ case WPN_Vitasaw:
+ case WPN_Amputator:
+ case WPN_Solemnvow:
+ case WPN_FestiveUbersaw:
+ case WPN_Kukri:
+ case WPN_NewKukri:
+ case WPN_TribalmansShiv:
+ case WPN_Bushwacka:
+ case WPN_Shahanshah: + return true; + break; + default: + return false; + } + } + + bool is_shield( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_CharginTarge: + case WPN_SplendidScreen: + case WPN_TideTurner: + case WPN_FestiveCharginTarge: + return true; + break; + default: + return false; + } + } + + + bool is_shotgun( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Scattergun: + case WPN_NewScattergun: + case WPN_FAN: + case WPN_SodaPopper: + case WPN_FestiveFaN: + case WPN_BackScatter: + case WPN_SoldierShotgun: + case WPN_NewShotgun: + case WPN_ReserveShooter: + case WPN_PanicAttack: + case WPN_PyroShotgun: + case WPN_HeavyShotgun: + case WPN_FamilyBuisness: + case WPN_EngineerShotgun: + case WPN_FrontierJustice: + case WPN_Widowmaker: + case WPN_Pomson: + case WPN_RescueRanger: + case WPN_FestiveFrontierJustice: + return true; + break; + default: + return false; + } + } + + bool is_melee( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Bat: + case WPN_NewBat: + case WPN_Sandman: + case WPN_Fish: + case WPN_Cane: + case WPN_BostonBasher: + case WPN_SunStick: + case WPN_FanOWar: + case WPN_RuneBlade: + case WPN_Saxxy: + case WPN_Atomizer: + case WPN_ConscientiousObjector: + case WPN_UnarmedCombat: + case WPN_WrapAssassin: + case WPN_FestiveBat: + case WPN_FreedomStaff: + case WPN_BatOuttaHell: + case WPN_MemoryMaker: + case WPN_FestiveFish: + case WPN_TheHamShank: + case WPN_CrossingGuard: + case WPN_NecroSmasher: + case WPN_Batsaber: + case WPN_Shovel: + case WPN_NewShovel: + case WPN_Equalizer: + case WPN_PainTrain: + case WPN_Katana: + case WPN_MarketGardener: + case WPN_DisciplinaryAction: + case WPN_EscapePlan: + case WPN_Fireaxe: + case WPN_NewAxe: + case WPN_Axtingusher: + case WPN_HomeWrecker: + case WPN_PowerJack: + case WPN_Backscratcher: + case WPN_VolcanoFragment: + case WPN_Maul: + case WPN_Mailbox: + case WPN_ThirdDegree: + case WPN_Lollychop: + case WPN_NeonAnnihilator1: + case WPN_NeonAnnihilator2: + case WPN_FestiveAxtingisher: + case WPN_Bottle: + case WPN_NewBottle: + case WPN_Sword: + case WPN_ScottsSkullctter: + case WPN_Fryingpan: + case WPN_Headless: + case WPN_Ullapool: + case WPN_Claidheamhmor: + case WPN_PersainPersuader: + case WPN_Golfclub: + case WPN_ScottishHandshake: + case WPN_GoldenFryingPan: + case WPN_FestiveEyelander: + case WPN_Fists: + case WPN_NewFists: + case WPN_KGB: + case WPN_GRU: + case WPN_WarriorSpirit: + case WPN_FistsOfSteel: + case WPN_EvictionNotice: + case WPN_ApocoFists: + case WPN_HolidayPunch: + case WPN_FestiveGRU: + case WPN_BreadBite: + case WPN_Wrench: + case WPN_NewWrench: + case WPN_Goldenwrench: + case WPN_SouthernHospitality: + case WPN_Gunslinger: + case WPN_Jag: + case WPN_Bonesaw: + case WPN_NewBonesaw: + case WPN_Ubersaw: + case WPN_Vitasaw: + case WPN_Amputator: + case WPN_Solemnvow: + case WPN_FestiveUbersaw: + case WPN_Kukri: + case WPN_NewKukri: + case WPN_TribalmansShiv: + case WPN_Bushwacka: + case WPN_Shahanshah: + return true; + break; + default: + return false; + } + } + + bool is_pistol( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_EngineerPistol: + case WPN_ScoutPistol: + case WPN_NewPistol: + case WPN_Lugermorph: + case WPN_Lugermorph2: + case WPN_Winger: + case WPN_PocketPistol: + case WPN_CAPPER: + case WPN_ShortCircut: + case WPN_Flaregun: + case WPN_FestiveFlaregun: + case WPN_Detonator: + case WPN_ManMelter: + case WPN_ScorchShot: + case WPN_Shortstop: + return true; + break; + default: + return false; + } + } + + bool is_grenade( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Milk: + case WPN_MutatedMilk: + case WPN_Jarate: + case WPN_FestiveJarate: + case WPN_SelfAwareBeautyMark: + case WPN_GasPasser: + case WPN_FlyingGuillotine1: + case WPN_FlyingGuillotine2: + return true; + break; + default: + return false; + + } + } + + + bool is_util( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Milk: + case WPN_MutatedMilk: + case WPN_Jarate: + case WPN_FestiveJarate: + case WPN_DarwinDangerShield: + case WPN_RAZORBACK: + case WPN_COZYCAMPER: + case WPN_BuffBanner: + case WPN_BattalionBackup: + case WPN_Concheror: + case WPN_BASEJumper: + case WPN_ManTreads: + case WPN_GunBoats: + case WPN_ThermalThruster: + case WPN_DisguiseKit: + case WPN_Builder: + case WPN_Builder2: + case WPN_Destructor: + case WPN_Toolbox: + return true; + break; + default: + return false; + + } + } + + bool is_flame_thrower( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Flamethrower: + case WPN_NewFlamethrower: + case WPN_Backburner: + case WPN_Degreaser: + case WPN_FestiveFlamethrower: + case WPN_Phlogistinator: + case WPN_Rainblower: + case WPN_BotFlamethrowerS: + case WPN_BotFlamethrowerG: + case WPN_BotFlamethrowerR: + case WPN_BotFlamethrowerB: + case WPN_BotFlamethrowerC: + case WPN_BotFlamethrowerD: + case WPN_BotFlamethrowerES: + case WPN_BotFlamethrowerEG: + case WPN_FestiveBackburner: + return true; + break; + default: + return false; + } + } + + bool is_sticky( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_StickyLauncher: + case WPN_NewStickyLauncher: + case WPN_ScottishResistance: + case WPN_StickyJumper: + case WPN_FestiveStickyLauncher: + case WPN_BotStickyS: + case WPN_BotStickyG: + case WPN_BotStickyR: + case WPN_BotStickyB: + case WPN_BotStickyC: + case WPN_BotStickyD: + case WPN_BotStickyES: + case WPN_BotStickyEG: + case WPN_QuickieBombLauncher: + return true; + break; + default: + return false; + } + } + + bool is_grenade_launcher( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_GrenadeLauncher: + case WPN_NewGrenadeLauncher: + case WPN_LochNLoad: + case WPN_LoooseCannon: + case WPN_FestiveGrenadeLauncher: + case WPN_IronBomber: + return true; + break; + default: + return false; + } + } + + bool is_rocket_launcher( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_RocketLauncher: + case WPN_NewRocketLauncher: + case WPN_DirectHit: + case WPN_BlackBox: + case WPN_RocketJumper: + case WPN_LibertyLauncher: + case WPN_CowMangler: + case WPN_Original: + case WPN_FestiveRocketLauncher: + case WPN_BeggersBazooka: + case WPN_BotRocketlauncherS: + case WPN_BotRocketlauncherG: + case WPN_BotRocketlauncherR: + case WPN_BotRocketlauncherB: + case WPN_BotRocketlauncherC: + case WPN_BotRocketlauncherD: + case WPN_BotRocketlauncherES: + case WPN_BotRocketlauncherEG: + case WPN_FestiveBlackbox: + case WPN_Airstrike: + return true; + break; + default: + return false; + } + } + + bool is_minigun( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Minigun: + case WPN_NewMinigun: + case WPN_Natascha: + case WPN_IronCurtain: + case WPN_BrassBeast: + case WPN_Tomislav: + case WPN_FestiveMinigun: + case WPN_HuoLongHeatmaker1: + case WPN_HuoLongHeatmaker2: + case WPN_BotMinigunS: + case WPN_BotMinigunG: + case WPN_BotMinigunR: + case WPN_BotMinigunB: + case WPN_BotMinigunC: + case WPN_BotMinigunD: + case WPN_Deflector: + case WPN_BotMinigunES: + case WPN_BotMinigunEG: + return true; + break; + default: + return false; + } + } + + bool is_edible( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Bonk: + case WPN_CritCola: + case WPN_CandyBar: + case WPN_Steak: + case WPN_Fishcake: + case WPN_Sandvich: + case WPN_RobotSandvich: + case WPN_FestiveSandvich: + return true; + break; + default: + return false; + } + } + + bool is_wrench( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Wrench: + case WPN_NewWrench: + case WPN_Goldenwrench: + case WPN_SouthernHospitality: + case WPN_Gunslinger: + case WPN_Jag: + case WPN_FestiveWrench: + case WPN_EurekaEffect: + case WPN_BotWrenchS: + case WPN_BotWrenchG: + case WPN_BotWrenchR: + case WPN_BotWrenchB: + case WPN_BotWrenchC: + case WPN_BotWrenchD: + case WPN_BotWrenchES: + case WPN_BotWrenchEG: + return true; + break; + default: + return false; + } + } + + bool is_engineer( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Builder: + case WPN_Builder2: + case WPN_Destructor: + case WPN_Toolbox: + return true; + break; + default: + return false; + } + } + + bool is_needle_gun( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_SyringeGun: + case WPN_NewSyringeGun: + case WPN_Blutsauger: + case WPN_Crossbow: + case WPN_Overdose: + case WPN_FestiveCrossbow: + return true; + break; + default: + return false; + } + } + + bool is_healing( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Medigun: + case WPN_NewMedigun: + case WPN_Kritzkrieg: + case WPN_QuickFix: + case WPN_FestiveMedigun: + case WPN_MedigunS: + case WPN_MedigunG: + case WPN_MedigunR: + case WPN_MedigunB: + case WPN_MedigunC: + case WPN_MedigunD: + case WPN_Vaccinator: + case WPN_MedigunES: + case WPN_MedigunEG: + return true; + break; + default: + return false; + } + } + + bool is_revolver( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Revolver: + case WPN_NewRevolver: + case WPN_Ambassador: + case WPN_BigKill: + case WPN_Letranger: + case WPN_Enforcer: + case WPN_Diamondback: + case WPN_FestiveAmbassador: + return true; + break; + default: + return false; + } + } + + bool is_spy_knife( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Knife: + case WPN_NewKnife: + case WPN_EternalReward: + case WPN_DisguiseKit: + case WPN_Kunai: + case WPN_BigEarner: + case WPN_WangaPrick: + case WPN_SharpDresser: + case WPN_Spycicle: + case WPN_FestiveKnife: + case WPN_BlackRose: + case WPN_BotKnifeS: + case WPN_BotKnifeG: + case WPN_BotKnifeR: + case WPN_BotKnifeB: + case WPN_BotKnifeC: + case WPN_BotKnifeD: + case WPN_BotKnifeES: + case WPN_BotKnifeEG: + return true; + break; + default: + return false; + } + } + + bool is_watch( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_InivisWatch: + case WPN_DeadRinger: + case WPN_CloakAndDagger: + case WPN_TimePiece: + return true; + break; + default: + return false; + } + } + + bool is_sapper( ) { + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Sapper: + case WPN_Sapper2: + case WPN_RedTape1: + case WPN_RedTape2: + case WPN_ApSap: + case WPN_FestiveSapper: + case WPN_SnackAttack: + return true; + break; + default: + return false; + } + } + + /*bool get_projectile_speed( float& speed ) { + speed = 0; + switch( m_iItemDefinitionIndex( ) ) { + case WPN_Milk: + case WPN_MutatedMilk: + speed = 1019.9; + break; + case WPN_FlyingGuillotine1: + case WPN_FlyingGuillotine2: + case WPN_Sandman: + case WPN_WrapAssassin: + case WPN_ManMelter: + speed = 3000; + break; + case WPN_RocketJumper: + case WPN_BlackBox: + case WPN_Original: + case WPN_BeggersBazooka: + case WPN_CowMangler: + speed = 1100; + break; + + case WPN_DirectHit: + speed = 1980; + break; + + case WPN_LibertyLauncher: + speed = 1540; + break; + + case WPN_RighteousBison: + case WPN_Pomson: + speed = 1200; + break; + + case WPN_Flaregun: + case WPN_FestiveFlaregun: + case WPN_ScorchShot: + case WPN_Detonator: + speed = 2000; + break; + + case WPN_GrenadeLauncher: + case WPN_NewGrenadeLauncher: + case WPN_FestiveGrenadeLauncher: + case WPN_IronBomber: + speed = 1216.6; + break; + + + + /* + get dynamically + + stickybomb launcher + scottish resistance + sticky jumper + quickiebomb launcher + huntman fortified compound + + + + } + return ( speed ); + }*/ + + int get_max_clip_1( ); + int get_max_clip_2( ); + int get_slot( ); + char* get_name( ); + char* get_print_name( ); + vec3_t& get_bullet_spread( ); + float get_spread( ); + int get_weaponid( ); + bool can_fire( ); + bool is_non_aim( ); + int& get_inspect_stage( ); + float& get_inspect_time( ); + c_attribute_list* get_attribute_list( ); + float get_distance( ); +};
\ No newline at end of file |
