Advertisement
Guest User

FIX

a guest
Aug 19th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.21 KB | None | 0 0
  1. template<class T>
  2. constexpr bool is_one_of(T input, initializer_list<T> predicates) {
  3. return find(predicates.begin(), predicates.end(), input) != predicates.end();
  4. }
  5.  
  6. enum class Weapons {
  7. DEAGLE = 1,
  8. ELITE = 2,
  9. FIVESEVEN = 3,
  10. GLOCK = 4,
  11. AK47 = 7,
  12. AUG = 8,
  13. AWP = 9,
  14. FAMAS = 10,
  15. G3SG1 = 11,
  16. GALILAR = 13,
  17. M249 = 14,
  18. M4A1 = 16,
  19. MAC10 = 17,
  20. P90 = 19,
  21. UMP45 = 24,
  22. XM1014 = 25,
  23. BIZON = 26,
  24. MAG7 = 27,
  25. NEGEV = 28,
  26. SAWEDOFF = 29,
  27. TEC9 = 30,
  28. TASER = 31,
  29. HKP2000 = 32,
  30. MP7 = 33,
  31. MP9 = 34,
  32. NOVA = 35,
  33. P250 = 36,
  34. SCAR20 = 38,
  35. SG553 = 39,
  36. SSG08 = 40,
  37. KNIFE = 42,
  38. FLASHBANG = 43,
  39. HEGRENADE = 44,
  40. SMOKEGRENADE = 45,
  41. MOLOTOV = 46,
  42. DECOY = 47,
  43. INCGRENADE = 48,
  44. C4 = 49,
  45. KNIFE_T = 59,
  46. M4A1_SILENCER = 60,
  47. USP_SILENCER = 61,
  48. CZ75A = 63,
  49. R8_REVOLVER = 64,
  50. KNIFE_BAYONET = 500,
  51. KNIFE_FLIP = 505,
  52. KNIFE_GUT = 506,
  53. KNIFE_KARAMBIT = 507,
  54. KNIFE_M9_BAYONET = 508,
  55. KNIFE_HUNTSMAN = 509,
  56. KNIFE_FALCHION = 512,
  57. KNIFE_BOWIE = 514,
  58. KNIFE_BUTTERFLY = 515,
  59. KNIFE_SHADOW_DAGGERS = 516,
  60. };
  61.  
  62. class CBaseWeapon : public CBaseEntity {
  63. public:
  64. Weapons GetItemDefinition() {
  65. static auto var =
  66. NetVar(DT_BaseAttributableItem, m_AttributeManager) +
  67. NetVar(DT_AttributeContainer, m_Item) +
  68. NetVar(DT_ScriptCreatedItem, m_iItemDefinitionIndex);
  69.  
  70. return Data<Weapons>(var);
  71. }
  72.  
  73. public:
  74. bool IsPistol() {
  75. return is_one_of(GetItemDefinition(), {
  76. Weapons::CZ75A, Weapons::DEAGLE, Weapons::ELITE, Weapons::FIVESEVEN, Weapons::GLOCK, Weapons::HKP2000, Weapons::P250, Weapons::R8_REVOLVER, Weapons::TEC9, Weapons::USP_SILENCER
  77. });
  78. }
  79.  
  80. bool IsRifle() {
  81. return is_one_of(GetItemDefinition(), {
  82. Weapons::AK47, Weapons::AUG, Weapons::FAMAS, Weapons::GALILAR, Weapons::M4A1, Weapons::M4A1_SILENCER, Weapons::SG553
  83. });
  84. }
  85.  
  86. bool IsSubmachineGun() {
  87. return is_one_of(GetItemDefinition(), {
  88. Weapons::MP7, Weapons::MP9, Weapons::BIZON, Weapons::MAC10, Weapons::P90, Weapons::UMP45,
  89. });
  90. }
  91.  
  92. bool IsShotgun() {
  93. return is_one_of(GetItemDefinition(), {
  94. Weapons::MAG7, Weapons::NOVA, Weapons::SAWEDOFF, Weapons::XM1014,
  95. });
  96. }
  97.  
  98. bool IsGrenade() {
  99. return is_one_of(GetItemDefinition(), {
  100. Weapons::DECOY, Weapons::FLASHBANG, Weapons::HEGRENADE, Weapons::INCGRENADE, Weapons::MOLOTOV, Weapons::SMOKEGRENADE,
  101. });
  102. }
  103.  
  104. bool IsMachineGun() {
  105. return is_one_of(GetItemDefinition(), {
  106. Weapons::M249,
  107. Weapons::NEGEV,
  108. });
  109. }
  110.  
  111. bool IsSingleShotSniperRifle() {
  112. return is_one_of(GetItemDefinition(), {
  113. Weapons::AWP,
  114. Weapons::SSG08,
  115. });
  116. }
  117.  
  118. bool IsAutoShotSniperRifle() {
  119. return is_one_of(GetItemDefinition(), {
  120. Weapons::G3SG1,
  121. Weapons::SCAR20,
  122. });
  123. }
  124.  
  125. bool IsMelee() {
  126. return is_one_of(GetItemDefinition(), {
  127. Weapons::KNIFE, Weapons::KNIFE_BAYONET, Weapons::KNIFE_BOWIE, Weapons::KNIFE_BUTTERFLY,
  128. Weapons::KNIFE_FALCHION, Weapons::KNIFE_FLIP, Weapons::KNIFE_GUT, Weapons::KNIFE_HUNTSMAN,
  129. Weapons::KNIFE_KARAMBIT, Weapons::KNIFE_M9_BAYONET, Weapons::KNIFE_SHADOW_DAGGERS, Weapons::KNIFE_T,
  130. Weapons::TASER, // POLICE BRUTALITY
  131. });
  132. }
  133.  
  134. bool IsC4() {
  135. return GetItemDefinition() == Weapons::C4;
  136. }
  137. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement