· 8 years ago · Feb 16, 2018, 02:02 PM
1public PlVers:__version =
2{
3 version = 5,
4 filevers = "1.8.0.6035",
5 date = "02/16/2018",
6 time = "14:42:57"
7};
8new Float:NULL_VECTOR[3];
9new String:NULL_STRING[4];
10public Extension:__ext_core =
11{
12 name = "Core",
13 file = "core",
14 autoload = 0,
15 required = 0,
16};
17new MaxClients;
18public Extension:__ext_sdktools =
19{
20 name = "SDKTools",
21 file = "sdktools.ext",
22 autoload = 1,
23 required = 1,
24};
25public Extension:__ext_sdkhooks =
26{
27 name = "SDKHooks",
28 file = "sdkhooks.ext",
29 autoload = 1,
30 required = 1,
31};
32public Extension:__ext_cprefs =
33{
34 name = "Client Preferences",
35 file = "clientprefs.ext",
36 autoload = 1,
37 required = 1,
38};
39public Extension:__ext_cstrike =
40{
41 name = "cstrike",
42 file = "games/game.cstrike.ext",
43 autoload = 0,
44 required = 1,
45};
46new String:g_GalilARSkins[38][0];
47new g_GalilARSkinIds[38] =
48{
49 0, 661, 647, 629, 546, 494, 460, 216, 379, 398, 428, 241, 83, 478, 119, 192, 297, 237, 235, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
50};
51new String:g_AwpSkins[41][0];
52new g_AwpSkinIds[41] =
53{
54 0, 691, 662, 640, 212, 584, 525, 344, 174, 279, 446, 30, 227, 259, 395, 251, 424, 181, 84, 451, 475, 51, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
55};
56new String:g_M4A4Skins[42][0];
57new g_M4A4SkinIds[42] =
58{
59 0, 695, 664, 632, 588, 533, 512, 309, 16, 206, 255, 187, 215, 155, 400, 384, 17, 400, 480, 164, 449, 471, 336, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
60};
61new String:g_M4A1Skins[38][0];
62new g_M4A1SkinIds[38] =
63{
64 0, 615, 681, 644, 631, 587, 548, 3, 497, 326, 321, 77, 430, 445, 254, 360, 440, 301, 60, 189, 383, 217, 294, 44, 98, 38, 40, 5, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
65};
66new String:g_CZ75AutoSkins[36][0];
67new g_CZ75AutoSkinIds[36] =
68{
69 0, 687, 643, 622, 602, 543, 334, 350, 218, 297, 325, 270, 453, 182, 300, 269, 12, 232, 315, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 246, 42, 413, 59, 72, 414
70};
71new String:g_RevolverSkins[25][0];
72new g_RevolverSkinIds[25] =
73{
74 0, 701, 683, 595, 522, 3, 12, 232, 350, 334, 294, 44, 98, 33, 40, 5, 77, 409, 32, 246, 42, 413, 59, 72, 414
75};
76new String:g_DEagleSkins[38][0];
77new g_DEagleSkinIds[38] =
78{
79 0, 645, 603, 527, 509, 37, 231, 351, 12, 232, 185, 328, 273, 61, 296, 468, 90, 397, 40, 347, 469, 470, 294, 3, 44, 98, 38, 33, 5, 77, 409, 32, 246, 42, 413, 59, 72, 414
80};
81new String:g_G3SG1Skins[30][0];
82new g_G3SG1SkinIds[30] =
83{
84 0, 677, 628, 606, 545, 511, 493, 382, 195, 438, 294, 229, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
85};
86new String:g_Scar20Skins[31][0];
87new g_Scar20SkinIds[31] =
88{
89 0, 685, 642, 612, 597, 502, 406, 391, 312, 12, 232, 165, 196, 70, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 246, 42, 413, 59, 72, 414
90};
91new String:g_SawedOffSkins[35][0];
92new g_SawedOffSkinIds[35] =
93{
94 0, 673, 655, 638, 596, 552, 83, 345, 250, 256, 171, 204, 41, 390, 323, 405, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
95};
96new String:g_NegevSkins[30][0];
97new g_NegevSkinIds[30] =
98{
99 0, 698, 610, 355, 514, 483, 369, 355, 285, 317, 432, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
100};
101new String:g_SSG08Skins[32][0];
102new g_SSG08SkinIds[32] =
103{
104 0, 670, 200, 233, 253, 624, 361, 554, 538, 503, 294, 222, 3, 304, 319, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
105};
106new String:g_SG553Skins[32][0];
107new g_SG553SkinIds[32] =
108{
109 0, 702, 686, 613, 169, 247, 598, 553, 519, 287, 98, 487, 243, 39, 294, 3, 44, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
110};
111new String:g_NovaSkins[35][0];
112new g_NovaSkinIds[35] =
113{
114 0, 699, 634, 214, 166, 590, 537, 191, 294, 158, 170, 263, 62, 3, 286, 299, 164, 225, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
115};
116new String:g_XM1014Skins[34][0];
117new g_XM1014SkinIds[34] =
118{
119 0, 706, 689, 654, 616, 166, 557, 505, 393, 407, 96, 348, 314, 320, 370, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
120};
121new String:g_P90Skins[40][0];
122new g_P90SkinIds[40] =
123{
124 0, 669, 636, 611, 593, 516, 234, 359, 228, 156, 311, 422, 182, 169, 378, 111, 342, 335, 224, 283, 20, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
125};
126new String:g_P250Skins[34][0];
127new g_P250SkinIds[34] =
128{
129 0, 668, 678, 650, 592, 551, 501, 358, 426, 162, 258, 271, 373, 388, 404, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
130};
131new String:g_FiveSeveNSKins[29][0];
132new g_FiveSeveNSKinIds[29] =
133{
134 0, 693, 430, 646, 605, 530, 510, 44, 377, 387, 427, 294, 3, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
135};
136new String:g_AugSkins[31][0];
137new g_AugSkinIds[31] =
138{
139 0, 690, 674, 601, 583, 541, 507, 455, 73, 305, 280, 9, 33, 294, 3, 44, 98, 38, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
140};
141new String:g_DualBerettasSkins[32][0];
142new g_DualBerettasSkinIds[32] =
143{
144 0, 658, 330, 450, 625, 544, 528, 491, 249, 190, 447, 261, 220, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
145};
146new String:g_M249Skins[24][0];
147new g_M249SkinIds[24] =
148{
149 0, 648, 547, 496, 401, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
150};
151new String:g_Mac10Skins[35][0];
152new g_Mac10SkinIds[35] =
153{
154 0, 665, 682, 651, 589, 534, 498, 32, 402, 284, 333, 206, 98, 337, 433, 310, 188, 294, 38, 3, 39, 44, 33, 40, 5, 77, 409, 12, 232, 246, 42, 413, 59, 72, 414
155};
156new String:g_Mag7Skins[32][0];
157new g_Mag7SkinIds[32] =
158{
159 0, 703, 666, 633, 608, 535, 499, 385, 177, 431, 32, 291, 34, 39, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 12, 232, 246, 42, 413, 59, 72, 414
160};
161new String:g_Mp7Skins[32][0];
162new g_Mp7SkinIds[32] =
163{
164 0, 696, 649, 15, 627, 536, 500, 11, 15, 442, 481, 102, 354, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
165};
166new String:g_Mp9Skins[37][0];
167new g_Mp9SkinIds[37] =
168{
169 0, 697, 679, 329, 630, 609, 549, 61, 315, 482, 386, 403, 39, 141, 262, 448, 368, 3, 70, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
170};
171new String:g_Tec9Skins[34][0];
172new g_Tec9SkinIds[34] =
173{
174 0, 671, 684, 614, 599, 555, 539, 520, 303, 272, 101, 36, 374, 463, 248, 294, 3, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
175};
176new String:g_Ump45Skins[37][0];
177new g_Ump45SkinIds[37] =
178{
179 0, 704, 672, 688, 652, 15, 615, 556, 193, 17, 392, 333, 441, 15, 93, 37, 281, 436, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
180};
181new String:g_Ak47Skins[43][0];
182new g_Ak47SkinIds[43] =
183{
184 0, 656, 675, 639, 600, 524, 506, 172, 490, 302, 380, 44, 394, 180, 422, 282, 14, 226, 474, 316, 456, 340, 122, 341, 300, 3, 294, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
185};
186new String:g_PPBizonSkins[35][0];
187new g_PPBizonSkinIds[35] =
188{
189 0, 692, 676, 641, 13, 594, 542, 526, 306, 349, 101, 267, 236, 224, 376, 70, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
190};
191new String:g_UspSkins[39][0];
192new g_UspSkinIds[39] =
193{
194 0, 705, 642, 653, 454, 318, 637, 540, 504, 489, 277, 221, 332, 183, 313, 236, 25, 339, 364, 217, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
195};
196new String:g_P2000Skins[33][0];
197new g_P2000SkinIds[33] =
198{
199 0, 700, 667, 635, 591, 550, 515, 338, 357, 294, 71, 184, 32, 327, 213, 389, 3, 44, 98, 38, 33, 40, 5, 77, 409, 12, 232, 246, 42, 413, 59, 72, 414
200};
201new String:g_FamasSkins[37][0];
202new g_FamasSkinIds[37] =
203{
204 0, 659, 626, 604, 529, 492, 429, 154, 92, 22, 178, 218, 477, 260, 288, 194, 371, 244, 3, 294, 44, 98, 38, 33, 40, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
205};
206new String:g_Glock18Skins[35][0];
207new g_Glock18SkinIds[35] =
208{
209 0, 694, 680, 623, 607, 586, 532, 495, 38, 479, 3, 399, 293, 48, 381, 40, 230, 437, 353, 294, 44, 98, 33, 5, 77, 409, 32, 12, 232, 246, 42, 413, 59, 72, 414
210};
211new Handle:g_pDatabase;
212new Handle:g_pKnifeCookie;
213new Handle:g_pStatTrakOptionCookie;
214new Handle:g_pKnifeSkinCookie;
215new g_Skins[66][768];
216new g_ItemDefinitionIndex[66];
217new g_Kills[66];
218new g_SpawnTime[66];
219new String:g_Steam[66][32];
220new bool:g_bIsInGame[66];
221new bool:g_bMessageShown[66];
222new KnifeSkin:g_pKnifeSkin[66] =
223{
224 -2, ...
225};
226new Knife:g_pKnife[66] =
227{
228 -1, ...
229};
230new StatTrakOption:g_pStatTrakOption[66];
231new Handle:g_pWear;
232new Handle:g_pNTCookies[768];
233new String:g_Buffer[4096];
234new g_iFakeClient = -1;
235new bool:g_bIsInRound;
236new Float:g_fDelay;
237new g_Offset;
238public void:__ext_core_SetNTVOptional()
239{
240 MarkNativeAsOptional("GetFeatureStatus");
241 MarkNativeAsOptional("RequireFeature");
242 MarkNativeAsOptional("AddCommandListener");
243 MarkNativeAsOptional("RemoveCommandListener");
244 MarkNativeAsOptional("BfWriteBool");
245 MarkNativeAsOptional("BfWriteByte");
246 MarkNativeAsOptional("BfWriteChar");
247 MarkNativeAsOptional("BfWriteShort");
248 MarkNativeAsOptional("BfWriteWord");
249 MarkNativeAsOptional("BfWriteNum");
250 MarkNativeAsOptional("BfWriteFloat");
251 MarkNativeAsOptional("BfWriteString");
252 MarkNativeAsOptional("BfWriteEntity");
253 MarkNativeAsOptional("BfWriteAngle");
254 MarkNativeAsOptional("BfWriteCoord");
255 MarkNativeAsOptional("BfWriteVecCoord");
256 MarkNativeAsOptional("BfWriteVecNormal");
257 MarkNativeAsOptional("BfWriteAngles");
258 MarkNativeAsOptional("BfReadBool");
259 MarkNativeAsOptional("BfReadByte");
260 MarkNativeAsOptional("BfReadChar");
261 MarkNativeAsOptional("BfReadShort");
262 MarkNativeAsOptional("BfReadWord");
263 MarkNativeAsOptional("BfReadNum");
264 MarkNativeAsOptional("BfReadFloat");
265 MarkNativeAsOptional("BfReadString");
266 MarkNativeAsOptional("BfReadEntity");
267 MarkNativeAsOptional("BfReadAngle");
268 MarkNativeAsOptional("BfReadCoord");
269 MarkNativeAsOptional("BfReadVecCoord");
270 MarkNativeAsOptional("BfReadVecNormal");
271 MarkNativeAsOptional("BfReadAngles");
272 MarkNativeAsOptional("BfGetNumBytesLeft");
273 MarkNativeAsOptional("BfWrite.WriteBool");
274 MarkNativeAsOptional("BfWrite.WriteByte");
275 MarkNativeAsOptional("BfWrite.WriteChar");
276 MarkNativeAsOptional("BfWrite.WriteShort");
277 MarkNativeAsOptional("BfWrite.WriteWord");
278 MarkNativeAsOptional("BfWrite.WriteNum");
279 MarkNativeAsOptional("BfWrite.WriteFloat");
280 MarkNativeAsOptional("BfWrite.WriteString");
281 MarkNativeAsOptional("BfWrite.WriteEntity");
282 MarkNativeAsOptional("BfWrite.WriteAngle");
283 MarkNativeAsOptional("BfWrite.WriteCoord");
284 MarkNativeAsOptional("BfWrite.WriteVecCoord");
285 MarkNativeAsOptional("BfWrite.WriteVecNormal");
286 MarkNativeAsOptional("BfWrite.WriteAngles");
287 MarkNativeAsOptional("BfRead.ReadBool");
288 MarkNativeAsOptional("BfRead.ReadByte");
289 MarkNativeAsOptional("BfRead.ReadChar");
290 MarkNativeAsOptional("BfRead.ReadShort");
291 MarkNativeAsOptional("BfRead.ReadWord");
292 MarkNativeAsOptional("BfRead.ReadNum");
293 MarkNativeAsOptional("BfRead.ReadFloat");
294 MarkNativeAsOptional("BfRead.ReadString");
295 MarkNativeAsOptional("BfRead.ReadEntity");
296 MarkNativeAsOptional("BfRead.ReadAngle");
297 MarkNativeAsOptional("BfRead.ReadCoord");
298 MarkNativeAsOptional("BfRead.ReadVecCoord");
299 MarkNativeAsOptional("BfRead.ReadVecNormal");
300 MarkNativeAsOptional("BfRead.ReadAngles");
301 MarkNativeAsOptional("BfRead.GetNumBytesLeft");
302 MarkNativeAsOptional("PbReadInt");
303 MarkNativeAsOptional("PbReadFloat");
304 MarkNativeAsOptional("PbReadBool");
305 MarkNativeAsOptional("PbReadString");
306 MarkNativeAsOptional("PbReadColor");
307 MarkNativeAsOptional("PbReadAngle");
308 MarkNativeAsOptional("PbReadVector");
309 MarkNativeAsOptional("PbReadVector2D");
310 MarkNativeAsOptional("PbGetRepeatedFieldCount");
311 MarkNativeAsOptional("PbSetInt");
312 MarkNativeAsOptional("PbSetFloat");
313 MarkNativeAsOptional("PbSetBool");
314 MarkNativeAsOptional("PbSetString");
315 MarkNativeAsOptional("PbSetColor");
316 MarkNativeAsOptional("PbSetAngle");
317 MarkNativeAsOptional("PbSetVector");
318 MarkNativeAsOptional("PbSetVector2D");
319 MarkNativeAsOptional("PbAddInt");
320 MarkNativeAsOptional("PbAddFloat");
321 MarkNativeAsOptional("PbAddBool");
322 MarkNativeAsOptional("PbAddString");
323 MarkNativeAsOptional("PbAddColor");
324 MarkNativeAsOptional("PbAddAngle");
325 MarkNativeAsOptional("PbAddVector");
326 MarkNativeAsOptional("PbAddVector2D");
327 MarkNativeAsOptional("PbRemoveRepeatedFieldValue");
328 MarkNativeAsOptional("PbReadMessage");
329 MarkNativeAsOptional("PbReadRepeatedMessage");
330 MarkNativeAsOptional("PbAddMessage");
331 MarkNativeAsOptional("Protobuf.ReadInt");
332 MarkNativeAsOptional("Protobuf.ReadFloat");
333 MarkNativeAsOptional("Protobuf.ReadBool");
334 MarkNativeAsOptional("Protobuf.ReadString");
335 MarkNativeAsOptional("Protobuf.ReadColor");
336 MarkNativeAsOptional("Protobuf.ReadAngle");
337 MarkNativeAsOptional("Protobuf.ReadVector");
338 MarkNativeAsOptional("Protobuf.ReadVector2D");
339 MarkNativeAsOptional("Protobuf.GetRepeatedFieldCount");
340 MarkNativeAsOptional("Protobuf.SetInt");
341 MarkNativeAsOptional("Protobuf.SetFloat");
342 MarkNativeAsOptional("Protobuf.SetBool");
343 MarkNativeAsOptional("Protobuf.SetString");
344 MarkNativeAsOptional("Protobuf.SetColor");
345 MarkNativeAsOptional("Protobuf.SetAngle");
346 MarkNativeAsOptional("Protobuf.SetVector");
347 MarkNativeAsOptional("Protobuf.SetVector2D");
348 MarkNativeAsOptional("Protobuf.AddInt");
349 MarkNativeAsOptional("Protobuf.AddFloat");
350 MarkNativeAsOptional("Protobuf.AddBool");
351 MarkNativeAsOptional("Protobuf.AddString");
352 MarkNativeAsOptional("Protobuf.AddColor");
353 MarkNativeAsOptional("Protobuf.AddAngle");
354 MarkNativeAsOptional("Protobuf.AddVector");
355 MarkNativeAsOptional("Protobuf.AddVector2D");
356 MarkNativeAsOptional("Protobuf.RemoveRepeatedFieldValue");
357 MarkNativeAsOptional("Protobuf.ReadMessage");
358 MarkNativeAsOptional("Protobuf.ReadRepeatedMessage");
359 MarkNativeAsOptional("Protobuf.AddMessage");
360 VerifyCoreVersion();
361 return void:0;
362}
363
364public .2920.CharToUpper(chr)
365{
366 if (IsCharLower(chr))
367 {
368 return chr & -33;
369 }
370 return chr;
371}
372
373public .2920.CharToUpper(chr)
374{
375 if (IsCharLower(chr))
376 {
377 return chr & -33;
378 }
379 return chr;
380}
381
382public .3004.StrCat(String:buffer[], maxlength, String:source[])
383{
384 new len = strlen(buffer);
385 if (len >= maxlength)
386 {
387 return 0;
388 }
389 return Format(buffer[len], maxlength - len, "%s", source);
390}
391
392public .3004.StrCat(String:buffer[], maxlength, String:source[])
393{
394 new len = strlen(buffer);
395 if (len >= maxlength)
396 {
397 return 0;
398 }
399 return Format(buffer[len], maxlength - len, "%s", source);
400}
401
402public .3180.ExplodeString(String:text[], String:split[], String:buffers[][], maxStrings, maxStringLength, bool:copyRemainder)
403{
404 new reloc_idx;
405 new idx;
406 new total;
407 new var1;
408 if (maxStrings < 1 || !split[0])
409 {
410 return 0;
411 }
412 while ((idx = SplitString(text[reloc_idx], split, buffers[total], maxStringLength)) != -1)
413 {
414 reloc_idx = idx + reloc_idx;
415 total++;
416 if (maxStrings == total)
417 {
418 if (copyRemainder)
419 {
420 strcopy(buffers[total + -1], maxStringLength, text[reloc_idx - idx]);
421 }
422 return total;
423 }
424 }
425 total++;
426 strcopy(buffers[total], maxStringLength, text[reloc_idx]);
427 return total;
428}
429
430public .3180.ExplodeString(String:text[], String:split[], String:buffers[][], maxStrings, maxStringLength, bool:copyRemainder)
431{
432 new reloc_idx;
433 new idx;
434 new total;
435 new var1;
436 if (maxStrings < 1 || !split[0])
437 {
438 return 0;
439 }
440 while ((idx = SplitString(text[reloc_idx], split, buffers[total], maxStringLength)) != -1)
441 {
442 reloc_idx = idx + reloc_idx;
443 total++;
444 if (maxStrings == total)
445 {
446 if (copyRemainder)
447 {
448 strcopy(buffers[total + -1], maxStringLength, text[reloc_idx - idx]);
449 }
450 return total;
451 }
452 }
453 total++;
454 strcopy(buffers[total], maxStringLength, text[reloc_idx]);
455 return total;
456}
457
458public .3784.PrintToChatAll(String:format[])
459{
460 new String:buffer[256];
461 new i = 1;
462 while (i <= MaxClients)
463 {
464 if (IsClientInGame(i))
465 {
466 SetGlobalTransTarget(i);
467 VFormat(buffer, 254, format, 2);
468 PrintToChat(i, "%s", buffer);
469 }
470 i++;
471 }
472 return 0;
473}
474
475public .3784.PrintToChatAll(String:format[])
476{
477 new String:buffer[256];
478 new i = 1;
479 while (i <= MaxClients)
480 {
481 if (IsClientInGame(i))
482 {
483 SetGlobalTransTarget(i);
484 VFormat(buffer, 254, format, 2);
485 PrintToChat(i, "%s", buffer);
486 }
487 i++;
488 }
489 return 0;
490}
491
492public .4056.CanTestFeatures()
493{
494 return LibraryExists("__CanTestFeatures__");
495}
496
497public .4056.CanTestFeatures()
498{
499 return LibraryExists("__CanTestFeatures__");
500}
501
502public .4092.Find(String:szProp[])
503{
504 static iInfo;
505 static iIter;
506 static String:pClasses[41][0];
507 iIter = 0;
508 while (iIter < 41)
509 {
510 if (0 < (iInfo = FindSendPropInfo(pClasses[iIter], szProp, 0, 0, 0)))
511 {
512 return iInfo;
513 }
514 iIter += 1;
515 }
516 return 0;
517}
518
519public .4092.Find(String:szProp[])
520{
521 static iInfo;
522 static iIter;
523 static String:pClasses[41][0];
524 iIter = 0;
525 while (iIter < 41)
526 {
527 if (0 < (iInfo = FindSendPropInfo(pClasses[iIter], szProp, 0, 0, 0)))
528 {
529 return iInfo;
530 }
531 iIter += 1;
532 }
533 return 0;
534}
535
536public .4368.xSaveUserNameTagForWeapon(iUser, iWeapon, String:szNameTag[])
537{
538 static String:szName[32];
539 static String:szInfo[256];
540 if (!g_pNTCookies[iWeapon])
541 {
542 FormatEx(szName, 32, "m_szCustomName@%04d", iWeapon);
543 FormatEx(szInfo, 256, "Custom Name For Weapon Having m_iItemDefinitionIndex %d", iWeapon);
544 g_pNTCookies[iWeapon] = RegClientCookie(szName, szInfo, CookieAccess:2);
545 }
546 if (g_pNTCookies[iWeapon])
547 {
548 SetClientCookie(iUser, g_pNTCookies[iWeapon], szNameTag);
549 }
550 return 0;
551}
552
553public .4368.xSaveUserNameTagForWeapon(iUser, iWeapon, String:szNameTag[])
554{
555 static String:szName[32];
556 static String:szInfo[256];
557 if (!g_pNTCookies[iWeapon])
558 {
559 FormatEx(szName, 32, "m_szCustomName@%04d", iWeapon);
560 FormatEx(szInfo, 256, "Custom Name For Weapon Having m_iItemDefinitionIndex %d", iWeapon);
561 g_pNTCookies[iWeapon] = RegClientCookie(szName, szInfo, CookieAccess:2);
562 }
563 if (g_pNTCookies[iWeapon])
564 {
565 SetClientCookie(iUser, g_pNTCookies[iWeapon], szNameTag);
566 }
567 return 0;
568}
569
570public .4688.xGetUserNameTagForWeapon(iUser, iWeapon, String:szNameTag[])
571{
572 static String:szName[32];
573 static String:szInfo[256];
574 if (!g_pNTCookies[iWeapon])
575 {
576 FormatEx(szName, 32, "m_szCustomName@%04d", iWeapon);
577 FormatEx(szInfo, 256, "Custom Name For Weapon Having m_iItemDefinitionIndex %d", iWeapon);
578 g_pNTCookies[iWeapon] = RegClientCookie(szName, szInfo, CookieAccess:2);
579 }
580 if (g_pNTCookies[iWeapon])
581 {
582 GetClientCookie(iUser, g_pNTCookies[iWeapon], szNameTag, 32);
583 }
584 return 0;
585}
586
587public .4688.xGetUserNameTagForWeapon(iUser, iWeapon, String:szNameTag[])
588{
589 static String:szName[32];
590 static String:szInfo[256];
591 if (!g_pNTCookies[iWeapon])
592 {
593 FormatEx(szName, 32, "m_szCustomName@%04d", iWeapon);
594 FormatEx(szInfo, 256, "Custom Name For Weapon Having m_iItemDefinitionIndex %d", iWeapon);
595 g_pNTCookies[iWeapon] = RegClientCookie(szName, szInfo, CookieAccess:2);
596 }
597 if (g_pNTCookies[iWeapon])
598 {
599 GetClientCookie(iUser, g_pNTCookies[iWeapon], szNameTag, 32);
600 }
601 return 0;
602}
603
604public void:OnMySQLThreadedConnection(Handle:pOwner, Handle:pChild, String:Error[], any:Data)
605{
606 if (g_pDatabase)
607 {
608 if (pChild)
609 {
610 CloseHandle(pChild);
611 pChild = MissingTAG:0;
612 }
613 }
614 else
615 {
616 g_pDatabase = pChild;
617 new var1;
618 if (strlen(Error) < 1 && g_pDatabase)
619 {
620 SQL_SetCharset(g_pDatabase, "utf8");
621 SQL_TQuery(g_pDatabase, QueryHandler_Empty, "CREATE TABLE IF NOT EXISTS nf_players (Steam varchar(128) NOT NULL UNIQUE, Skins varchar(8192), Name varchar(128), lastSeen NUMERIC, Kills NUMERIC);", any:0, DBPriority:0);
622 }
623 }
624 return void:0;
625}
626
627public void:OnMapStart()
628{
629 CreateTimer(1.0, Timer_CreateFakeClient, any:0, 2);
630 g_fDelay = 0.0;
631 return void:0;
632}
633
634public Action:Timer_CreateFakeClient(Handle:pTimer, any:_Data)
635{
636 if (g_iFakeClient == -1)
637 {
638 g_iFakeClient = CreateFakeClient("BOT QSEEK.ORG 2.0");
639 }
640 return Action:0;
641}
642
643public void:OnMapEnd()
644{
645 if (g_iFakeClient != -1)
646 {
647 g_iFakeClient = -1;
648 }
649 g_bIsInRound = false;
650 g_fDelay = 0.0;
651 return void:0;
652}
653
654public Action:CS_OnTerminateRound(&Float:Delay, &CSRoundEndReason:Reason)
655{
656 static Owner;
657 g_bIsInRound = false;
658 Owner = 1;
659 while (Owner <= MaxClients)
660 {
661 new var1;
662 if (g_bIsInGame[Owner] && IsPlayerAlive(Owner))
663 {
664 CreateTimer(Delay - GetRandomFloat(0.2975, 0.3995), stripKnifeQuietly, Owner, 2);
665 }
666 Owner += 1;
667 }
668 return Action:0;
669}
670
671public Action:stripKnifeQuietly(Handle:pTimer, any:Owner)
672{
673 static String:Class[32];
674 static Tries;
675 static Entity;
676 new var1;
677 if (g_bIsInGame[Owner] && IsPlayerAlive(Owner))
678 {
679 Entity = -1;
680 Tries = 0;
681 while ((Entity = GetPlayerWeaponSlot(Owner, 2)) != -1)
682 {
683 new var3;
684 if (GetEdictClassname(Entity, Class, 32) && (StrContains(Class, "Knife", false) == -1 && StrContains(Class, "Bayonet", false) == -1))
685 {
686 if (RemovePlayerItem(Owner, Entity))
687 {
688 .83232.my_Remove(Entity);
689 }
690 }
691 Tries += 1;
692 if (Tries >= 4)
693 {
694 }
695 }
696 }
697 return Action:0;
698}
699
700public .6384.FClamp(Float:fVal, Float:fMin, Float:fMax)
701{
702 if (fVal < fMin)
703 {
704 return fMin;
705 }
706 if (fVal > fMax)
707 {
708 return fMax;
709 }
710 return fVal;
711}
712
713public .6384.FClamp(Float:fVal, Float:fMin, Float:fMax)
714{
715 if (fVal < fMin)
716 {
717 return fMin;
718 }
719 if (fVal > fMax)
720 {
721 return fMax;
722 }
723 return fVal;
724}
725
726public .6544.GetWear(iId)
727{
728 static String:szValue[8];
729 GetClientCookie(iId, g_pWear, szValue, 8);
730 return .6384.FClamp(StringToFloat(szValue), 5.0E-5, 8192.0);
731}
732
733public .6544.GetWear(iId)
734{
735 static String:szValue[8];
736 GetClientCookie(iId, g_pWear, szValue, 8);
737 return .6384.FClamp(StringToFloat(szValue), 5.0E-5, 8192.0);
738}
739
740public Action:OnWear(iClient, iArgs)
741{
742 new var1;
743 if (iClient < 1 || iClient > MaxClients || !IsClientInGame(iClient))
744 {
745 return Action:4;
746 }
747 new Float:fOldWear = .6544.GetWear(iClient);
748 if (iArgs < 1)
749 {
750 ReplyToCommand(iClient, "Current\x04 Wear %f", fOldWear);
751 ReplyToCommand(iClient, "Command Usage (Example)\x04 SM_Wear %f", GetRandomFloat(0.0, 1.0));
752 return Action:4;
753 }
754 new String:szArg[32];
755 GetCmdArg(1, szArg, 32);
756 new Float:fWear = .6384.FClamp(StringToFloat(szArg), 5.0E-5, 8192.0);
757 FloatToString(fWear, szArg, 32);
758 SetClientCookie(iClient, g_pWear, szArg);
759 ReplyToCommand(iClient, "Old\x04 Wear %f\x01 New\x04 Wear %f", fOldWear, StringToFloat(szArg));
760 if (IsPlayerAlive(iClient))
761 {
762 CreateTimer(GetRandomFloat(0.025, 0.1575), TimerHandler_DisplaySkinsMenu, iClient, 2);
763 }
764 return Action:4;
765}
766
767public Action:Timer_Ad(Handle:pTimer, any:_Data)
768{
769 .3784.PrintToChatAll("\x01 NEW COMMAND\x04 !WEAR\x05 %f\x01 (EXAMPLE)", GetRandomFloat(0.0, 1.0));
770 return Action:0;
771}
772
773public void:OnPluginStart()
774{
775 CreateTimer(10.0 * 60.0, Timer_Ad, any:0, 1);
776 SQL_TConnect(OnMySQLThreadedConnection, "new_features", any:0);
777 HookEventEx("round_start", OnRoundStart, EventHookMode:1);
778 HookEventEx("player_spawn", OnPlayerSpawn, EventHookMode:1);
779 HookEventEx("player_death", OnPlayerDeath, EventHookMode:1);
780 RegAdminCmd("sm_wear", OnWear, 0, "Sets Wear Value (Float) On Item", "", 0);
781 RegConsoleCmd("buyammo", CommandBuyAmmo, "", 0);
782 RegConsoleCmd("buyammo1", CommandBuyAmmo, "", 0);
783 RegConsoleCmd("buyammo2", CommandBuyAmmo, "", 0);
784 RegConsoleCmd("say", CommandSay, "", 0);
785 RegConsoleCmd("say_team", CommandSay, "", 0);
786 g_Offset = .4092.Find("m_szCustomName");
787 g_pKnifeCookie = RegClientCookie("KnifeType", "Stores the knifecc type.", CookieAccess:2);
788 g_pStatTrakOptionCookie = RegClientCookie("StatTrakTechOpt", "Stores the StatTrak(tm) technology option.", CookieAccess:2);
789 g_pKnifeSkinCookie = RegClientCookie("KnifeSkin", "Stores the knife skin.", CookieAccess:2);
790 g_pWear = RegClientCookie("Wear", "Stores The Wear Value", CookieAccess:2);
791 return void:0;
792}
793
794public void:OnRoundStart(Handle:pEvent, String:eventName[], bool:bNoBroadcast)
795{
796 g_bIsInRound = true;
797 return void:0;
798}
799
800public void:OnClientAuthorized(Client, String:Auth[])
801{
802 new var1;
803 if (!IsFakeClient(Client) && !IsClientSourceTV(Client))
804 {
805 FormatEx(g_Steam[Client], 32, Auth);
806 }
807 else
808 {
809 FormatEx(g_Steam[Client], 32, "BOT@%N", Client);
810 g_pStatTrakOption[Client] = 1;
811 g_bMessageShown[Client] = 1;
812 g_pKnife[Client] = -1;
813 g_pKnifeSkin[Client] = 0;
814 }
815 return void:0;
816}
817
818public void:OnClientPutInServer(Client)
819{
820 static Iterator;
821 g_bIsInGame[Client] = 1;
822 g_Kills[Client] = 0;
823 Iterator = 0;
824 while (Iterator < 768)
825 {
826 g_Skins[Client][Iterator] = 0;
827 Iterator += 1;
828 }
829 new var1;
830 if (IsFakeClient(Client) || IsClientSourceTV(Client) || StrContains("GOTV BOT HLTV SOURCETV SRCTV", g_Steam[Client], false) == -1)
831 {
832 FormatEx(g_Steam[Client], 32, "BOT@%N", Client);
833 g_pStatTrakOption[Client] = 1;
834 g_bMessageShown[Client] = 1;
835 g_pKnife[Client] = -1;
836 g_pKnifeSkin[Client] = 0;
837 }
838 else
839 {
840 SDKHookEx(Client, SDKHookType:32, OnWeaponEquip);
841 if (g_pDatabase)
842 {
843 FormatEx(g_Buffer, 4096, "SELECT Skins, Kills FROM nf_players WHERE Steam = '%s';", g_Steam[Client]);
844 SQL_TQuery(g_pDatabase, QueryHandler_SkinsReceived, g_Buffer, Client, DBPriority:0);
845 }
846 CreateTimer(0.1, loadSkins_Delayed, Client, 2);
847 }
848 return void:0;
849}
850
851public Action:CommandBuyAmmo(Client, Args)
852{
853 static theTime;
854 static lastTime[66];
855 new var1;
856 if (Client > 0 && g_bIsInGame[Client])
857 {
858 theTime = GetTime({0,0});
859 new var2;
860 if (lastTime[Client] < theTime && IsPlayerAlive(Client))
861 {
862 CreateTimer(GetRandomFloat(0.025, 0.1575), TimerHandler_DisplaySkinsMenu, Client, 2);
863 lastTime[Client] = theTime + 1;
864 }
865 }
866 return Action:0;
867}
868
869public Action:OnWeaponEquip(iClient, iEntity)
870{
871 static iPrevOwner = -1;
872 new var2;
873 if ((iPrevOwner = GetEntPropEnt(iEntity, PropType:0, "m_hPrevOwner", 0)) == -1 || (g_iFakeClient == iPrevOwner && g_iFakeClient != -1))
874 {
875 .15696.applyWeaponData(iClient, iEntity, GetEntProp(iEntity, PropType:0, "m_iItemDefinitionIndex", 4, 0), true);
876 }
877 return Action:0;
878}
879
880public .10436.SaveMe(Client)
881{
882 static Time;
883 static iStamp[66];
884 static Iterator;
885 static String:Item[32];
886 static bool:bShouldSave;
887 Time = GetTime({0,0});
888 new var1;
889 if (Time - iStamp[Client] < 3 || Time - g_SpawnTime[Client] < 1)
890 {
891 return 0;
892 }
893 iStamp[Client] = Time;
894 g_Buffer[0] = 0;
895 bShouldSave = false;
896 Iterator = 0;
897 while (Iterator < 768)
898 {
899 new var2;
900 if (!bShouldSave && g_Skins[Client][Iterator])
901 {
902 bShouldSave = true;
903 }
904 IntToString(g_Skins[Client][Iterator], Item, 32);
905 .3004.StrCat(g_Buffer, 4096, Item);
906 if (Iterator != 767)
907 {
908 .3004.StrCat(g_Buffer, 4096, ",");
909 }
910 Iterator += 1;
911 }
912 new var3;
913 if (bShouldSave && g_pDatabase)
914 {
915 Format(g_Buffer, 4096, "UPDATE nf_players SET Skins = '%s', lastSeen = %d WHERE Steam = '%s';", g_Buffer, GetTime({0,0}), g_Steam[Client]);
916 SQL_TQuery(g_pDatabase, QueryHandler_Empty, g_Buffer, any:0, DBPriority:2);
917 }
918 return 0;
919}
920
921public .10436.SaveMe(Client)
922{
923 static Time;
924 static iStamp[66];
925 static Iterator;
926 static String:Item[32];
927 static bool:bShouldSave;
928 Time = GetTime({0,0});
929 new var1;
930 if (Time - iStamp[Client] < 3 || Time - g_SpawnTime[Client] < 1)
931 {
932 return 0;
933 }
934 iStamp[Client] = Time;
935 g_Buffer[0] = 0;
936 bShouldSave = false;
937 Iterator = 0;
938 while (Iterator < 768)
939 {
940 new var2;
941 if (!bShouldSave && g_Skins[Client][Iterator])
942 {
943 bShouldSave = true;
944 }
945 IntToString(g_Skins[Client][Iterator], Item, 32);
946 .3004.StrCat(g_Buffer, 4096, Item);
947 if (Iterator != 767)
948 {
949 .3004.StrCat(g_Buffer, 4096, ",");
950 }
951 Iterator += 1;
952 }
953 new var3;
954 if (bShouldSave && g_pDatabase)
955 {
956 Format(g_Buffer, 4096, "UPDATE nf_players SET Skins = '%s', lastSeen = %d WHERE Steam = '%s';", g_Buffer, GetTime({0,0}), g_Steam[Client]);
957 SQL_TQuery(g_pDatabase, QueryHandler_Empty, g_Buffer, any:0, DBPriority:2);
958 }
959 return 0;
960}
961
962public void:OnClientDisconnect(Client)
963{
964 SDKUnhook(Client, SDKHookType:32, OnWeaponEquip);
965 g_bIsInGame[Client] = 0;
966 return void:0;
967}
968
969public Action:loadSkins_Delayed(Handle:pTimer, any:Client)
970{
971 new var1;
972 if (g_bIsInGame[Client] || IsClientInGame(Client) || IsClientConnected(Client))
973 {
974 if (g_pDatabase)
975 {
976 FormatEx(g_Buffer, 4096, "SELECT Skins, Kills FROM nf_players WHERE Steam = '%s';", g_Steam[Client]);
977 SQL_TQuery(g_pDatabase, QueryHandler_SkinsReceived, g_Buffer, Client, DBPriority:0);
978 }
979 CreateTimer(0.1, loadSkins_Delayed, Client, 2);
980 }
981 return Action:0;
982}
983
984public void:OnClientCookiesCached(Client)
985{
986 static String:Value[8];
987 new var1;
988 if (!IsFakeClient(Client) && !IsClientSourceTV(Client) && StrContains("GOTV BOT HLTV SOURCETV SRCTV", g_Steam[Client], false) == -1)
989 {
990 GetClientCookie(Client, g_pKnifeCookie, Value, 8);
991 if (strlen(Value))
992 {
993 g_pKnife[Client] = StringToInt(Value, 10);
994 }
995 else
996 {
997 g_pKnife[Client] = -1;
998 }
999 GetClientCookie(Client, g_pKnifeSkinCookie, Value, 8);
1000 if (strlen(Value))
1001 {
1002 g_pKnifeSkin[Client] = StringToInt(Value, 10);
1003 }
1004 else
1005 {
1006 g_pKnifeSkin[Client] = -2;
1007 }
1008 GetClientCookie(Client, g_pStatTrakOptionCookie, Value, 8);
1009 if (strlen(Value))
1010 {
1011 new var2;
1012 if (StringToInt(Value, 10) > 0)
1013 {
1014 var2 = StringToInt(Value, 10);
1015 }
1016 else
1017 {
1018 var2 = 0;
1019 }
1020 g_pStatTrakOption[Client] = var2;
1021 new var3;
1022 if (GetRandomInt(0, 2))
1023 {
1024 var3 = 1;
1025 }
1026 else
1027 {
1028 var3 = 0;
1029 }
1030 g_bMessageShown[Client] = var3;
1031 }
1032 else
1033 {
1034 g_pStatTrakOption[Client] = 0;
1035 g_bMessageShown[Client] = 0;
1036 }
1037 }
1038 else
1039 {
1040 g_pStatTrakOption[Client] = 1;
1041 g_bMessageShown[Client] = 1;
1042 g_pKnife[Client] = -1;
1043 g_pKnifeSkin[Client] = 0;
1044 }
1045 return void:0;
1046}
1047
1048public .13120.GetRandomKnifeSkin()
1049{
1050 static KnifeSkin:knifeIds[30] =
1051 {
1052 0, 38, 12, 232, 98, 44, 5, 40, 413, 77, 418, 419, 420, 421, 59, 42, 409, 415, 416, 417, 569, 570, 571, 572, 568, 43, 72, 143, 175, 414
1053 };
1054 return knifeIds[GetRandomInt(0, 29)];
1055}
1056
1057public .13120.GetRandomKnifeSkin()
1058{
1059 static KnifeSkin:knifeIds[30] =
1060 {
1061 0, 38, 12, 232, 98, 44, 5, 40, 413, 77, 418, 419, 420, 421, 59, 42, 409, 415, 416, 417, 569, 570, 571, 572, 568, 43, 72, 143, 175, 414
1062 };
1063 return knifeIds[GetRandomInt(0, 29)];
1064}
1065
1066public .13196.KnifeClassByOption(Owner, String:Class[], Size)
1067{
1068 switch (g_pKnife[Owner])
1069 {
1070 case -1, 0:
1071 {
1072 switch (GetClientTeam(Owner))
1073 {
1074 case 2:
1075 {
1076 FormatEx(Class, Size, "weapon_knife_t");
1077 }
1078 case 3:
1079 {
1080 FormatEx(Class, Size, "weapon_knife");
1081 }
1082 default:
1083 {
1084 }
1085 }
1086 }
1087 case 1:
1088 {
1089 FormatEx(Class, Size, "weapon_knife_karambit");
1090 }
1091 case 2:
1092 {
1093 FormatEx(Class, Size, "weapon_knife_butterfly");
1094 }
1095 case 3:
1096 {
1097 FormatEx(Class, Size, "weapon_knife_m9_bayonet");
1098 }
1099 case 4:
1100 {
1101 FormatEx(Class, Size, "weapon_bayonet");
1102 }
1103 case 5:
1104 {
1105 FormatEx(Class, Size, "weapon_knife_tactical");
1106 }
1107 case 6:
1108 {
1109 FormatEx(Class, Size, "weapon_knife_push");
1110 }
1111 case 7:
1112 {
1113 FormatEx(Class, Size, "weapon_knife_falchion");
1114 }
1115 case 8:
1116 {
1117 FormatEx(Class, Size, "weapon_knife_gut");
1118 }
1119 case 9:
1120 {
1121 FormatEx(Class, Size, "weapon_knife_flip");
1122 }
1123 case 10:
1124 {
1125 FormatEx(Class, Size, "weapon_knife_survival_bowie");
1126 }
1127 default:
1128 {
1129 }
1130 }
1131 return 0;
1132}
1133
1134public .13196.KnifeClassByOption(Owner, String:Class[], Size)
1135{
1136 switch (g_pKnife[Owner])
1137 {
1138 case -1, 0:
1139 {
1140 switch (GetClientTeam(Owner))
1141 {
1142 case 2:
1143 {
1144 FormatEx(Class, Size, "weapon_knife_t");
1145 }
1146 case 3:
1147 {
1148 FormatEx(Class, Size, "weapon_knife");
1149 }
1150 default:
1151 {
1152 }
1153 }
1154 }
1155 case 1:
1156 {
1157 FormatEx(Class, Size, "weapon_knife_karambit");
1158 }
1159 case 2:
1160 {
1161 FormatEx(Class, Size, "weapon_knife_butterfly");
1162 }
1163 case 3:
1164 {
1165 FormatEx(Class, Size, "weapon_knife_m9_bayonet");
1166 }
1167 case 4:
1168 {
1169 FormatEx(Class, Size, "weapon_bayonet");
1170 }
1171 case 5:
1172 {
1173 FormatEx(Class, Size, "weapon_knife_tactical");
1174 }
1175 case 6:
1176 {
1177 FormatEx(Class, Size, "weapon_knife_push");
1178 }
1179 case 7:
1180 {
1181 FormatEx(Class, Size, "weapon_knife_falchion");
1182 }
1183 case 8:
1184 {
1185 FormatEx(Class, Size, "weapon_knife_gut");
1186 }
1187 case 9:
1188 {
1189 FormatEx(Class, Size, "weapon_knife_flip");
1190 }
1191 case 10:
1192 {
1193 FormatEx(Class, Size, "weapon_knife_survival_bowie");
1194 }
1195 default:
1196 {
1197 }
1198 }
1199 return 0;
1200}
1201
1202public .13956.applyKnifeData(Owner, Entity, Id)
1203{
1204 new var1;
1205 if (Id >= 128 && g_pKnife[Owner] && g_pKnife[Owner] != Knife:-1)
1206 {
1207 SetEntProp(Entity, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1208 new var2;
1209 if (g_pKnifeSkin[Owner] && g_pKnifeSkin[Owner] == KnifeSkin:-2)
1210 {
1211 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", any:1, 4, 0);
1212 }
1213 else
1214 {
1215 new var3;
1216 if (g_pKnifeSkin[Owner] == KnifeSkin:-1)
1217 {
1218 var3 = .13120.GetRandomKnifeSkin();
1219 }
1220 else
1221 {
1222 var3 = g_pKnifeSkin[Owner];
1223 }
1224 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", var3, 4, 0);
1225 }
1226 new var4;
1227 if (g_pKnifeSkin[Owner] && g_pKnifeSkin[Owner] != KnifeSkin:-2)
1228 {
1229 SetEntPropFloat(Entity, PropType:0, "m_flFallbackWear", .6544.GetWear(Owner), 0);
1230 SetEntProp(Entity, PropType:0, "m_nFallbackSeed", GetRandomInt(0, 8192), 4, 0);
1231 }
1232 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1233 {
1234 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", g_Kills[Owner], 4, 0);
1235 }
1236 else
1237 {
1238 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", any:-1, 4, 0);
1239 }
1240 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:3, 4, 0);
1241 new var6;
1242 if (!.15428.xVIPAvail() || (.15428.xVIPAvail() && .15548.xIsVIP(Owner)))
1243 {
1244 .4688.xGetUserNameTagForWeapon(Owner, Id, g_Buffer);
1245 if (0 < strlen(g_Buffer))
1246 {
1247 SetEntDataString(Entity, g_Offset, g_Buffer, 256, false);
1248 }
1249 }
1250 SetEntProp(Entity, PropType:0, "m_iAccountID", GetEntProp(Entity, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1251 }
1252 return 0;
1253}
1254
1255public .13956.applyKnifeData(Owner, Entity, Id)
1256{
1257 new var1;
1258 if (Id >= 128 && g_pKnife[Owner] && g_pKnife[Owner] != Knife:-1)
1259 {
1260 SetEntProp(Entity, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1261 new var2;
1262 if (g_pKnifeSkin[Owner] && g_pKnifeSkin[Owner] == KnifeSkin:-2)
1263 {
1264 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", any:1, 4, 0);
1265 }
1266 else
1267 {
1268 new var3;
1269 if (g_pKnifeSkin[Owner] == KnifeSkin:-1)
1270 {
1271 var3 = .13120.GetRandomKnifeSkin();
1272 }
1273 else
1274 {
1275 var3 = g_pKnifeSkin[Owner];
1276 }
1277 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", var3, 4, 0);
1278 }
1279 new var4;
1280 if (g_pKnifeSkin[Owner] && g_pKnifeSkin[Owner] != KnifeSkin:-2)
1281 {
1282 SetEntPropFloat(Entity, PropType:0, "m_flFallbackWear", .6544.GetWear(Owner), 0);
1283 SetEntProp(Entity, PropType:0, "m_nFallbackSeed", GetRandomInt(0, 8192), 4, 0);
1284 }
1285 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1286 {
1287 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", g_Kills[Owner], 4, 0);
1288 }
1289 else
1290 {
1291 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", any:-1, 4, 0);
1292 }
1293 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:3, 4, 0);
1294 new var6;
1295 if (!.15428.xVIPAvail() || (.15428.xVIPAvail() && .15548.xIsVIP(Owner)))
1296 {
1297 .4688.xGetUserNameTagForWeapon(Owner, Id, g_Buffer);
1298 if (0 < strlen(g_Buffer))
1299 {
1300 SetEntDataString(Entity, g_Offset, g_Buffer, 256, false);
1301 }
1302 }
1303 SetEntProp(Entity, PropType:0, "m_iAccountID", GetEntProp(Entity, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1304 }
1305 return 0;
1306}
1307
1308public APLRes:AskPluginLoad2(Handle:pSelf, bool:bLate, String:szError[], iMaxErrSize)
1309{
1310 MarkNativeAsOptional("IsClientVIP");
1311 CreateNative("EquipKnife", __EquipKnife);
1312 RegPluginLibrary("new_features");
1313 return APLRes:0;
1314}
1315
1316public .15428.xVIPAvail()
1317{
1318 new var1;
1319 if (.4056.CanTestFeatures() && GetFeatureStatus(FeatureType:0, "IsClientVIP"))
1320 {
1321 var2 = 1;
1322 }
1323 else
1324 {
1325 var2 = 0;
1326 }
1327 return var2;
1328}
1329
1330public .15428.xVIPAvail()
1331{
1332 new var1;
1333 if (.4056.CanTestFeatures() && GetFeatureStatus(FeatureType:0, "IsClientVIP"))
1334 {
1335 var2 = 1;
1336 }
1337 else
1338 {
1339 var2 = 0;
1340 }
1341 return var2;
1342}
1343
1344public .15548.xIsVIP(iId)
1345{
1346 new var1;
1347 if (.4056.CanTestFeatures() && GetFeatureStatus(FeatureType:0, "IsClientVIP") && IsClientVIP(iId))
1348 {
1349 var2 = 1;
1350 }
1351 else
1352 {
1353 var2 = 0;
1354 }
1355 return var2;
1356}
1357
1358public .15548.xIsVIP(iId)
1359{
1360 new var1;
1361 if (.4056.CanTestFeatures() && GetFeatureStatus(FeatureType:0, "IsClientVIP") && IsClientVIP(iId))
1362 {
1363 var2 = 1;
1364 }
1365 else
1366 {
1367 var2 = 0;
1368 }
1369 return var2;
1370}
1371
1372public .15696.applyWeaponData(Owner, Entity, Id, bool:bByForward)
1373{
1374 static String:Class[32];
1375 new var1;
1376 if (GetEdictClassname(Entity, Class, 32) && g_Skins[Owner][Id] > 1 && StrContains(Class, "Bayonet", false) == -1 && StrContains(Class, "Knife", false) == -1)
1377 {
1378 if (bByForward)
1379 {
1380 if (RemovePlayerItem(Owner, Entity))
1381 {
1382 .83232.my_Remove(Entity);
1383 switch (Id)
1384 {
1385 case 60:
1386 {
1387 }
1388 case 61:
1389 {
1390 }
1391 case 63:
1392 {
1393 }
1394 case 64:
1395 {
1396 }
1397 default:
1398 {
1399 }
1400 }
1401 SDKUnhook(Owner, SDKHookType:32, OnWeaponEquip);
1402 Entity = GivePlayerItem(Owner, Class, 0);
1403 SDKHookEx(Owner, SDKHookType:32, OnWeaponEquip);
1404 }
1405 }
1406 if (Entity != -1)
1407 {
1408 SetEntProp(Entity, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1409 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", g_Skins[Owner][Id], 4, 0);
1410 SetEntPropFloat(Entity, PropType:0, "m_flFallbackWear", .6544.GetWear(Owner), 0);
1411 SetEntProp(Entity, PropType:0, "m_nFallbackSeed", GetRandomInt(0, 8192), 4, 0);
1412 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1413 {
1414 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", g_Kills[Owner], 4, 0);
1415 }
1416 else
1417 {
1418 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", any:-1, 4, 0);
1419 }
1420 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1421 {
1422 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:9, 4, 0);
1423 }
1424 else
1425 {
1426 if (!(GetEntProp(Entity, PropType:0, "m_iEntityQuality", 4, 0) == 12))
1427 {
1428 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:0, 4, 0);
1429 }
1430 }
1431 new var3;
1432 if (!.15428.xVIPAvail() || (.15428.xVIPAvail() && .15548.xIsVIP(Owner)))
1433 {
1434 .4688.xGetUserNameTagForWeapon(Owner, Id, g_Buffer);
1435 if (0 < strlen(g_Buffer))
1436 {
1437 SetEntDataString(Entity, g_Offset, g_Buffer, 256, false);
1438 }
1439 }
1440 SetEntProp(Entity, PropType:0, "m_iAccountID", GetEntProp(Entity, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1441 if (!bByForward)
1442 {
1443 .10436.SaveMe(Owner);
1444 }
1445 }
1446 }
1447 return 0;
1448}
1449
1450public .15696.applyWeaponData(Owner, Entity, Id, bool:bByForward)
1451{
1452 static String:Class[32];
1453 new var1;
1454 if (GetEdictClassname(Entity, Class, 32) && g_Skins[Owner][Id] > 1 && StrContains(Class, "Bayonet", false) == -1 && StrContains(Class, "Knife", false) == -1)
1455 {
1456 if (bByForward)
1457 {
1458 if (RemovePlayerItem(Owner, Entity))
1459 {
1460 .83232.my_Remove(Entity);
1461 switch (Id)
1462 {
1463 case 60:
1464 {
1465 }
1466 case 61:
1467 {
1468 }
1469 case 63:
1470 {
1471 }
1472 case 64:
1473 {
1474 }
1475 default:
1476 {
1477 }
1478 }
1479 SDKUnhook(Owner, SDKHookType:32, OnWeaponEquip);
1480 Entity = GivePlayerItem(Owner, Class, 0);
1481 SDKHookEx(Owner, SDKHookType:32, OnWeaponEquip);
1482 }
1483 }
1484 if (Entity != -1)
1485 {
1486 SetEntProp(Entity, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1487 SetEntProp(Entity, PropType:0, "m_nFallbackPaintKit", g_Skins[Owner][Id], 4, 0);
1488 SetEntPropFloat(Entity, PropType:0, "m_flFallbackWear", .6544.GetWear(Owner), 0);
1489 SetEntProp(Entity, PropType:0, "m_nFallbackSeed", GetRandomInt(0, 8192), 4, 0);
1490 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1491 {
1492 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", g_Kills[Owner], 4, 0);
1493 }
1494 else
1495 {
1496 SetEntProp(Entity, PropType:0, "m_nFallbackStatTrak", any:-1, 4, 0);
1497 }
1498 if (g_pStatTrakOption[Owner] == StatTrakOption:2)
1499 {
1500 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:9, 4, 0);
1501 }
1502 else
1503 {
1504 if (!(GetEntProp(Entity, PropType:0, "m_iEntityQuality", 4, 0) == 12))
1505 {
1506 SetEntProp(Entity, PropType:0, "m_iEntityQuality", any:0, 4, 0);
1507 }
1508 }
1509 new var3;
1510 if (!.15428.xVIPAvail() || (.15428.xVIPAvail() && .15548.xIsVIP(Owner)))
1511 {
1512 .4688.xGetUserNameTagForWeapon(Owner, Id, g_Buffer);
1513 if (0 < strlen(g_Buffer))
1514 {
1515 SetEntDataString(Entity, g_Offset, g_Buffer, 256, false);
1516 }
1517 }
1518 SetEntProp(Entity, PropType:0, "m_iAccountID", GetEntProp(Entity, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1519 if (!bByForward)
1520 {
1521 .10436.SaveMe(Owner);
1522 }
1523 }
1524 }
1525 return 0;
1526}
1527
1528public void:QueryHandler_Empty(Handle:pDb, Handle:pQuery, String:Error[], any:Data)
1529{
1530 return void:0;
1531}
1532
1533public Action:Timer_RetrieveKills(Handle:pTimer, any:_Data)
1534{
1535 new var1;
1536 if (IsClientInGame(_Data) && g_pDatabase)
1537 {
1538 FormatEx(g_Buffer, 4096, "SELECT kills FROM ss_players WHERE steam = '%s';", g_Steam[_Data]);
1539 SQL_TQuery(g_pDatabase, QueryHandler_KillsReceived, g_Buffer, _Data, DBPriority:0);
1540 }
1541 return Action:0;
1542}
1543
1544public void:QueryHandler_KillsReceived(Handle:pOwner, Handle:pQuery, String:Error[], any:Client)
1545{
1546 new var1;
1547 if (pQuery && strlen(Error) < 1 && SQL_GetRowCount(pQuery) > 0)
1548 {
1549 SQL_FetchRow(pQuery);
1550 g_Kills[Client] = SQL_FetchInt(pQuery, 0, 0);
1551 FormatEx(g_Buffer, 4096, "UPDATE nf_players SET Kills = %d WHERE Steam = '%s';", g_Kills[Client], g_Steam[Client]);
1552 SQL_TQuery(g_pDatabase, QueryHandler_Empty, g_Buffer, Client, DBPriority:2);
1553 }
1554 return void:0;
1555}
1556
1557public void:QueryHandler_SkinsReceived(Handle:pOwner, Handle:pQuery, String:Error[], any:Client)
1558{
1559 static Iterator;
1560 static String:Buffers[768][32];
1561 new var1;
1562 if (pQuery && strlen(Error) < 1)
1563 {
1564 if (0 < SQL_GetRowCount(pQuery))
1565 {
1566 SQL_FetchRow(pQuery);
1567 SQL_FetchString(pQuery, 0, g_Buffer, 4096, 0);
1568 g_Kills[Client] = SQL_FetchInt(pQuery, 1, 0);
1569 CreateTimer(0.1, Timer_RetrieveKills, Client, 2);
1570 if (strlen(g_Buffer))
1571 {
1572 Iterator = 0;
1573 while (Iterator < 768)
1574 {
1575 Buffers[Iterator][0] = MissingTAG:0;
1576 Iterator += 1;
1577 }
1578 .3180.ExplodeString(g_Buffer, ",", Buffers, 768, 32, false);
1579 Iterator = 0;
1580 while (Iterator < 768)
1581 {
1582 if (0 < strlen(Buffers[Iterator]))
1583 {
1584 g_Skins[Client][Iterator] = StringToInt(Buffers[Iterator], 10);
1585 }
1586 else
1587 {
1588 g_Skins[Client][Iterator] = 0;
1589 }
1590 Iterator += 1;
1591 }
1592 }
1593 else
1594 {
1595 Iterator = 0;
1596 while (Iterator < 768)
1597 {
1598 g_Skins[Client][Iterator] = 0;
1599 Iterator += 1;
1600 }
1601 }
1602 }
1603 g_Kills[Client] = 0;
1604 FormatEx(g_Buffer, 4096, "INSERT INTO nf_players VALUES ('%s', '', '', %d, 0);", g_Steam[Client], GetTime({0,0}));
1605 if (g_pDatabase)
1606 {
1607 SQL_TQuery(g_pDatabase, QueryHandler_Empty, g_Buffer, any:0, DBPriority:2);
1608 }
1609 Iterator = 0;
1610 while (Iterator < 768)
1611 {
1612 g_Skins[Client][Iterator] = 0;
1613 Iterator += 1;
1614 }
1615 }
1616 return void:0;
1617}
1618
1619public void:OnPlayerDeath(Handle:pEvent, String:eventName[], bool:bNoBroadcast)
1620{
1621 static Wpn;
1622 static Attacker;
1623 static Client;
1624 Client = GetClientOfUserId(GetEventInt(pEvent, "userid", 0));
1625 if (0 < Client)
1626 {
1627 new var3;
1628 if (GetRandomInt(1, 10) == 1 && (!.15428.xVIPAvail() || (.15428.xVIPAvail() && .15548.xIsVIP(Client))))
1629 {
1630 PrintToChat(Client, " \x05NEW VIP★\x05 COMMAND !NameTag");
1631 }
1632 Attacker = GetClientOfUserId(GetEventInt(pEvent, "attacker", 0));
1633 new var4;
1634 if (Attacker >= 1 && Attacker <= MaxClients && Client != Attacker && g_bIsInGame[Attacker] && StrContains("GOTV HLTV BOT SOURCETV SRCTV", g_Steam[Attacker], false) == -1)
1635 {
1636 g_Kills[Attacker]++;
1637 if (g_pDatabase)
1638 {
1639 FormatEx(g_Buffer, 4096, "UPDATE nf_players SET Kills = Kills + 1 WHERE Steam = '%s';", g_Steam[Attacker]);
1640 SQL_TQuery(g_pDatabase, QueryHandler_Empty, g_Buffer, any:0, DBPriority:1);
1641 }
1642 new var5;
1643 if (IsPlayerAlive(Attacker) && g_pStatTrakOption[Attacker] == StatTrakOption:2)
1644 {
1645 new var6;
1646 if ((Wpn = GetPlayerWeaponSlot(Attacker, 0)) != -1 && GetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", 4, 0) != -1)
1647 {
1648 SetEntProp(Wpn, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1649 SetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", g_Kills[Attacker], 4, 0);
1650 SetEntProp(Wpn, PropType:0, "m_iAccountID", GetEntProp(Wpn, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1651 }
1652 new var7;
1653 if ((Wpn = GetPlayerWeaponSlot(Attacker, 1)) != -1 && GetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", 4, 0) != -1)
1654 {
1655 SetEntProp(Wpn, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1656 SetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", g_Kills[Attacker], 4, 0);
1657 SetEntProp(Wpn, PropType:0, "m_iAccountID", GetEntProp(Wpn, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1658 }
1659 new var8;
1660 if ((Wpn = GetPlayerWeaponSlot(Attacker, 2)) != -1 && GetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", 4, 0) != -1)
1661 {
1662 SetEntProp(Wpn, PropType:0, "m_iItemIDLow", any:-1, 4, 0);
1663 SetEntProp(Wpn, PropType:0, "m_nFallbackStatTrak", g_Kills[Attacker], 4, 0);
1664 SetEntProp(Wpn, PropType:0, "m_iAccountID", GetEntProp(Wpn, PropType:0, "m_OriginalOwnerXuidLow", 4, 0), 4, 0);
1665 }
1666 }
1667 }
1668 new var9;
1669 if (!g_bMessageShown[Client] && GetRandomInt(0, 2) && g_bIsInGame[Client])
1670 {
1671 CreateTimer(GetRandomFloat(2.75, 4.25), TimerHandler_DisplayStatTrakDetails, Client, 2);
1672 }
1673 }
1674 return void:0;
1675}
1676
1677public void:OnPlayerSpawn(Handle:pEvent, String:eventName[], bool:bNoBroadcast)
1678{
1679 static iTeam;
1680 static Client;
1681 Client = GetClientOfUserId(GetEventInt(pEvent, "userid", 0));
1682 if (0 < Client)
1683 {
1684 new var2;
1685 if (g_bIsInGame[Client] && IsPlayerAlive(Client) && GetEntProp(Client, PropType:0, "m_iHealth", 4, 0) > 0 && ((iTeam = GetClientTeam(Client)) == 2 || iTeam == 3) && strncmp(g_Steam[Client], "BOT", 3, false))
1686 {
1687 g_SpawnTime[Client] = GetTime({0,0});
1688 if (!g_pStatTrakOption[Client])
1689 {
1690 CreateTimer(GetRandomFloat(2.0, 5.0), TimerHandler_DisplayStatTrakPanel, Client, 2);
1691 }
1692 new var3;
1693 if (g_pKnife[Client] != Knife:-1 && g_pKnife[Client])
1694 {
1695 CreateTimer(GetRandomFloat(0.1, 0.2), Timer_Replace, Client, 2);
1696 }
1697 }
1698 }
1699 return void:0;
1700}
1701
1702public Action:Timer_Replace(Handle:pTimer, any:_Data)
1703{
1704 new var1;
1705 if (g_pKnife[_Data] != Knife:-1 && g_pKnife[_Data])
1706 {
1707 .64812.replaceKnifeIfPossible(_Data, true);
1708 }
1709 return Action:0;
1710}
1711
1712public .23212.hCSGO_ClearLine(String:Line[], Times)
1713{
1714 static m_Length;
1715 static m_Iterator;
1716 m_Iterator = 0;
1717 m_Length = strlen(Line);
1718 while (m_Iterator < Times)
1719 {
1720 StripQuotes(Line);
1721 m_Length = TrimString(Line);
1722 m_Iterator += 1;
1723 }
1724 return m_Length;
1725}
1726
1727public .23212.hCSGO_ClearLine(String:Line[], Times)
1728{
1729 static m_Length;
1730 static m_Iterator;
1731 m_Iterator = 0;
1732 m_Length = strlen(Line);
1733 while (m_Iterator < Times)
1734 {
1735 StripQuotes(Line);
1736 m_Length = TrimString(Line);
1737 m_Iterator += 1;
1738 }
1739 return m_Length;
1740}
1741
1742
1743/* ERROR! null */
1744 function "CommandSay" (number 62)
1745public MenuHandler_Skins(Handle:pMenu, MenuAction:pAction, Client, Selection)
1746{
1747 static Id;
1748 static iInfo;
1749 static Weapon;
1750 static String:Info[32];
1751 static bool:bDefault;
1752 new var1;
1753 if (pAction == MenuAction:4 && g_bIsInGame[Client] && IsPlayerAlive(Client))
1754 {
1755 Weapon = GetEntPropEnt(Client, PropType:0, "m_hActiveWeapon", 0);
1756 if (Weapon != -1)
1757 {
1758 Id = GetEntProp(Weapon, PropType:0, "m_iItemDefinitionIndex", 4, 0);
1759 if (g_ItemDefinitionIndex[Client] != Id)
1760 {
1761 PrintToChat(Client, "* Have you\x07 switched\x01 the weapon\x01 yet?");
1762 }
1763 else
1764 {
1765 bDefault = false;
1766 GetMenuItem(pMenu, Selection, Info, 32, 0, "", 0);
1767 iInfo = StringToInt(Info, 10);
1768 switch (Id)
1769 {
1770 case 1:
1771 {
1772 if (iInfo >= 38)
1773 {
1774 bDefault = true;
1775 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1776 }
1777 else
1778 {
1779 g_Skins[Client][Id] = g_DEagleSkinIds[iInfo];
1780 PrintToChat(Client, "* You selected\x05 %s", g_DEagleSkins[iInfo]);
1781 }
1782 }
1783 case 2:
1784 {
1785 if (iInfo >= 32)
1786 {
1787 bDefault = true;
1788 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1789 }
1790 else
1791 {
1792 g_Skins[Client][Id] = g_DualBerettasSkinIds[iInfo];
1793 PrintToChat(Client, "* You selected\x05 %s", g_DualBerettasSkins[iInfo]);
1794 }
1795 }
1796 case 3:
1797 {
1798 if (iInfo >= 29)
1799 {
1800 bDefault = true;
1801 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1802 }
1803 else
1804 {
1805 g_Skins[Client][Id] = g_FiveSeveNSKinIds[iInfo];
1806 PrintToChat(Client, "* You selected\x05 %s", g_FiveSeveNSKins[iInfo]);
1807 }
1808 }
1809 case 4:
1810 {
1811 if (iInfo >= 35)
1812 {
1813 bDefault = true;
1814 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1815 }
1816 else
1817 {
1818 g_Skins[Client][Id] = g_Glock18SkinIds[iInfo];
1819 PrintToChat(Client, "* You selected\x05 %s", g_Glock18Skins[iInfo]);
1820 }
1821 }
1822 case 7:
1823 {
1824 if (iInfo >= 43)
1825 {
1826 bDefault = true;
1827 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1828 }
1829 else
1830 {
1831 g_Skins[Client][Id] = g_Ak47SkinIds[iInfo];
1832 PrintToChat(Client, "* You selected\x05 %s", g_Ak47Skins[iInfo]);
1833 }
1834 }
1835 case 8:
1836 {
1837 if (iInfo >= 31)
1838 {
1839 bDefault = true;
1840 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1841 }
1842 else
1843 {
1844 g_Skins[Client][Id] = g_AugSkinIds[iInfo];
1845 PrintToChat(Client, "* You selected\x05 %s", g_AugSkins[iInfo]);
1846 }
1847 }
1848 case 9:
1849 {
1850 if (iInfo >= 41)
1851 {
1852 bDefault = true;
1853 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1854 }
1855 else
1856 {
1857 g_Skins[Client][Id] = g_AwpSkinIds[iInfo];
1858 PrintToChat(Client, "* You selected\x05 %s", g_AwpSkins[iInfo]);
1859 }
1860 }
1861 case 10:
1862 {
1863 if (iInfo >= 37)
1864 {
1865 bDefault = true;
1866 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1867 }
1868 else
1869 {
1870 g_Skins[Client][Id] = g_FamasSkinIds[iInfo];
1871 PrintToChat(Client, "* You selected\x05 %s", g_FamasSkins[iInfo]);
1872 }
1873 }
1874 case 11:
1875 {
1876 if (iInfo >= 30)
1877 {
1878 bDefault = true;
1879 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1880 }
1881 else
1882 {
1883 g_Skins[Client][Id] = g_G3SG1SkinIds[iInfo];
1884 PrintToChat(Client, "* You selected\x05 %s", g_G3SG1Skins[iInfo]);
1885 }
1886 }
1887 case 13:
1888 {
1889 if (iInfo >= 38)
1890 {
1891 bDefault = true;
1892 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1893 }
1894 else
1895 {
1896 g_Skins[Client][Id] = g_GalilARSkinIds[iInfo];
1897 PrintToChat(Client, "* You selected\x05 %s", g_GalilARSkins[iInfo]);
1898 }
1899 }
1900 case 14:
1901 {
1902 if (iInfo >= 24)
1903 {
1904 bDefault = true;
1905 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1906 }
1907 else
1908 {
1909 g_Skins[Client][Id] = g_M249SkinIds[iInfo];
1910 PrintToChat(Client, "* You selected\x05 %s", g_M249Skins[iInfo]);
1911 }
1912 }
1913 case 16:
1914 {
1915 if (iInfo >= 42)
1916 {
1917 bDefault = true;
1918 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1919 }
1920 else
1921 {
1922 g_Skins[Client][Id] = g_M4A4SkinIds[iInfo];
1923 PrintToChat(Client, "* You selected\x05 %s", g_M4A4Skins[iInfo]);
1924 }
1925 }
1926 case 17:
1927 {
1928 if (iInfo >= 35)
1929 {
1930 bDefault = true;
1931 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1932 }
1933 else
1934 {
1935 g_Skins[Client][Id] = g_Mac10SkinIds[iInfo];
1936 PrintToChat(Client, "* You selected\x05 %s", g_Mac10Skins[iInfo]);
1937 }
1938 }
1939 case 19:
1940 {
1941 if (iInfo >= 40)
1942 {
1943 bDefault = true;
1944 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1945 }
1946 else
1947 {
1948 g_Skins[Client][Id] = g_P90SkinIds[iInfo];
1949 PrintToChat(Client, "* You selected\x05 %s", g_P90Skins[iInfo]);
1950 }
1951 }
1952 case 24:
1953 {
1954 if (iInfo >= 37)
1955 {
1956 bDefault = true;
1957 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1958 }
1959 else
1960 {
1961 g_Skins[Client][Id] = g_Ump45SkinIds[iInfo];
1962 PrintToChat(Client, "* You selected\x05 %s", g_Ump45Skins[iInfo]);
1963 }
1964 }
1965 case 25:
1966 {
1967 if (iInfo >= 34)
1968 {
1969 bDefault = true;
1970 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1971 }
1972 else
1973 {
1974 g_Skins[Client][Id] = g_XM1014SkinIds[iInfo];
1975 PrintToChat(Client, "* You selected\x05 %s", g_XM1014Skins[iInfo]);
1976 }
1977 }
1978 case 26:
1979 {
1980 if (iInfo >= 35)
1981 {
1982 bDefault = true;
1983 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1984 }
1985 else
1986 {
1987 g_Skins[Client][Id] = g_PPBizonSkinIds[iInfo];
1988 PrintToChat(Client, "* You selected\x05 %s", g_PPBizonSkins[iInfo]);
1989 }
1990 }
1991 case 27:
1992 {
1993 if (iInfo >= 32)
1994 {
1995 bDefault = true;
1996 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
1997 }
1998 else
1999 {
2000 g_Skins[Client][Id] = g_Mag7SkinIds[iInfo];
2001 PrintToChat(Client, "* You selected\x05 %s", g_Mag7Skins[iInfo]);
2002 }
2003 }
2004 case 28:
2005 {
2006 if (iInfo >= 30)
2007 {
2008 bDefault = true;
2009 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2010 }
2011 else
2012 {
2013 g_Skins[Client][Id] = g_NegevSkinIds[iInfo];
2014 PrintToChat(Client, "* You selected\x05 %s", g_NegevSkins[iInfo]);
2015 }
2016 }
2017 case 29:
2018 {
2019 if (iInfo >= 35)
2020 {
2021 bDefault = true;
2022 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2023 }
2024 else
2025 {
2026 g_Skins[Client][Id] = g_SawedOffSkinIds[iInfo];
2027 PrintToChat(Client, "* You selected\x05 %s", g_SawedOffSkins[iInfo]);
2028 }
2029 }
2030 case 30:
2031 {
2032 if (iInfo >= 34)
2033 {
2034 bDefault = true;
2035 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2036 }
2037 else
2038 {
2039 g_Skins[Client][Id] = g_Tec9SkinIds[iInfo];
2040 PrintToChat(Client, "* You selected\x05 %s", g_Tec9Skins[iInfo]);
2041 }
2042 }
2043 case 32:
2044 {
2045 if (iInfo >= 33)
2046 {
2047 bDefault = true;
2048 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2049 }
2050 else
2051 {
2052 g_Skins[Client][Id] = g_P2000SkinIds[iInfo];
2053 PrintToChat(Client, "* You selected\x05 %s", g_P2000Skins[iInfo]);
2054 }
2055 }
2056 case 33:
2057 {
2058 if (iInfo >= 32)
2059 {
2060 bDefault = true;
2061 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2062 }
2063 else
2064 {
2065 g_Skins[Client][Id] = g_Mp7SkinIds[iInfo];
2066 PrintToChat(Client, "* You selected\x05 %s", g_Mp7Skins[iInfo]);
2067 }
2068 }
2069 case 34:
2070 {
2071 if (iInfo >= 37)
2072 {
2073 bDefault = true;
2074 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2075 }
2076 else
2077 {
2078 g_Skins[Client][Id] = g_Mp9SkinIds[iInfo];
2079 PrintToChat(Client, "* You selected\x05 %s", g_Mp9Skins[iInfo]);
2080 }
2081 }
2082 case 35:
2083 {
2084 if (iInfo >= 35)
2085 {
2086 bDefault = true;
2087 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2088 }
2089 else
2090 {
2091 g_Skins[Client][Id] = g_NovaSkinIds[iInfo];
2092 PrintToChat(Client, "* You selected\x05 %s", g_NovaSkins[iInfo]);
2093 }
2094 }
2095 case 36:
2096 {
2097 if (iInfo >= 34)
2098 {
2099 bDefault = true;
2100 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2101 }
2102 else
2103 {
2104 g_Skins[Client][Id] = g_P250SkinIds[iInfo];
2105 PrintToChat(Client, "* You selected\x05 %s", g_P250Skins[iInfo]);
2106 }
2107 }
2108 case 38:
2109 {
2110 if (iInfo >= 31)
2111 {
2112 bDefault = true;
2113 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2114 }
2115 else
2116 {
2117 g_Skins[Client][Id] = g_Scar20SkinIds[iInfo];
2118 PrintToChat(Client, "* You selected\x05 %s", g_Scar20Skins[iInfo]);
2119 }
2120 }
2121 case 39:
2122 {
2123 if (iInfo >= 32)
2124 {
2125 bDefault = true;
2126 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2127 }
2128 else
2129 {
2130 g_Skins[Client][Id] = g_SG553SkinIds[iInfo];
2131 PrintToChat(Client, "* You selected\x05 %s", g_SG553Skins[iInfo]);
2132 }
2133 }
2134 case 40:
2135 {
2136 if (iInfo >= 32)
2137 {
2138 bDefault = true;
2139 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2140 }
2141 else
2142 {
2143 g_Skins[Client][Id] = g_SSG08SkinIds[iInfo];
2144 PrintToChat(Client, "* You selected\x05 %s", g_SSG08Skins[iInfo]);
2145 }
2146 }
2147 case 60:
2148 {
2149 if (iInfo >= 38)
2150 {
2151 bDefault = true;
2152 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2153 }
2154 else
2155 {
2156 g_Skins[Client][Id] = g_M4A1SkinIds[iInfo];
2157 PrintToChat(Client, "* You selected\x05 %s", g_M4A1Skins[iInfo]);
2158 }
2159 }
2160 case 61:
2161 {
2162 if (iInfo >= 39)
2163 {
2164 bDefault = true;
2165 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2166 }
2167 else
2168 {
2169 g_Skins[Client][Id] = g_UspSkinIds[iInfo];
2170 PrintToChat(Client, "* You selected\x05 %s", g_UspSkins[iInfo]);
2171 }
2172 }
2173 case 63:
2174 {
2175 if (iInfo >= 36)
2176 {
2177 bDefault = true;
2178 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2179 }
2180 else
2181 {
2182 g_Skins[Client][Id] = g_CZ75AutoSkinIds[iInfo];
2183 PrintToChat(Client, "* You selected\x05 %s", g_CZ75AutoSkins[iInfo]);
2184 }
2185 }
2186 case 64:
2187 {
2188 if (iInfo >= 25)
2189 {
2190 bDefault = true;
2191 PrintToChat(Client, "*\x07 Invalid\x01 selection!");
2192 }
2193 else
2194 {
2195 g_Skins[Client][Id] = g_RevolverSkinIds[iInfo];
2196 PrintToChat(Client, "* You selected\x05 %s", g_RevolverSkins[iInfo]);
2197 }
2198 }
2199 default:
2200 {
2201 PrintToChat(Client, "* You selected Default");
2202 bDefault = true;
2203 }
2204 }
2205 new var2;
2206 if (!bDefault && g_bIsInRound)
2207 {
2208 switch (Id)
2209 {
2210 case 1:
2211 {
2212 if (RemovePlayerItem(Client, Weapon))
2213 {
2214 .83232.my_Remove(Weapon);
2215 if ((Weapon = GivePlayerItem(Client, "weapon_deagle", 0)) != -1)
2216 {
2217 .15696.applyWeaponData(Client, Weapon, Id, false);
2218 }
2219 }
2220 }
2221 case 2:
2222 {
2223 if (RemovePlayerItem(Client, Weapon))
2224 {
2225 .83232.my_Remove(Weapon);
2226 if ((Weapon = GivePlayerItem(Client, "weapon_elite", 0)) != -1)
2227 {
2228 .15696.applyWeaponData(Client, Weapon, Id, false);
2229 }
2230 }
2231 }
2232 case 3:
2233 {
2234 if (RemovePlayerItem(Client, Weapon))
2235 {
2236 .83232.my_Remove(Weapon);
2237 if ((Weapon = GivePlayerItem(Client, "weapon_fiveseven", 0)) != -1)
2238 {
2239 .15696.applyWeaponData(Client, Weapon, Id, false);
2240 }
2241 }
2242 }
2243 case 4:
2244 {
2245 if (RemovePlayerItem(Client, Weapon))
2246 {
2247 .83232.my_Remove(Weapon);
2248 if ((Weapon = GivePlayerItem(Client, "weapon_glock", 0)) != -1)
2249 {
2250 .15696.applyWeaponData(Client, Weapon, Id, false);
2251 }
2252 }
2253 }
2254 case 7:
2255 {
2256 if (RemovePlayerItem(Client, Weapon))
2257 {
2258 .83232.my_Remove(Weapon);
2259 if ((Weapon = GivePlayerItem(Client, "weapon_ak47", 0)) != -1)
2260 {
2261 .15696.applyWeaponData(Client, Weapon, Id, false);
2262 }
2263 }
2264 }
2265 case 8:
2266 {
2267 if (RemovePlayerItem(Client, Weapon))
2268 {
2269 .83232.my_Remove(Weapon);
2270 if ((Weapon = GivePlayerItem(Client, "weapon_aug", 0)) != -1)
2271 {
2272 .15696.applyWeaponData(Client, Weapon, Id, false);
2273 }
2274 }
2275 }
2276 case 9:
2277 {
2278 if (RemovePlayerItem(Client, Weapon))
2279 {
2280 .83232.my_Remove(Weapon);
2281 if ((Weapon = GivePlayerItem(Client, "weapon_awp", 0)) != -1)
2282 {
2283 .15696.applyWeaponData(Client, Weapon, Id, false);
2284 }
2285 }
2286 }
2287 case 10:
2288 {
2289 if (RemovePlayerItem(Client, Weapon))
2290 {
2291 .83232.my_Remove(Weapon);
2292 if ((Weapon = GivePlayerItem(Client, "weapon_famas", 0)) != -1)
2293 {
2294 .15696.applyWeaponData(Client, Weapon, Id, false);
2295 }
2296 }
2297 }
2298 case 11:
2299 {
2300 if (RemovePlayerItem(Client, Weapon))
2301 {
2302 .83232.my_Remove(Weapon);
2303 if ((Weapon = GivePlayerItem(Client, "weapon_g3sg1", 0)) != -1)
2304 {
2305 .15696.applyWeaponData(Client, Weapon, Id, false);
2306 }
2307 }
2308 }
2309 case 13:
2310 {
2311 if (RemovePlayerItem(Client, Weapon))
2312 {
2313 .83232.my_Remove(Weapon);
2314 if ((Weapon = GivePlayerItem(Client, "weapon_galilar", 0)) != -1)
2315 {
2316 .15696.applyWeaponData(Client, Weapon, Id, false);
2317 }
2318 }
2319 }
2320 case 14:
2321 {
2322 if (RemovePlayerItem(Client, Weapon))
2323 {
2324 .83232.my_Remove(Weapon);
2325 if ((Weapon = GivePlayerItem(Client, "weapon_m249", 0)) != -1)
2326 {
2327 .15696.applyWeaponData(Client, Weapon, Id, false);
2328 }
2329 }
2330 }
2331 case 16:
2332 {
2333 if (RemovePlayerItem(Client, Weapon))
2334 {
2335 .83232.my_Remove(Weapon);
2336 if ((Weapon = GivePlayerItem(Client, "weapon_m4a1", 0)) != -1)
2337 {
2338 .15696.applyWeaponData(Client, Weapon, Id, false);
2339 }
2340 }
2341 }
2342 case 17:
2343 {
2344 if (RemovePlayerItem(Client, Weapon))
2345 {
2346 .83232.my_Remove(Weapon);
2347 if ((Weapon = GivePlayerItem(Client, "weapon_mac10", 0)) != -1)
2348 {
2349 .15696.applyWeaponData(Client, Weapon, Id, false);
2350 }
2351 }
2352 }
2353 case 19:
2354 {
2355 if (RemovePlayerItem(Client, Weapon))
2356 {
2357 .83232.my_Remove(Weapon);
2358 if ((Weapon = GivePlayerItem(Client, "weapon_p90", 0)) != -1)
2359 {
2360 .15696.applyWeaponData(Client, Weapon, Id, false);
2361 }
2362 }
2363 }
2364 case 24:
2365 {
2366 if (RemovePlayerItem(Client, Weapon))
2367 {
2368 .83232.my_Remove(Weapon);
2369 if ((Weapon = GivePlayerItem(Client, "weapon_ump45", 0)) != -1)
2370 {
2371 .15696.applyWeaponData(Client, Weapon, Id, false);
2372 }
2373 }
2374 }
2375 case 25:
2376 {
2377 if (RemovePlayerItem(Client, Weapon))
2378 {
2379 .83232.my_Remove(Weapon);
2380 if ((Weapon = GivePlayerItem(Client, "weapon_xm1014", 0)) != -1)
2381 {
2382 .15696.applyWeaponData(Client, Weapon, Id, false);
2383 }
2384 }
2385 }
2386 case 26:
2387 {
2388 if (RemovePlayerItem(Client, Weapon))
2389 {
2390 .83232.my_Remove(Weapon);
2391 if ((Weapon = GivePlayerItem(Client, "weapon_bizon", 0)) != -1)
2392 {
2393 .15696.applyWeaponData(Client, Weapon, Id, false);
2394 }
2395 }
2396 }
2397 case 27:
2398 {
2399 if (RemovePlayerItem(Client, Weapon))
2400 {
2401 .83232.my_Remove(Weapon);
2402 if ((Weapon = GivePlayerItem(Client, "weapon_mag7", 0)) != -1)
2403 {
2404 .15696.applyWeaponData(Client, Weapon, Id, false);
2405 }
2406 }
2407 }
2408 case 28:
2409 {
2410 if (RemovePlayerItem(Client, Weapon))
2411 {
2412 .83232.my_Remove(Weapon);
2413 if ((Weapon = GivePlayerItem(Client, "weapon_negev", 0)) != -1)
2414 {
2415 .15696.applyWeaponData(Client, Weapon, Id, false);
2416 }
2417 }
2418 }
2419 case 29:
2420 {
2421 if (RemovePlayerItem(Client, Weapon))
2422 {
2423 .83232.my_Remove(Weapon);
2424 if ((Weapon = GivePlayerItem(Client, "weapon_sawedoff", 0)) != -1)
2425 {
2426 .15696.applyWeaponData(Client, Weapon, Id, false);
2427 }
2428 }
2429 }
2430 case 30:
2431 {
2432 if (RemovePlayerItem(Client, Weapon))
2433 {
2434 .83232.my_Remove(Weapon);
2435 if ((Weapon = GivePlayerItem(Client, "weapon_tec9", 0)) != -1)
2436 {
2437 .15696.applyWeaponData(Client, Weapon, Id, false);
2438 }
2439 }
2440 }
2441 case 32:
2442 {
2443 if (RemovePlayerItem(Client, Weapon))
2444 {
2445 .83232.my_Remove(Weapon);
2446 if ((Weapon = GivePlayerItem(Client, "weapon_hkp2000", 0)) != -1)
2447 {
2448 .15696.applyWeaponData(Client, Weapon, Id, false);
2449 }
2450 }
2451 }
2452 case 33:
2453 {
2454 if (RemovePlayerItem(Client, Weapon))
2455 {
2456 .83232.my_Remove(Weapon);
2457 if ((Weapon = GivePlayerItem(Client, "weapon_mp7", 0)) != -1)
2458 {
2459 .15696.applyWeaponData(Client, Weapon, Id, false);
2460 }
2461 }
2462 }
2463 case 34:
2464 {
2465 if (RemovePlayerItem(Client, Weapon))
2466 {
2467 .83232.my_Remove(Weapon);
2468 if ((Weapon = GivePlayerItem(Client, "weapon_mp9", 0)) != -1)
2469 {
2470 .15696.applyWeaponData(Client, Weapon, Id, false);
2471 }
2472 }
2473 }
2474 case 35:
2475 {
2476 if (RemovePlayerItem(Client, Weapon))
2477 {
2478 .83232.my_Remove(Weapon);
2479 if ((Weapon = GivePlayerItem(Client, "weapon_nova", 0)) != -1)
2480 {
2481 .15696.applyWeaponData(Client, Weapon, Id, false);
2482 }
2483 }
2484 }
2485 case 36:
2486 {
2487 if (RemovePlayerItem(Client, Weapon))
2488 {
2489 .83232.my_Remove(Weapon);
2490 if ((Weapon = GivePlayerItem(Client, "weapon_p250", 0)) != -1)
2491 {
2492 .15696.applyWeaponData(Client, Weapon, Id, false);
2493 }
2494 }
2495 }
2496 case 38:
2497 {
2498 if (RemovePlayerItem(Client, Weapon))
2499 {
2500 .83232.my_Remove(Weapon);
2501 if ((Weapon = GivePlayerItem(Client, "weapon_scar20", 0)) != -1)
2502 {
2503 .15696.applyWeaponData(Client, Weapon, Id, false);
2504 }
2505 }
2506 }
2507 case 39:
2508 {
2509 if (RemovePlayerItem(Client, Weapon))
2510 {
2511 .83232.my_Remove(Weapon);
2512 if ((Weapon = GivePlayerItem(Client, "weapon_sg556", 0)) != -1)
2513 {
2514 .15696.applyWeaponData(Client, Weapon, Id, false);
2515 }
2516 }
2517 }
2518 case 40:
2519 {
2520 if (RemovePlayerItem(Client, Weapon))
2521 {
2522 .83232.my_Remove(Weapon);
2523 if ((Weapon = GivePlayerItem(Client, "weapon_ssg08", 0)) != -1)
2524 {
2525 .15696.applyWeaponData(Client, Weapon, Id, false);
2526 }
2527 }
2528 }
2529 case 60:
2530 {
2531 if (RemovePlayerItem(Client, Weapon))
2532 {
2533 .83232.my_Remove(Weapon);
2534 if ((Weapon = GivePlayerItem(Client, "weapon_m4a1_silencer", 0)) != -1)
2535 {
2536 .15696.applyWeaponData(Client, Weapon, Id, false);
2537 }
2538 }
2539 }
2540 case 61:
2541 {
2542 if (RemovePlayerItem(Client, Weapon))
2543 {
2544 .83232.my_Remove(Weapon);
2545 if ((Weapon = GivePlayerItem(Client, "weapon_usp_silencer", 0)) != -1)
2546 {
2547 .15696.applyWeaponData(Client, Weapon, Id, false);
2548 }
2549 }
2550 }
2551 case 63:
2552 {
2553 if (RemovePlayerItem(Client, Weapon))
2554 {
2555 .83232.my_Remove(Weapon);
2556 if ((Weapon = GivePlayerItem(Client, "weapon_cz75a", 0)) != -1)
2557 {
2558 .15696.applyWeaponData(Client, Weapon, Id, false);
2559 }
2560 }
2561 }
2562 case 64:
2563 {
2564 if (RemovePlayerItem(Client, Weapon))
2565 {
2566 .83232.my_Remove(Weapon);
2567 if ((Weapon = GivePlayerItem(Client, "weapon_revolver", 0)) != -1)
2568 {
2569 .15696.applyWeaponData(Client, Weapon, Id, false);
2570 }
2571 }
2572 }
2573 default:
2574 {
2575 }
2576 }
2577 }
2578 }
2579 }
2580 else
2581 {
2582 PrintToChat(Client, "* You must have an\x05 Active Weapon");
2583 }
2584 }
2585 else
2586 {
2587 new var3;
2588 if (pAction == MenuAction:16 && pMenu)
2589 {
2590 CloseHandle(pMenu);
2591 pMenu = MissingTAG:0;
2592 }
2593 }
2594 return 0;
2595}
2596
2597public PanelHandler_StatTrakTech(Handle:pPanel, MenuAction:pAction, Client, Selection)
2598{
2599 new var1;
2600 if (pAction == MenuAction:4 && g_bIsInGame[Client])
2601 {
2602 switch (Selection)
2603 {
2604 case 1:
2605 {
2606 g_bMessageShown[Client] = 1;
2607 g_pStatTrakOption[Client] = 2;
2608 SetClientCookie(Client, g_pStatTrakOptionCookie, "2");
2609 PrintToChat(Client, ">>\x04 StatTrakâ„¢\x01 Technology\x05 ENABLED");
2610 }
2611 case 2:
2612 {
2613 g_bMessageShown[Client] = 1;
2614 g_pStatTrakOption[Client] = 1;
2615 SetClientCookie(Client, g_pStatTrakOptionCookie, "1");
2616 PrintToChat(Client, ">>\x04 StatTrakâ„¢\x01 Technology\x07 DISABLED");
2617 }
2618 default:
2619 {
2620 }
2621 }
2622 }
2623 else
2624 {
2625 new var2;
2626 if (pAction == MenuAction:16 && pPanel)
2627 {
2628 CloseHandle(pPanel);
2629 pPanel = MissingTAG:0;
2630 }
2631 }
2632 return 0;
2633}
2634
2635public Action:TimerHandler_DisplayStatTrakPanel(Handle:pTimer, any:Client)
2636{
2637 static Handle:pPanel;
2638 new var1;
2639 if (g_bIsInGame[Client] && g_pStatTrakOption[Client])
2640 {
2641 pPanel = CreatePanel(Handle:0);
2642 if (pPanel)
2643 {
2644 SetPanelTitle(pPanel, "Use StatTrakâ„¢ Technology?", false);
2645 SetPanelKeys(pPanel, 3);
2646 DrawPanelText(pPanel, "");
2647 DrawPanelText(pPanel, "1. Yes");
2648 DrawPanelText(pPanel, "2. No");
2649 new var2;
2650 if (!IsFakeClient(Client) && !IsClientSourceTV(Client))
2651 {
2652 SendPanelToClient(pPanel, Client, PanelHandler_StatTrakTech, 0);
2653 }
2654 CloseHandle(pPanel);
2655 pPanel = MissingTAG:0;
2656 }
2657 }
2658 return Action:0;
2659}
2660
2661public Action:TimerHandler_DisplayKnivesMenu(Handle:pTimer, any:Client)
2662{
2663 static Handle:pMenu;
2664 new var1;
2665 if (g_bIsInGame[Client] && !IsFakeClient(Client) && !IsClientSourceTV(Client))
2666 {
2667 pMenu = CreateMenu(MenuHandler_Knives, MenuAction:28);
2668 if (pMenu)
2669 {
2670 SetMenuTitle(pMenu, "★ KNIVES MENU ★");
2671 AddMenuItem(pMenu, "1", "Default (NO CHANGE)", 0);
2672 AddMenuItem(pMenu, "2", "★ Bowie (SURViVAL)", 0);
2673 AddMenuItem(pMenu, "3", "★ Shadow Daggers (PUSH)", 0);
2674 AddMenuItem(pMenu, "4", "★ M9 Bayonet", 0);
2675 AddMenuItem(pMenu, "5", "★ Karambit", 0);
2676 AddMenuItem(pMenu, "6", "★ Bayonet", 0);
2677 AddMenuItem(pMenu, "7", "★ Huntsman (TACTiCAL)", 0);
2678 AddMenuItem(pMenu, "8", "★ Butterfly", 0);
2679 AddMenuItem(pMenu, "9", "★ Gut", 0);
2680 AddMenuItem(pMenu, "10", "★ Flip", 0);
2681 AddMenuItem(pMenu, "11", "★ Falchion", 0);
2682 DisplayMenu(pMenu, Client, 0);
2683 }
2684 }
2685 return Action:0;
2686}
2687
2688public MenuHandler_KnifeSkins(Handle:pMenu, MenuAction:pAction, Client, Skin)
2689{
2690 static String:Info[4];
2691 static String:Option[4];
2692 new var1;
2693 if (pAction == MenuAction:4 && g_bIsInGame[Client])
2694 {
2695 GetMenuItem(pMenu, Skin, Info, 4, 0, "", 0);
2696 switch (StringToInt(Info, 10))
2697 {
2698 case -1:
2699 {
2700 g_pKnifeSkin[Client] = -1;
2701 IntToString(-1, Option, 4);
2702 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2703 PrintToChat(Client, "* You selected\x05 » RANDOM «");
2704 .64812.replaceKnifeIfPossible(Client, false);
2705 }
2706 case 0:
2707 {
2708 g_pKnifeSkin[Client] = 0;
2709 IntToString(0, Option, 4);
2710 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2711 PrintToChat(Client, "* You selected » DEFAULT «");
2712 .64812.replaceKnifeIfPossible(Client, false);
2713 }
2714 case 5:
2715 {
2716 g_pKnifeSkin[Client] = 5;
2717 IntToString(5, Option, 4);
2718 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2719 PrintToChat(Client, "* You selected\x07 Forest DDPAT");
2720 .64812.replaceKnifeIfPossible(Client, false);
2721 }
2722 case 12:
2723 {
2724 g_pKnifeSkin[Client] = 12;
2725 IntToString(12, Option, 4);
2726 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2727 PrintToChat(Client, "* You selected\x07 Crimson Web");
2728 .64812.replaceKnifeIfPossible(Client, false);
2729 }
2730 case 38:
2731 {
2732 g_pKnifeSkin[Client] = 38;
2733 IntToString(38, Option, 4);
2734 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2735 PrintToChat(Client, "* You selected\x07 Fade");
2736 .64812.replaceKnifeIfPossible(Client, false);
2737 }
2738 case 40:
2739 {
2740 g_pKnifeSkin[Client] = 40;
2741 IntToString(40, Option, 4);
2742 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2743 PrintToChat(Client, "* You selected\x07 Night");
2744 .64812.replaceKnifeIfPossible(Client, false);
2745 }
2746 case 42:
2747 {
2748 g_pKnifeSkin[Client] = 42;
2749 IntToString(42, Option, 4);
2750 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2751 PrintToChat(Client, "* You selected\x07 Blue Steel");
2752 .64812.replaceKnifeIfPossible(Client, false);
2753 }
2754 case 43:
2755 {
2756 g_pKnifeSkin[Client] = 43;
2757 IntToString(43, Option, 4);
2758 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2759 PrintToChat(Client, "* You selected\x07 Stained");
2760 .64812.replaceKnifeIfPossible(Client, false);
2761 }
2762 case 44:
2763 {
2764 g_pKnifeSkin[Client] = 44;
2765 IntToString(44, Option, 4);
2766 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2767 PrintToChat(Client, "* You selected\x07 Case Hardened");
2768 .64812.replaceKnifeIfPossible(Client, false);
2769 }
2770 case 59:
2771 {
2772 g_pKnifeSkin[Client] = 59;
2773 IntToString(59, Option, 4);
2774 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2775 PrintToChat(Client, "* You selected\x07 Slaughter");
2776 .64812.replaceKnifeIfPossible(Client, false);
2777 }
2778 case 72:
2779 {
2780 g_pKnifeSkin[Client] = 72;
2781 IntToString(72, Option, 4);
2782 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2783 PrintToChat(Client, "* You selected\x07 Safari Mesh");
2784 .64812.replaceKnifeIfPossible(Client, false);
2785 }
2786 case 77:
2787 {
2788 g_pKnifeSkin[Client] = 77;
2789 IntToString(77, Option, 4);
2790 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2791 PrintToChat(Client, "* You selected\x07 Boreal Forest");
2792 .64812.replaceKnifeIfPossible(Client, false);
2793 }
2794 case 98:
2795 {
2796 g_pKnifeSkin[Client] = 98;
2797 IntToString(98, Option, 4);
2798 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2799 PrintToChat(Client, "* You selected\x07 Ultraviolet");
2800 .64812.replaceKnifeIfPossible(Client, false);
2801 }
2802 case 143:
2803 {
2804 g_pKnifeSkin[Client] = 143;
2805 IntToString(143, Option, 4);
2806 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2807 PrintToChat(Client, "* You selected\x07 Urban Masked");
2808 .64812.replaceKnifeIfPossible(Client, false);
2809 }
2810 case 175:
2811 {
2812 g_pKnifeSkin[Client] = 175;
2813 IntToString(175, Option, 4);
2814 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2815 PrintToChat(Client, "* You selected\x07 Scorched");
2816 .64812.replaceKnifeIfPossible(Client, false);
2817 }
2818 case 232:
2819 {
2820 g_pKnifeSkin[Client] = 232;
2821 IntToString(232, Option, 4);
2822 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2823 PrintToChat(Client, "* You selected\x07 Crimson Web (Darker)");
2824 .64812.replaceKnifeIfPossible(Client, false);
2825 }
2826 case 409:
2827 {
2828 g_pKnifeSkin[Client] = 409;
2829 IntToString(409, Option, 4);
2830 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2831 PrintToChat(Client, "* You selected\x07 Tiger Tooth");
2832 .64812.replaceKnifeIfPossible(Client, false);
2833 }
2834 case 410:
2835 {
2836 g_pKnifeSkin[Client] = 410;
2837 IntToString(410, Option, 4);
2838 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2839 if (g_pKnife[Client] == Knife:3)
2840 {
2841 g_pKnifeSkin[Client] = 411;
2842 IntToString(411, Option, 4);
2843 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2844 }
2845 PrintToChat(Client, "* You selected\x07 Damascus Steel");
2846 .64812.replaceKnifeIfPossible(Client, false);
2847 }
2848 case 411:
2849 {
2850 g_pKnifeSkin[Client] = 411;
2851 IntToString(411, Option, 4);
2852 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2853 g_pKnife[Client] = 3;
2854 IntToString(g_pKnife[Client], Option, 4);
2855 SetClientCookie(Client, g_pKnifeCookie, Option);
2856 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Damascus Steel");
2857 .64812.replaceKnifeIfPossible(Client, false);
2858 }
2859 case 413:
2860 {
2861 g_pKnifeSkin[Client] = 413;
2862 IntToString(413, Option, 4);
2863 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2864 PrintToChat(Client, "* You selected\x07 Marble Fade");
2865 .64812.replaceKnifeIfPossible(Client, false);
2866 }
2867 case 414:
2868 {
2869 g_pKnifeSkin[Client] = 414;
2870 IntToString(414, Option, 4);
2871 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2872 PrintToChat(Client, "* You selected\x07 Rust Coat");
2873 .64812.replaceKnifeIfPossible(Client, false);
2874 }
2875 case 415:
2876 {
2877 g_pKnifeSkin[Client] = 415;
2878 IntToString(415, Option, 4);
2879 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2880 PrintToChat(Client, "* You selected\x07 Doppler (Ruby)");
2881 .64812.replaceKnifeIfPossible(Client, false);
2882 }
2883 case 416:
2884 {
2885 g_pKnifeSkin[Client] = 416;
2886 IntToString(416, Option, 4);
2887 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2888 PrintToChat(Client, "* You selected\x07 Doppler (Sapphire)");
2889 .64812.replaceKnifeIfPossible(Client, false);
2890 }
2891 case 417:
2892 {
2893 g_pKnifeSkin[Client] = 417;
2894 IntToString(417, Option, 4);
2895 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2896 PrintToChat(Client, "* You selected\x07 Doppler (Blackpearl)");
2897 .64812.replaceKnifeIfPossible(Client, false);
2898 }
2899 case 418:
2900 {
2901 g_pKnifeSkin[Client] = 418;
2902 IntToString(418, Option, 4);
2903 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2904 PrintToChat(Client, "* You selected\x07 Dopple Phase #1");
2905 .64812.replaceKnifeIfPossible(Client, false);
2906 }
2907 case 419:
2908 {
2909 g_pKnifeSkin[Client] = 419;
2910 IntToString(419, Option, 4);
2911 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2912 PrintToChat(Client, "* You selected\x07 Dopple Phase #2");
2913 .64812.replaceKnifeIfPossible(Client, false);
2914 }
2915 case 420:
2916 {
2917 g_pKnifeSkin[Client] = 420;
2918 IntToString(420, Option, 4);
2919 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2920 PrintToChat(Client, "* You selected\x07 Dopple Phase #3");
2921 .64812.replaceKnifeIfPossible(Client, false);
2922 }
2923 case 421:
2924 {
2925 g_pKnifeSkin[Client] = 421;
2926 IntToString(421, Option, 4);
2927 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2928 PrintToChat(Client, "* You selected\x07 Dopple Phase #4");
2929 .64812.replaceKnifeIfPossible(Client, false);
2930 }
2931 case 558:
2932 {
2933 g_pKnifeSkin[Client] = 558;
2934 IntToString(558, Option, 4);
2935 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2936 g_pKnife[Client] = 4;
2937 IntToString(g_pKnife[Client], Option, 4);
2938 SetClientCookie(Client, g_pKnifeCookie, Option);
2939 PrintToChat(Client, "* You selected\x07 Bayonet* Lore");
2940 .64812.replaceKnifeIfPossible(Client, false);
2941 }
2942 case 559:
2943 {
2944 g_pKnifeSkin[Client] = 559;
2945 IntToString(559, Option, 4);
2946 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2947 g_pKnife[Client] = 9;
2948 IntToString(g_pKnife[Client], Option, 4);
2949 SetClientCookie(Client, g_pKnifeCookie, Option);
2950 PrintToChat(Client, "* You selected\x07 Flip* Lore");
2951 .64812.replaceKnifeIfPossible(Client, false);
2952 }
2953 case 560:
2954 {
2955 g_pKnifeSkin[Client] = 560;
2956 IntToString(560, Option, 4);
2957 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2958 g_pKnife[Client] = 8;
2959 IntToString(g_pKnife[Client], Option, 4);
2960 SetClientCookie(Client, g_pKnifeCookie, Option);
2961 PrintToChat(Client, "* You selected\x07 Gut* Lore");
2962 .64812.replaceKnifeIfPossible(Client, false);
2963 }
2964 case 561:
2965 {
2966 g_pKnifeSkin[Client] = 561;
2967 IntToString(561, Option, 4);
2968 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2969 g_pKnife[Client] = 1;
2970 IntToString(g_pKnife[Client], Option, 4);
2971 SetClientCookie(Client, g_pKnifeCookie, Option);
2972 PrintToChat(Client, "* You selected\x07 Karambit* Lore");
2973 .64812.replaceKnifeIfPossible(Client, false);
2974 }
2975 case 562:
2976 {
2977 g_pKnifeSkin[Client] = 562;
2978 IntToString(562, Option, 4);
2979 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2980 g_pKnife[Client] = 3;
2981 IntToString(g_pKnife[Client], Option, 4);
2982 SetClientCookie(Client, g_pKnifeCookie, Option);
2983 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Lore");
2984 .64812.replaceKnifeIfPossible(Client, false);
2985 }
2986 case 563:
2987 {
2988 g_pKnifeSkin[Client] = 563;
2989 IntToString(563, Option, 4);
2990 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
2991 g_pKnife[Client] = 4;
2992 IntToString(g_pKnife[Client], Option, 4);
2993 SetClientCookie(Client, g_pKnifeCookie, Option);
2994 PrintToChat(Client, "* You selected\x07 Bayonet* Black Laminate");
2995 .64812.replaceKnifeIfPossible(Client, false);
2996 }
2997 case 564:
2998 {
2999 g_pKnifeSkin[Client] = 564;
3000 IntToString(564, Option, 4);
3001 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3002 g_pKnife[Client] = 9;
3003 IntToString(g_pKnife[Client], Option, 4);
3004 SetClientCookie(Client, g_pKnifeCookie, Option);
3005 PrintToChat(Client, "* You selected\x07 Flip* Black Laminate");
3006 .64812.replaceKnifeIfPossible(Client, false);
3007 }
3008 case 565:
3009 {
3010 g_pKnifeSkin[Client] = 565;
3011 IntToString(565, Option, 4);
3012 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3013 g_pKnife[Client] = 8;
3014 IntToString(g_pKnife[Client], Option, 4);
3015 SetClientCookie(Client, g_pKnifeCookie, Option);
3016 PrintToChat(Client, "* You selected\x07 Gut* Black Laminate");
3017 .64812.replaceKnifeIfPossible(Client, false);
3018 }
3019 case 566:
3020 {
3021 g_pKnifeSkin[Client] = 566;
3022 IntToString(566, Option, 4);
3023 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3024 g_pKnife[Client] = 1;
3025 IntToString(g_pKnife[Client], Option, 4);
3026 SetClientCookie(Client, g_pKnifeCookie, Option);
3027 PrintToChat(Client, "* You selected\x07 Karambit* Black Laminate");
3028 .64812.replaceKnifeIfPossible(Client, false);
3029 }
3030 case 567:
3031 {
3032 g_pKnifeSkin[Client] = 567;
3033 IntToString(567, Option, 4);
3034 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3035 g_pKnife[Client] = 3;
3036 IntToString(g_pKnife[Client], Option, 4);
3037 SetClientCookie(Client, g_pKnifeCookie, Option);
3038 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Black Laminate");
3039 .64812.replaceKnifeIfPossible(Client, false);
3040 }
3041 case 568:
3042 {
3043 g_pKnifeSkin[Client] = 568;
3044 IntToString(568, Option, 4);
3045 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3046 PrintToChat(Client, "* You selected\x07 G. Doppler (Emerald)");
3047 .64812.replaceKnifeIfPossible(Client, false);
3048 }
3049 case 569:
3050 {
3051 g_pKnifeSkin[Client] = 569;
3052 IntToString(569, Option, 4);
3053 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3054 PrintToChat(Client, "* You selected\x07 G. Doppler Phase #1");
3055 .64812.replaceKnifeIfPossible(Client, false);
3056 }
3057 case 570:
3058 {
3059 g_pKnifeSkin[Client] = 570;
3060 IntToString(570, Option, 4);
3061 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3062 PrintToChat(Client, "* You selected\x07 G. Doppler Phase #2");
3063 .64812.replaceKnifeIfPossible(Client, false);
3064 }
3065 case 571:
3066 {
3067 g_pKnifeSkin[Client] = 571;
3068 IntToString(571, Option, 4);
3069 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3070 PrintToChat(Client, "* You selected\x07 G. Doppler Phase #3");
3071 .64812.replaceKnifeIfPossible(Client, false);
3072 }
3073 case 572:
3074 {
3075 g_pKnifeSkin[Client] = 572;
3076 IntToString(572, Option, 4);
3077 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3078 PrintToChat(Client, "* You selected\x07 G. Doppler Phase #4");
3079 .64812.replaceKnifeIfPossible(Client, false);
3080 }
3081 case 573:
3082 {
3083 g_pKnifeSkin[Client] = 573;
3084 IntToString(573, Option, 4);
3085 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3086 g_pKnife[Client] = 4;
3087 IntToString(g_pKnife[Client], Option, 4);
3088 SetClientCookie(Client, g_pKnifeCookie, Option);
3089 PrintToChat(Client, "* You selected\x07 Bayonet* Autotronic");
3090 .64812.replaceKnifeIfPossible(Client, false);
3091 }
3092 case 574:
3093 {
3094 g_pKnifeSkin[Client] = 574;
3095 IntToString(574, Option, 4);
3096 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3097 g_pKnife[Client] = 9;
3098 IntToString(g_pKnife[Client], Option, 4);
3099 SetClientCookie(Client, g_pKnifeCookie, Option);
3100 PrintToChat(Client, "* You selected\x07 Flip* Autotronic");
3101 .64812.replaceKnifeIfPossible(Client, false);
3102 }
3103 case 575:
3104 {
3105 g_pKnifeSkin[Client] = 575;
3106 IntToString(575, Option, 4);
3107 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3108 g_pKnife[Client] = 8;
3109 IntToString(g_pKnife[Client], Option, 4);
3110 SetClientCookie(Client, g_pKnifeCookie, Option);
3111 PrintToChat(Client, "* You selected\x07 Gut* Autotronic");
3112 .64812.replaceKnifeIfPossible(Client, false);
3113 }
3114 case 576:
3115 {
3116 g_pKnifeSkin[Client] = 576;
3117 IntToString(576, Option, 4);
3118 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3119 g_pKnife[Client] = 1;
3120 IntToString(g_pKnife[Client], Option, 4);
3121 SetClientCookie(Client, g_pKnifeCookie, Option);
3122 PrintToChat(Client, "* You selected\x07 Karambit* Autotronic");
3123 .64812.replaceKnifeIfPossible(Client, false);
3124 }
3125 case 577:
3126 {
3127 g_pKnifeSkin[Client] = 577;
3128 IntToString(577, Option, 4);
3129 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3130 g_pKnife[Client] = 3;
3131 IntToString(g_pKnife[Client], Option, 4);
3132 SetClientCookie(Client, g_pKnifeCookie, Option);
3133 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Autotronic");
3134 .64812.replaceKnifeIfPossible(Client, false);
3135 }
3136 case 578:
3137 {
3138 g_pKnifeSkin[Client] = 578;
3139 IntToString(578, Option, 4);
3140 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3141 if (g_pKnife[Client] == Knife:3)
3142 {
3143 g_pKnifeSkin[Client] = 579;
3144 IntToString(579, Option, 4);
3145 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3146 }
3147 PrintToChat(Client, "* You selected\x07 Bright Water");
3148 .64812.replaceKnifeIfPossible(Client, false);
3149 }
3150 case 579:
3151 {
3152 g_pKnifeSkin[Client] = 579;
3153 IntToString(579, Option, 4);
3154 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3155 g_pKnife[Client] = 3;
3156 IntToString(g_pKnife[Client], Option, 4);
3157 SetClientCookie(Client, g_pKnifeCookie, Option);
3158 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Bright Water");
3159 .64812.replaceKnifeIfPossible(Client, false);
3160 }
3161 case 580:
3162 {
3163 g_pKnifeSkin[Client] = 580;
3164 IntToString(580, Option, 4);
3165 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3166 if (g_pKnife[Client] == Knife:3)
3167 {
3168 g_pKnifeSkin[Client] = 581;
3169 IntToString(581, Option, 4);
3170 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3171 }
3172 if (g_pKnife[Client] == Knife:1)
3173 {
3174 g_pKnifeSkin[Client] = 582;
3175 IntToString(582, Option, 4);
3176 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3177 }
3178 PrintToChat(Client, "* You selected\x07 Freehand");
3179 .64812.replaceKnifeIfPossible(Client, false);
3180 }
3181 case 581:
3182 {
3183 g_pKnifeSkin[Client] = 581;
3184 IntToString(581, Option, 4);
3185 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3186 g_pKnife[Client] = 3;
3187 IntToString(g_pKnife[Client], Option, 4);
3188 SetClientCookie(Client, g_pKnifeCookie, Option);
3189 PrintToChat(Client, "* You selected\x07 M9 Bayonet* Freehand");
3190 .64812.replaceKnifeIfPossible(Client, false);
3191 }
3192 case 582:
3193 {
3194 g_pKnifeSkin[Client] = 582;
3195 IntToString(582, Option, 4);
3196 SetClientCookie(Client, g_pKnifeSkinCookie, Option);
3197 g_pKnife[Client] = 1;
3198 IntToString(g_pKnife[Client], Option, 4);
3199 SetClientCookie(Client, g_pKnifeCookie, Option);
3200 PrintToChat(Client, "* You selected\x07 Karambit* Freehand");
3201 .64812.replaceKnifeIfPossible(Client, false);
3202 }
3203 default:
3204 {
3205 }
3206 }
3207 }
3208 else
3209 {
3210 new var2;
3211 if (pAction == MenuAction:16 && pMenu)
3212 {
3213 CloseHandle(pMenu);
3214 pMenu = MissingTAG:0;
3215 }
3216 }
3217 return 0;
3218}
3219
3220public MenuHandler_Knives(Handle:pMenu, MenuAction:pAction, Client, Knife)
3221{
3222 static String:Info[4];
3223 static String:Option[4];
3224 new var1;
3225 if (pAction == MenuAction:4 && g_bIsInGame[Client])
3226 {
3227 GetMenuItem(pMenu, Knife, Info, 4, 0, "", 0);
3228 switch (StringToInt(Info, 10))
3229 {
3230 case 1:
3231 {
3232 g_pKnife[Client] = 0;
3233 IntToString(0, Option, 4);
3234 SetClientCookie(Client, g_pKnifeCookie, Option);
3235 PrintToChat(Client, "* You selected Default\x05 (NO CHANGE)");
3236 .64812.replaceKnifeIfPossible(Client, false);
3237 }
3238 case 2:
3239 {
3240 g_pKnife[Client] = 10;
3241 IntToString(10, Option, 4);
3242 SetClientCookie(Client, g_pKnifeCookie, Option);
3243 PrintToChat(Client, "* You selected\x07 ★ Bowie (SURViVAL)\x01. You can also type\x04 WS\x01 now.");
3244 .64812.replaceKnifeIfPossible(Client, false);
3245 }
3246 case 3:
3247 {
3248 g_pKnife[Client] = 6;
3249 IntToString(6, Option, 4);
3250 SetClientCookie(Client, g_pKnifeCookie, Option);
3251 PrintToChat(Client, "* You selected\x07 ★ Shadow Daggers\x05 (PUSH)\x01. You can also type\x04 WS\x01 now.");
3252 .64812.replaceKnifeIfPossible(Client, false);
3253 }
3254 case 4:
3255 {
3256 g_pKnife[Client] = 3;
3257 IntToString(3, Option, 4);
3258 SetClientCookie(Client, g_pKnifeCookie, Option);
3259 PrintToChat(Client, "* You selected\x07 ★ M9 Bayonet\x01. You can also type\x04 WS\x01 now.");
3260 .64812.replaceKnifeIfPossible(Client, false);
3261 }
3262 case 5:
3263 {
3264 g_pKnife[Client] = 1;
3265 IntToString(1, Option, 4);
3266 SetClientCookie(Client, g_pKnifeCookie, Option);
3267 PrintToChat(Client, "* You selected\x07 ★ Karambit\x01. You can also type\x04 WS\x01 now.");
3268 .64812.replaceKnifeIfPossible(Client, false);
3269 }
3270 case 6:
3271 {
3272 g_pKnife[Client] = 4;
3273 IntToString(4, Option, 4);
3274 SetClientCookie(Client, g_pKnifeCookie, Option);
3275 PrintToChat(Client, "* You selected\x07 ★ Bayonet\x01. You can also type\x04 WS\x01 now.");
3276 .64812.replaceKnifeIfPossible(Client, false);
3277 }
3278 case 7:
3279 {
3280 g_pKnife[Client] = 5;
3281 IntToString(5, Option, 4);
3282 SetClientCookie(Client, g_pKnifeCookie, Option);
3283 PrintToChat(Client, "* You selected\x07 ★ Huntsman\x05 (TACTiCAL)\x01. You can also type\x04 WS\x01 now.");
3284 .64812.replaceKnifeIfPossible(Client, false);
3285 }
3286 case 8:
3287 {
3288 g_pKnife[Client] = 2;
3289 IntToString(2, Option, 4);
3290 SetClientCookie(Client, g_pKnifeCookie, Option);
3291 PrintToChat(Client, "* You selected\x07 ★ Butterfly\x01. You can also type\x04 WS\x01 now.");
3292 .64812.replaceKnifeIfPossible(Client, false);
3293 }
3294 case 9:
3295 {
3296 g_pKnife[Client] = 8;
3297 IntToString(8, Option, 4);
3298 SetClientCookie(Client, g_pKnifeCookie, Option);
3299 PrintToChat(Client, "* You selected\x07 ★ Gut\x01. You can also type\x04 WS\x01 now.");
3300 .64812.replaceKnifeIfPossible(Client, false);
3301 }
3302 case 10:
3303 {
3304 g_pKnife[Client] = 9;
3305 IntToString(9, Option, 4);
3306 SetClientCookie(Client, g_pKnifeCookie, Option);
3307 PrintToChat(Client, "* You selected\x07 ★ Flip\x01. You can also type\x04 WS\x01 now.");
3308 .64812.replaceKnifeIfPossible(Client, false);
3309 }
3310 case 11:
3311 {
3312 g_pKnife[Client] = 7;
3313 IntToString(7, Option, 4);
3314 SetClientCookie(Client, g_pKnifeCookie, Option);
3315 PrintToChat(Client, "* You selected\x07 ★ Falchion\x01. You can also type\x04 WS\x01 now.");
3316 .64812.replaceKnifeIfPossible(Client, false);
3317 }
3318 default:
3319 {
3320 }
3321 }
3322 }
3323 else
3324 {
3325 new var2;
3326 if (pAction == MenuAction:16 && pMenu)
3327 {
3328 CloseHandle(pMenu);
3329 pMenu = MissingTAG:0;
3330 }
3331 }
3332 return 0;
3333}
3334
3335public __EquipKnife(Handle:pPlugin, iParams)
3336{
3337 static Id;
3338 static Entity;
3339 static iId = -1;
3340 static String:Class[32];
3341 iId = GetNativeCell(1);
3342 new var1;
3343 if (IsClientInGame(iId) && IsPlayerAlive(iId))
3344 {
3345 if (g_iFakeClient != -1)
3346 {
3347 .13196.KnifeClassByOption(iId, Class, 32);
3348 new var2;
3349 if (g_pKnife[iId] == Knife:-1 || g_pKnife[iId])
3350 {
3351 var3 = iId;
3352 }
3353 else
3354 {
3355 var3 = g_iFakeClient;
3356 }
3357 Entity = GivePlayerItem(var3, Class, 0);
3358 if (Entity != -1)
3359 {
3360 Id = .85760.IDIByClass(Class);
3361 new var4;
3362 if (g_pKnife[iId] != Knife:-1 && g_pKnife[iId])
3363 {
3364 SetEntProp(Entity, PropType:0, "m_iItemDefinitionIndex", Id, 4, 0);
3365 }
3366 .13956.applyKnifeData(iId, Entity, Id);
3367 EquipPlayerWeapon(iId, Entity);
3368 }
3369 }
3370 }
3371 return 0;
3372}
3373
3374public Action:Timer_ReplaceKnife(Handle:pTimer, any:_Data)
3375{
3376 static iId = -1;
3377 static bool:bSkipInRound;
3378 ResetPack(_Data, false);
3379 iId = ReadPackCell(_Data);
3380 new var1;
3381 if (ReadPackCell(_Data))
3382 {
3383 var1 = 1;
3384 }
3385 else
3386 {
3387 var1 = 0;
3388 }
3389 bSkipInRound = var1;
3390 CloseHandle(_Data);
3391 _Data = MissingTAG:0;
3392 .64812.replaceKnifeIfPossible(iId, bSkipInRound);
3393 return Action:0;
3394}
3395
3396public .64812.replaceKnifeIfPossible(Client, bool:bSkipInRound)
3397{
3398 static String:Class[32];
3399 static Id;
3400 static Tries;
3401 static Entity;
3402 static Float:fGameTime;
3403 static Handle:pData;
3404 new var1;
3405 if ((bSkipInRound && g_bIsInRound) && (Client >= 1 && Client <= MaxClients && IsClientInGame(Client) && IsPlayerAlive(Client)))
3406 {
3407 fGameTime = GetEngineTime();
3408 if (fGameTime - g_fDelay < 0.075)
3409 {
3410 pData = CreateDataPack();
3411 if (pData)
3412 {
3413 WritePackCell(pData, Client);
3414 new var3;
3415 if (bSkipInRound)
3416 {
3417 var3 = MissingTAG:1;
3418 }
3419 else
3420 {
3421 var3 = MissingTAG:0;
3422 }
3423 WritePackCell(pData, var3);
3424 CreateTimer(GetRandomFloat(0.05, 0.075), Timer_ReplaceKnife, pData, 0);
3425 }
3426 }
3427 Entity = -1;
3428 Tries = 0;
3429 while ((Entity = GetPlayerWeaponSlot(Client, 2)) != -1)
3430 {
3431 new var5;
3432 if (GetEdictClassname(Entity, Class, 32) && (StrContains(Class, "Knife", false) == -1 && StrContains(Class, "Bayonet", false) == -1))
3433 {
3434 if (RemovePlayerItem(Client, Entity))
3435 {
3436 .83232.my_Remove(Entity);
3437 if (g_iFakeClient != -1)
3438 {
3439 .13196.KnifeClassByOption(Client, Class, 32);
3440 new var6;
3441 if (g_pKnife[Client] == Knife:-1 || g_pKnife[Client])
3442 {
3443 var7 = Client;
3444 }
3445 else
3446 {
3447 var7 = g_iFakeClient;
3448 }
3449 Entity = GivePlayerItem(var7, Class, 0);
3450 if (Entity != -1)
3451 {
3452 Id = .85760.IDIByClass(Class);
3453 new var8;
3454 if (g_pKnife[Client] != Knife:-1 && g_pKnife[Client])
3455 {
3456 SetEntProp(Entity, PropType:0, "m_iItemDefinitionIndex", Id, 4, 0);
3457 }
3458 .13956.applyKnifeData(Client, Entity, Id);
3459 EquipPlayerWeapon(Client, Entity);
3460 }
3461 }
3462 }
3463 .10436.SaveMe(Client);
3464 g_fDelay = fGameTime;
3465 }
3466 Tries += 1;
3467 if (Tries >= 4)
3468 {
3469 .10436.SaveMe(Client);
3470 g_fDelay = fGameTime;
3471 }
3472 }
3473 .10436.SaveMe(Client);
3474 g_fDelay = fGameTime;
3475 }
3476 return 0;
3477}
3478
3479public .64812.replaceKnifeIfPossible(Client, bool:bSkipInRound)
3480{
3481 static String:Class[32];
3482 static Id;
3483 static Tries;
3484 static Entity;
3485 static Float:fGameTime;
3486 static Handle:pData;
3487 new var1;
3488 if ((bSkipInRound && g_bIsInRound) && (Client >= 1 && Client <= MaxClients && IsClientInGame(Client) && IsPlayerAlive(Client)))
3489 {
3490 fGameTime = GetEngineTime();
3491 if (fGameTime - g_fDelay < 0.075)
3492 {
3493 pData = CreateDataPack();
3494 if (pData)
3495 {
3496 WritePackCell(pData, Client);
3497 new var3;
3498 if (bSkipInRound)
3499 {
3500 var3 = MissingTAG:1;
3501 }
3502 else
3503 {
3504 var3 = MissingTAG:0;
3505 }
3506 WritePackCell(pData, var3);
3507 CreateTimer(GetRandomFloat(0.05, 0.075), Timer_ReplaceKnife, pData, 0);
3508 }
3509 }
3510 Entity = -1;
3511 Tries = 0;
3512 while ((Entity = GetPlayerWeaponSlot(Client, 2)) != -1)
3513 {
3514 new var5;
3515 if (GetEdictClassname(Entity, Class, 32) && (StrContains(Class, "Knife", false) == -1 && StrContains(Class, "Bayonet", false) == -1))
3516 {
3517 if (RemovePlayerItem(Client, Entity))
3518 {
3519 .83232.my_Remove(Entity);
3520 if (g_iFakeClient != -1)
3521 {
3522 .13196.KnifeClassByOption(Client, Class, 32);
3523 new var6;
3524 if (g_pKnife[Client] == Knife:-1 || g_pKnife[Client])
3525 {
3526 var7 = Client;
3527 }
3528 else
3529 {
3530 var7 = g_iFakeClient;
3531 }
3532 Entity = GivePlayerItem(var7, Class, 0);
3533 if (Entity != -1)
3534 {
3535 Id = .85760.IDIByClass(Class);
3536 new var8;
3537 if (g_pKnife[Client] != Knife:-1 && g_pKnife[Client])
3538 {
3539 SetEntProp(Entity, PropType:0, "m_iItemDefinitionIndex", Id, 4, 0);
3540 }
3541 .13956.applyKnifeData(Client, Entity, Id);
3542 EquipPlayerWeapon(Client, Entity);
3543 }
3544 }
3545 }
3546 .10436.SaveMe(Client);
3547 g_fDelay = fGameTime;
3548 }
3549 Tries += 1;
3550 if (Tries >= 4)
3551 {
3552 .10436.SaveMe(Client);
3553 g_fDelay = fGameTime;
3554 }
3555 }
3556 .10436.SaveMe(Client);
3557 g_fDelay = fGameTime;
3558 }
3559 return 0;
3560}
3561
3562public Action:TimerHandler_DisplaySkinsMenu(Handle:pTimer, any:Client)
3563{
3564 static Handle:pMenu;
3565 static Iter;
3566 static Id;
3567 static WeaponId;
3568 static String:Class[32];
3569 static String:Info[8];
3570 static String:Buffer[256];
3571 new var1;
3572 if (g_bIsInGame[Client] && !IsFakeClient(Client) && !IsClientSourceTV(Client))
3573 {
3574 if (IsPlayerAlive(Client))
3575 {
3576 WeaponId = GetEntPropEnt(Client, PropType:0, "m_hActiveWeapon", 0);
3577 }
3578 else
3579 {
3580 WeaponId = -1;
3581 }
3582 if (g_pKnifeSkin[Client] == KnifeSkin:-2)
3583 {
3584 PrintToChat(Client, "* FiRST, PiCK UP A\x07 KNiFE\x05 PAiNT KiT OPTiON");
3585 pMenu = CreateMenu(MenuHandler_KnifeSkins, MenuAction:28);
3586 if (pMenu)
3587 {
3588 SetMenuTitle(pMenu, "★ SELECT KNiFE SKiN ★");
3589 AddMenuItem(pMenu, "-1", "» RANDOM «", 0);
3590 AddMenuItem(pMenu, "0", "» DEFAULT «", 0);
3591 AddMenuItem(pMenu, "411", "M9 Bayonet* Damascus Steel", 0);
3592 AddMenuItem(pMenu, "562", "M9 Bayonet* Lore", 0);
3593 AddMenuItem(pMenu, "567", "M9 Bayonet* Black Laminate", 0);
3594 AddMenuItem(pMenu, "577", "M9 Bayonet* Autotronic", 0);
3595 AddMenuItem(pMenu, "579", "M9 Bayonet* Bright Water", 0);
3596 AddMenuItem(pMenu, "581", "M9 Bayonet* Freehand", 0);
3597 AddMenuItem(pMenu, "558", "Bayonet* Lore", 0);
3598 AddMenuItem(pMenu, "563", "Bayonet* Black Laminate", 0);
3599 AddMenuItem(pMenu, "573", "Bayonet* Autotronic", 0);
3600 AddMenuItem(pMenu, "559", "Flip* Lore", 0);
3601 AddMenuItem(pMenu, "564", "Flip* Black Laminate", 0);
3602 AddMenuItem(pMenu, "574", "Flip* Autotronic", 0);
3603 AddMenuItem(pMenu, "560", "Gut* Lore", 0);
3604 AddMenuItem(pMenu, "565", "Gut* Black Laminate", 0);
3605 AddMenuItem(pMenu, "575", "Gut* Autotronic", 0);
3606 AddMenuItem(pMenu, "561", "Karambit* Lore", 0);
3607 AddMenuItem(pMenu, "566", "Karambit* Black Laminate", 0);
3608 AddMenuItem(pMenu, "576", "Karambit* Autotronic", 0);
3609 AddMenuItem(pMenu, "582", "Karambit* Freehand", 0);
3610 AddMenuItem(pMenu, "580", "Any* Freehand", 0);
3611 AddMenuItem(pMenu, "578", "Any* Bright Water", 0);
3612 AddMenuItem(pMenu, "569", "Any* G. Doppler Phase #1", 0);
3613 AddMenuItem(pMenu, "570", "Any* G. Doppler Phase #2", 0);
3614 AddMenuItem(pMenu, "571", "Any* G. Doppler Phase #3", 0);
3615 AddMenuItem(pMenu, "572", "Any* G. Doppler Phase #4", 0);
3616 AddMenuItem(pMenu, "568", "Any* G. Doppler (Emerald)", 0);
3617 AddMenuItem(pMenu, "418", "Any* Doppler Phase #1", 0);
3618 AddMenuItem(pMenu, "419", "Any* Doppler Phase #2", 0);
3619 AddMenuItem(pMenu, "420", "Any* Doppler Phase #3", 0);
3620 AddMenuItem(pMenu, "421", "Any* Doppler Phase #4", 0);
3621 AddMenuItem(pMenu, "415", "Any* Doppler (Ruby)", 0);
3622 AddMenuItem(pMenu, "416", "Any* Doppler (Sapphire)", 0);
3623 AddMenuItem(pMenu, "417", "Any* Doppler (Blackpearl)", 0);
3624 AddMenuItem(pMenu, "38", "Any* Fade", 0);
3625 AddMenuItem(pMenu, "413", "Any* Marble Fade", 0);
3626 AddMenuItem(pMenu, "44", "Any* Case Hardened", 0);
3627 AddMenuItem(pMenu, "59", "Any* Slaughter", 0);
3628 AddMenuItem(pMenu, "12", "Any* Crimson Web", 0);
3629 AddMenuItem(pMenu, "232", "Any* Crimson Web (Darker)", 0);
3630 AddMenuItem(pMenu, "98", "Any* Ultraviolet", 0);
3631 AddMenuItem(pMenu, "40", "Any* Night", 0);
3632 AddMenuItem(pMenu, "5", "Any* Forest DDPAT", 0);
3633 AddMenuItem(pMenu, "77", "Any* Boreal Forest", 0);
3634 AddMenuItem(pMenu, "42", "Any* Blue Steel", 0);
3635 AddMenuItem(pMenu, "410", "Any* Damascus Steel", 0);
3636 AddMenuItem(pMenu, "43", "Any* Stained", 0);
3637 AddMenuItem(pMenu, "72", "Any* Safari Mesh", 0);
3638 AddMenuItem(pMenu, "143", "Any* Urban Masked", 0);
3639 AddMenuItem(pMenu, "175", "Any* Scorched", 0);
3640 AddMenuItem(pMenu, "414", "Any* Rust Coat", 0);
3641 AddMenuItem(pMenu, "409", "Any* Tiger Tooth", 0);
3642 DisplayMenu(pMenu, Client, 0);
3643 }
3644 }
3645 new var3;
3646 if (WeaponId != -1 && GetEdictClassname(WeaponId, Class, 32) && (StrContains(Class, "Knife", false) == -1 && StrContains(Class, "Bayonet", false) == -1))
3647 {
3648 pMenu = CreateMenu(MenuHandler_KnifeSkins, MenuAction:28);
3649 if (g_pKnife[Client] == Knife:-1)
3650 {
3651 if (pMenu)
3652 {
3653 SetMenuTitle(pMenu, "★ SELECT KNiFE SKiN ★");
3654 AddMenuItem(pMenu, "-1", "» RANDOM «", 0);
3655 AddMenuItem(pMenu, "0", "» DEFAULT «", 0);
3656 AddMenuItem(pMenu, "411", "M9 Bayonet* Damascus Steel", 0);
3657 AddMenuItem(pMenu, "562", "M9 Bayonet* Lore", 0);
3658 AddMenuItem(pMenu, "567", "M9 Bayonet* Black Laminate", 0);
3659 AddMenuItem(pMenu, "577", "M9 Bayonet* Autotronic", 0);
3660 AddMenuItem(pMenu, "579", "M9 Bayonet* Bright Water", 0);
3661 AddMenuItem(pMenu, "581", "M9 Bayonet* Freehand", 0);
3662 AddMenuItem(pMenu, "558", "Bayonet* Lore", 0);
3663 AddMenuItem(pMenu, "563", "Bayonet* Black Laminate", 0);
3664 AddMenuItem(pMenu, "573", "Bayonet* Autotronic", 0);
3665 AddMenuItem(pMenu, "559", "Flip* Lore", 0);
3666 AddMenuItem(pMenu, "564", "Flip* Black Laminate", 0);
3667 AddMenuItem(pMenu, "574", "Flip* Autotronic", 0);
3668 AddMenuItem(pMenu, "560", "Gut* Lore", 0);
3669 AddMenuItem(pMenu, "565", "Gut* Black Laminate", 0);
3670 AddMenuItem(pMenu, "575", "Gut* Autotronic", 0);
3671 AddMenuItem(pMenu, "561", "Karambit* Lore", 0);
3672 AddMenuItem(pMenu, "566", "Karambit* Black Laminate", 0);
3673 AddMenuItem(pMenu, "576", "Karambit* Autotronic", 0);
3674 AddMenuItem(pMenu, "582", "Karambit* Freehand", 0);
3675 AddMenuItem(pMenu, "580", "Any* Freehand", 0);
3676 AddMenuItem(pMenu, "578", "Any* Bright Water", 0);
3677 AddMenuItem(pMenu, "569", "Any* G. Doppler Phase #1", 0);
3678 AddMenuItem(pMenu, "570", "Any* G. Doppler Phase #2", 0);
3679 AddMenuItem(pMenu, "571", "Any* G. Doppler Phase #3", 0);
3680 AddMenuItem(pMenu, "572", "Any* G. Doppler Phase #4", 0);
3681 AddMenuItem(pMenu, "568", "Any* G. Doppler (Emerald)", 0);
3682 AddMenuItem(pMenu, "418", "Any* Doppler Phase #1", 0);
3683 AddMenuItem(pMenu, "419", "Any* Doppler Phase #2", 0);
3684 AddMenuItem(pMenu, "420", "Any* Doppler Phase #3", 0);
3685 AddMenuItem(pMenu, "421", "Any* Doppler Phase #4", 0);
3686 AddMenuItem(pMenu, "415", "Any* Doppler (Ruby)", 0);
3687 AddMenuItem(pMenu, "416", "Any* Doppler (Sapphire)", 0);
3688 AddMenuItem(pMenu, "417", "Any* Doppler (Blackpearl)", 0);
3689 AddMenuItem(pMenu, "38", "Any* Fade", 0);
3690 AddMenuItem(pMenu, "413", "Any* Marble Fade", 0);
3691 AddMenuItem(pMenu, "44", "Any* Case Hardened", 0);
3692 AddMenuItem(pMenu, "59", "Any* Slaughter", 0);
3693 AddMenuItem(pMenu, "12", "Any* Crimson Web", 0);
3694 AddMenuItem(pMenu, "232", "Any* Crimson Web (Darker)", 0);
3695 AddMenuItem(pMenu, "98", "Any* Ultraviolet", 0);
3696 AddMenuItem(pMenu, "40", "Any* Night", 0);
3697 AddMenuItem(pMenu, "5", "Any* Forest DDPAT", 0);
3698 AddMenuItem(pMenu, "77", "Any* Boreal Forest", 0);
3699 AddMenuItem(pMenu, "42", "Any* Blue Steel", 0);
3700 AddMenuItem(pMenu, "410", "Any* Damascus Steel", 0);
3701 AddMenuItem(pMenu, "43", "Any* Stained", 0);
3702 AddMenuItem(pMenu, "72", "Any* Safari Mesh", 0);
3703 AddMenuItem(pMenu, "143", "Any* Urban Masked", 0);
3704 AddMenuItem(pMenu, "175", "Any* Scorched", 0);
3705 AddMenuItem(pMenu, "414", "Any* Rust Coat", 0);
3706 AddMenuItem(pMenu, "409", "Any* Tiger Tooth", 0);
3707 DisplayMenu(pMenu, Client, 0);
3708 }
3709 }
3710 else
3711 {
3712 if (pMenu)
3713 {
3714 SetMenuTitle(pMenu, "★ SELECT KNiFE SKiN ★");
3715 AddMenuItem(pMenu, "-1", "» RANDOM «", 0);
3716 AddMenuItem(pMenu, "0", "» DEFAULT «", 0);
3717 if (g_pKnife[Client] == Knife:3)
3718 {
3719 AddMenuItem(pMenu, "411", "M9 Bayonet* Damascus Steel", 0);
3720 AddMenuItem(pMenu, "562", "M9 Bayonet* Lore", 0);
3721 AddMenuItem(pMenu, "567", "M9 Bayonet* Black Laminate", 0);
3722 AddMenuItem(pMenu, "577", "M9 Bayonet* Autotronic", 0);
3723 AddMenuItem(pMenu, "579", "M9 Bayonet* Bright Water", 0);
3724 AddMenuItem(pMenu, "581", "M9 Bayonet* Freehand", 0);
3725 }
3726 if (g_pKnife[Client] == Knife:4)
3727 {
3728 AddMenuItem(pMenu, "558", "Bayonet* Lore", 0);
3729 AddMenuItem(pMenu, "563", "Bayonet* Black Laminate", 0);
3730 AddMenuItem(pMenu, "573", "Bayonet* Autotronic", 0);
3731 }
3732 if (g_pKnife[Client] == Knife:9)
3733 {
3734 AddMenuItem(pMenu, "559", "Flip* Lore", 0);
3735 AddMenuItem(pMenu, "564", "Flip* Black Laminate", 0);
3736 AddMenuItem(pMenu, "574", "Flip* Autotronic", 0);
3737 }
3738 if (g_pKnife[Client] == Knife:8)
3739 {
3740 AddMenuItem(pMenu, "560", "Gut* Lore", 0);
3741 AddMenuItem(pMenu, "565", "Gut* Black Laminate", 0);
3742 AddMenuItem(pMenu, "575", "Gut* Autotronic", 0);
3743 }
3744 if (g_pKnife[Client] == Knife:1)
3745 {
3746 AddMenuItem(pMenu, "561", "Karambit* Lore", 0);
3747 AddMenuItem(pMenu, "566", "Karambit* Black Laminate", 0);
3748 AddMenuItem(pMenu, "576", "Karambit* Autotronic", 0);
3749 AddMenuItem(pMenu, "582", "Karambit* Freehand", 0);
3750 }
3751 AddMenuItem(pMenu, "580", "Any* Freehand", 0);
3752 AddMenuItem(pMenu, "578", "Any* Bright Water", 0);
3753 AddMenuItem(pMenu, "569", "Any* G. Doppler Phase #1", 0);
3754 AddMenuItem(pMenu, "570", "Any* G. Doppler Phase #2", 0);
3755 AddMenuItem(pMenu, "571", "Any* G. Doppler Phase #3", 0);
3756 AddMenuItem(pMenu, "572", "Any* G. Doppler Phase #4", 0);
3757 AddMenuItem(pMenu, "568", "Any* G. Doppler (Emerald)", 0);
3758 AddMenuItem(pMenu, "418", "Any* Doppler Phase #1", 0);
3759 AddMenuItem(pMenu, "419", "Any* Doppler Phase #2", 0);
3760 AddMenuItem(pMenu, "420", "Any* Doppler Phase #3", 0);
3761 AddMenuItem(pMenu, "421", "Any* Doppler Phase #4", 0);
3762 AddMenuItem(pMenu, "415", "Any* Doppler (Ruby)", 0);
3763 AddMenuItem(pMenu, "416", "Any* Doppler (Sapphire)", 0);
3764 AddMenuItem(pMenu, "417", "Any* Doppler (Blackpearl)", 0);
3765 AddMenuItem(pMenu, "38", "Any* Fade", 0);
3766 AddMenuItem(pMenu, "413", "Any* Marble Fade", 0);
3767 AddMenuItem(pMenu, "44", "Any* Case Hardened", 0);
3768 AddMenuItem(pMenu, "59", "Any* Slaughter", 0);
3769 AddMenuItem(pMenu, "12", "Any* Crimson Web", 0);
3770 AddMenuItem(pMenu, "232", "Any* Crimson Web (Darker)", 0);
3771 AddMenuItem(pMenu, "98", "Any* Ultraviolet", 0);
3772 AddMenuItem(pMenu, "40", "Any* Night", 0);
3773 AddMenuItem(pMenu, "5", "Any* Forest DDPAT", 0);
3774 AddMenuItem(pMenu, "77", "Any* Boreal Forest", 0);
3775 AddMenuItem(pMenu, "42", "Any* Blue Steel", 0);
3776 AddMenuItem(pMenu, "410", "Any* Damascus Steel", 0);
3777 AddMenuItem(pMenu, "43", "Any* Stained", 0);
3778 AddMenuItem(pMenu, "72", "Any* Safari Mesh", 0);
3779 AddMenuItem(pMenu, "143", "Any* Urban Masked", 0);
3780 AddMenuItem(pMenu, "175", "Any* Scorched", 0);
3781 AddMenuItem(pMenu, "414", "Any* Rust Coat", 0);
3782 AddMenuItem(pMenu, "409", "Any* Tiger Tooth", 0);
3783 DisplayMenu(pMenu, Client, 0);
3784 }
3785 }
3786 }
3787 if (!IsPlayerAlive(Client))
3788 {
3789 PrintToChat(Client, "* You must be\x05 Alive");
3790 }
3791 if (WeaponId == -1)
3792 {
3793 PrintToChat(Client, "* You must have an\x05 Active Weapon");
3794 }
3795 Id = GetEntProp(WeaponId, PropType:0, "m_iItemDefinitionIndex", 4, 0);
3796 pMenu = CreateMenu(MenuHandler_Skins, MenuAction:28);
3797 if (pMenu)
3798 {
3799 switch (Id)
3800 {
3801 case 1:
3802 {
3803 SetMenuTitle(pMenu, "Select Desert Eagle Skin");
3804 Iter = 0;
3805 while (Iter < 38)
3806 {
3807 FormatEx(Buffer, 256, g_DEagleSkins[Iter]);
3808 IntToString(Iter, Info, 8);
3809 AddMenuItem(pMenu, Info, Buffer, 0);
3810 Iter += 1;
3811 }
3812 }
3813 case 2:
3814 {
3815 SetMenuTitle(pMenu, "Select Dual Berettas Skin");
3816 Iter = 0;
3817 while (Iter < 32)
3818 {
3819 FormatEx(Buffer, 256, g_DualBerettasSkins[Iter]);
3820 IntToString(Iter, Info, 8);
3821 AddMenuItem(pMenu, Info, Buffer, 0);
3822 Iter += 1;
3823 }
3824 }
3825 case 3:
3826 {
3827 SetMenuTitle(pMenu, "Select Five-SeveN Skin");
3828 Iter = 0;
3829 while (Iter < 29)
3830 {
3831 FormatEx(Buffer, 256, g_FiveSeveNSKins[Iter]);
3832 IntToString(Iter, Info, 8);
3833 AddMenuItem(pMenu, Info, Buffer, 0);
3834 Iter += 1;
3835 }
3836 }
3837 case 4:
3838 {
3839 SetMenuTitle(pMenu, "Select Glock-18 Skin");
3840 Iter = 0;
3841 while (Iter < 35)
3842 {
3843 FormatEx(Buffer, 256, g_Glock18Skins[Iter]);
3844 IntToString(Iter, Info, 8);
3845 AddMenuItem(pMenu, Info, Buffer, 0);
3846 Iter += 1;
3847 }
3848 }
3849 case 7:
3850 {
3851 SetMenuTitle(pMenu, "Select AK-47 Skin");
3852 Iter = 0;
3853 while (Iter < 43)
3854 {
3855 FormatEx(Buffer, 256, g_Ak47Skins[Iter]);
3856 IntToString(Iter, Info, 8);
3857 AddMenuItem(pMenu, Info, Buffer, 0);
3858 Iter += 1;
3859 }
3860 }
3861 case 8:
3862 {
3863 SetMenuTitle(pMenu, "Select AUG Skin");
3864 Iter = 0;
3865 while (Iter < 31)
3866 {
3867 FormatEx(Buffer, 256, g_AugSkins[Iter]);
3868 IntToString(Iter, Info, 8);
3869 AddMenuItem(pMenu, Info, Buffer, 0);
3870 Iter += 1;
3871 }
3872 }
3873 case 9:
3874 {
3875 SetMenuTitle(pMenu, "Select AWP Skin");
3876 Iter = 0;
3877 while (Iter < 41)
3878 {
3879 FormatEx(Buffer, 256, g_AwpSkins[Iter]);
3880 IntToString(Iter, Info, 8);
3881 AddMenuItem(pMenu, Info, Buffer, 0);
3882 Iter += 1;
3883 }
3884 }
3885 case 10:
3886 {
3887 SetMenuTitle(pMenu, "Select FAMAS Skin");
3888 Iter = 0;
3889 while (Iter < 37)
3890 {
3891 FormatEx(Buffer, 256, g_FamasSkins[Iter]);
3892 IntToString(Iter, Info, 8);
3893 AddMenuItem(pMenu, Info, Buffer, 0);
3894 Iter += 1;
3895 }
3896 }
3897 case 11:
3898 {
3899 SetMenuTitle(pMenu, "Select G3SG1 Skin");
3900 Iter = 0;
3901 while (Iter < 30)
3902 {
3903 FormatEx(Buffer, 256, g_G3SG1Skins[Iter]);
3904 IntToString(Iter, Info, 8);
3905 AddMenuItem(pMenu, Info, Buffer, 0);
3906 Iter += 1;
3907 }
3908 }
3909 case 13:
3910 {
3911 SetMenuTitle(pMenu, "Select Galil AR Skin");
3912 Iter = 0;
3913 while (Iter < 38)
3914 {
3915 FormatEx(Buffer, 256, g_GalilARSkins[Iter]);
3916 IntToString(Iter, Info, 8);
3917 AddMenuItem(pMenu, Info, Buffer, 0);
3918 Iter += 1;
3919 }
3920 }
3921 case 14:
3922 {
3923 SetMenuTitle(pMenu, "Select M249 Skin");
3924 Iter = 0;
3925 while (Iter < 24)
3926 {
3927 FormatEx(Buffer, 256, g_M249Skins[Iter]);
3928 IntToString(Iter, Info, 8);
3929 AddMenuItem(pMenu, Info, Buffer, 0);
3930 Iter += 1;
3931 }
3932 }
3933 case 16:
3934 {
3935 SetMenuTitle(pMenu, "Select M4A4 Skin");
3936 Iter = 0;
3937 while (Iter < 42)
3938 {
3939 FormatEx(Buffer, 256, g_M4A4Skins[Iter]);
3940 IntToString(Iter, Info, 8);
3941 AddMenuItem(pMenu, Info, Buffer, 0);
3942 Iter += 1;
3943 }
3944 }
3945 case 17:
3946 {
3947 SetMenuTitle(pMenu, "Select MAC-10 Skin");
3948 Iter = 0;
3949 while (Iter < 35)
3950 {
3951 FormatEx(Buffer, 256, g_Mac10Skins[Iter]);
3952 IntToString(Iter, Info, 8);
3953 AddMenuItem(pMenu, Info, Buffer, 0);
3954 Iter += 1;
3955 }
3956 }
3957 case 19:
3958 {
3959 SetMenuTitle(pMenu, "Select P90 Skin");
3960 Iter = 0;
3961 while (Iter < 40)
3962 {
3963 FormatEx(Buffer, 256, g_P90Skins[Iter]);
3964 IntToString(Iter, Info, 8);
3965 AddMenuItem(pMenu, Info, Buffer, 0);
3966 Iter += 1;
3967 }
3968 }
3969 case 24:
3970 {
3971 SetMenuTitle(pMenu, "Select UMP-45 Skin");
3972 Iter = 0;
3973 while (Iter < 37)
3974 {
3975 FormatEx(Buffer, 256, g_Ump45Skins[Iter]);
3976 IntToString(Iter, Info, 8);
3977 AddMenuItem(pMenu, Info, Buffer, 0);
3978 Iter += 1;
3979 }
3980 }
3981 case 25:
3982 {
3983 SetMenuTitle(pMenu, "Select XM1014 Skin");
3984 Iter = 0;
3985 while (Iter < 34)
3986 {
3987 FormatEx(Buffer, 256, g_XM1014Skins[Iter]);
3988 IntToString(Iter, Info, 8);
3989 AddMenuItem(pMenu, Info, Buffer, 0);
3990 Iter += 1;
3991 }
3992 }
3993 case 26:
3994 {
3995 SetMenuTitle(pMenu, "Select PP-Bizon Skin");
3996 Iter = 0;
3997 while (Iter < 35)
3998 {
3999 FormatEx(Buffer, 256, g_PPBizonSkins[Iter]);
4000 IntToString(Iter, Info, 8);
4001 AddMenuItem(pMenu, Info, Buffer, 0);
4002 Iter += 1;
4003 }
4004 }
4005 case 27:
4006 {
4007 SetMenuTitle(pMenu, "Select MAG-7 Skin");
4008 Iter = 0;
4009 while (Iter < 32)
4010 {
4011 FormatEx(Buffer, 256, g_Mag7Skins[Iter]);
4012 IntToString(Iter, Info, 8);
4013 AddMenuItem(pMenu, Info, Buffer, 0);
4014 Iter += 1;
4015 }
4016 }
4017 case 28:
4018 {
4019 SetMenuTitle(pMenu, "Select Negev Skin");
4020 Iter = 0;
4021 while (Iter < 30)
4022 {
4023 FormatEx(Buffer, 256, g_NegevSkins[Iter]);
4024 IntToString(Iter, Info, 8);
4025 AddMenuItem(pMenu, Info, Buffer, 0);
4026 Iter += 1;
4027 }
4028 }
4029 case 29:
4030 {
4031 SetMenuTitle(pMenu, "Select Sawed-Off Skin");
4032 Iter = 0;
4033 while (Iter < 35)
4034 {
4035 FormatEx(Buffer, 256, g_SawedOffSkins[Iter]);
4036 IntToString(Iter, Info, 8);
4037 AddMenuItem(pMenu, Info, Buffer, 0);
4038 Iter += 1;
4039 }
4040 }
4041 case 30:
4042 {
4043 SetMenuTitle(pMenu, "Select Tec-9 Skin");
4044 Iter = 0;
4045 while (Iter < 34)
4046 {
4047 FormatEx(Buffer, 256, g_Tec9Skins[Iter]);
4048 IntToString(Iter, Info, 8);
4049 AddMenuItem(pMenu, Info, Buffer, 0);
4050 Iter += 1;
4051 }
4052 }
4053 case 32:
4054 {
4055 SetMenuTitle(pMenu, "Select P2000 Skin");
4056 Iter = 0;
4057 while (Iter < 33)
4058 {
4059 FormatEx(Buffer, 256, g_P2000Skins[Iter]);
4060 IntToString(Iter, Info, 8);
4061 AddMenuItem(pMenu, Info, Buffer, 0);
4062 Iter += 1;
4063 }
4064 }
4065 case 33:
4066 {
4067 SetMenuTitle(pMenu, "Select MP7 Skin");
4068 Iter = 0;
4069 while (Iter < 32)
4070 {
4071 FormatEx(Buffer, 256, g_Mp7Skins[Iter]);
4072 IntToString(Iter, Info, 8);
4073 AddMenuItem(pMenu, Info, Buffer, 0);
4074 Iter += 1;
4075 }
4076 }
4077 case 34:
4078 {
4079 SetMenuTitle(pMenu, "Select MP9 Skin");
4080 Iter = 0;
4081 while (Iter < 37)
4082 {
4083 FormatEx(Buffer, 256, g_Mp9Skins[Iter]);
4084 IntToString(Iter, Info, 8);
4085 AddMenuItem(pMenu, Info, Buffer, 0);
4086 Iter += 1;
4087 }
4088 }
4089 case 35:
4090 {
4091 SetMenuTitle(pMenu, "Select Nova Skin");
4092 Iter = 0;
4093 while (Iter < 35)
4094 {
4095 FormatEx(Buffer, 256, g_NovaSkins[Iter]);
4096 IntToString(Iter, Info, 8);
4097 AddMenuItem(pMenu, Info, Buffer, 0);
4098 Iter += 1;
4099 }
4100 }
4101 case 36:
4102 {
4103 SetMenuTitle(pMenu, "Select P250 Skin");
4104 Iter = 0;
4105 while (Iter < 34)
4106 {
4107 FormatEx(Buffer, 256, g_P250Skins[Iter]);
4108 IntToString(Iter, Info, 8);
4109 AddMenuItem(pMenu, Info, Buffer, 0);
4110 Iter += 1;
4111 }
4112 }
4113 case 38:
4114 {
4115 SetMenuTitle(pMenu, "Select SCAR-20 Skin");
4116 Iter = 0;
4117 while (Iter < 31)
4118 {
4119 FormatEx(Buffer, 256, g_Scar20Skins[Iter]);
4120 IntToString(Iter, Info, 8);
4121 AddMenuItem(pMenu, Info, Buffer, 0);
4122 Iter += 1;
4123 }
4124 }
4125 case 39:
4126 {
4127 SetMenuTitle(pMenu, "Select SG 553 Skin");
4128 Iter = 0;
4129 while (Iter < 32)
4130 {
4131 FormatEx(Buffer, 256, g_SG553Skins[Iter]);
4132 IntToString(Iter, Info, 8);
4133 AddMenuItem(pMenu, Info, Buffer, 0);
4134 Iter += 1;
4135 }
4136 }
4137 case 40:
4138 {
4139 SetMenuTitle(pMenu, "Select SSG 08 Skin");
4140 Iter = 0;
4141 while (Iter < 32)
4142 {
4143 FormatEx(Buffer, 256, g_SSG08Skins[Iter]);
4144 IntToString(Iter, Info, 8);
4145 AddMenuItem(pMenu, Info, Buffer, 0);
4146 Iter += 1;
4147 }
4148 }
4149 case 60:
4150 {
4151 SetMenuTitle(pMenu, "Select M4A1-S Skin");
4152 Iter = 0;
4153 while (Iter < 38)
4154 {
4155 FormatEx(Buffer, 256, g_M4A1Skins[Iter]);
4156 IntToString(Iter, Info, 8);
4157 AddMenuItem(pMenu, Info, Buffer, 0);
4158 Iter += 1;
4159 }
4160 }
4161 case 61:
4162 {
4163 SetMenuTitle(pMenu, "Select USP-S Skin");
4164 Iter = 0;
4165 while (Iter < 39)
4166 {
4167 FormatEx(Buffer, 256, g_UspSkins[Iter]);
4168 IntToString(Iter, Info, 8);
4169 AddMenuItem(pMenu, Info, Buffer, 0);
4170 Iter += 1;
4171 }
4172 }
4173 case 63:
4174 {
4175 SetMenuTitle(pMenu, "Select CZ75-Auto Skin");
4176 Iter = 0;
4177 while (Iter < 36)
4178 {
4179 FormatEx(Buffer, 256, g_CZ75AutoSkins[Iter]);
4180 IntToString(Iter, Info, 8);
4181 AddMenuItem(pMenu, Info, Buffer, 0);
4182 Iter += 1;
4183 }
4184 }
4185 case 64:
4186 {
4187 SetMenuTitle(pMenu, "Select R8 Revolver Skin");
4188 Iter = 0;
4189 while (Iter < 25)
4190 {
4191 FormatEx(Buffer, 256, g_RevolverSkins[Iter]);
4192 IntToString(Iter, Info, 8);
4193 AddMenuItem(pMenu, Info, Buffer, 0);
4194 Iter += 1;
4195 }
4196 }
4197 default:
4198 {
4199 SetMenuTitle(pMenu, "Select <???> Skin");
4200 AddMenuItem(pMenu, "0", "Default", 0);
4201 }
4202 }
4203 g_ItemDefinitionIndex[Client] = Id;
4204 DisplayMenu(pMenu, Client, 0);
4205 }
4206 }
4207 return Action:0;
4208}
4209
4210public Action:TimerHandler_DisplayStatTrakDetails(Handle:pTimer, any:Client)
4211{
4212 new var1;
4213 if (g_bIsInGame[Client] && !g_bMessageShown[Client])
4214 {
4215 PrintHintText(Client, "Type <font color='#00FF00'>!ST</font> for <font color='#FF0000'>StatTrakâ„¢</font> weapons.");
4216 PrintToChat(Client, ">> Type\x07 !ST\x01 for StatTrakâ„¢\x01 weapons.");
4217 g_bMessageShown[Client] = 1;
4218 }
4219 return Action:0;
4220}
4221
4222public .83232.my_Remove(Data)
4223{
4224 AcceptEntityInput(Data, "KillHierarchy", -1, -1, 0);
4225 return 0;
4226}
4227
4228public .83232.my_Remove(Data)
4229{
4230 AcceptEntityInput(Data, "KillHierarchy", -1, -1, 0);
4231 return 0;
4232}
4233
4234public .83292.ClassById(Id, String:Class[], Size)
4235{
4236 switch (Id)
4237 {
4238 case 1:
4239 {
4240 FormatEx(Class, Size, "weapon_deagle");
4241 }
4242 case 2:
4243 {
4244 FormatEx(Class, Size, "weapon_elite");
4245 }
4246 case 3:
4247 {
4248 FormatEx(Class, Size, "weapon_fiveseven");
4249 }
4250 case 4:
4251 {
4252 FormatEx(Class, Size, "weapon_glock");
4253 }
4254 case 7:
4255 {
4256 FormatEx(Class, Size, "weapon_ak47");
4257 }
4258 case 8:
4259 {
4260 FormatEx(Class, Size, "weapon_aug");
4261 }
4262 case 9:
4263 {
4264 FormatEx(Class, Size, "weapon_awp");
4265 }
4266 case 10:
4267 {
4268 FormatEx(Class, Size, "weapon_famas");
4269 }
4270 case 11:
4271 {
4272 FormatEx(Class, Size, "weapon_g3sg1");
4273 }
4274 case 13:
4275 {
4276 FormatEx(Class, Size, "weapon_galilar");
4277 }
4278 case 14:
4279 {
4280 FormatEx(Class, Size, "weapon_m249");
4281 }
4282 case 16:
4283 {
4284 FormatEx(Class, Size, "weapon_m4a1");
4285 }
4286 case 17:
4287 {
4288 FormatEx(Class, Size, "weapon_mac10");
4289 }
4290 case 19:
4291 {
4292 FormatEx(Class, Size, "weapon_p90");
4293 }
4294 case 24:
4295 {
4296 FormatEx(Class, Size, "weapon_ump45");
4297 }
4298 case 25:
4299 {
4300 FormatEx(Class, Size, "weapon_xm1014");
4301 }
4302 case 26:
4303 {
4304 FormatEx(Class, Size, "weapon_bizon");
4305 }
4306 case 27:
4307 {
4308 FormatEx(Class, Size, "weapon_mag7");
4309 }
4310 case 28:
4311 {
4312 FormatEx(Class, Size, "weapon_negev");
4313 }
4314 case 29:
4315 {
4316 FormatEx(Class, Size, "weapon_sawedoff");
4317 }
4318 case 30:
4319 {
4320 FormatEx(Class, Size, "weapon_tec9");
4321 }
4322 case 32:
4323 {
4324 FormatEx(Class, Size, "weapon_hkp2000");
4325 }
4326 case 33:
4327 {
4328 FormatEx(Class, Size, "weapon_mp7");
4329 }
4330 case 34:
4331 {
4332 FormatEx(Class, Size, "weapon_mp9");
4333 }
4334 case 35:
4335 {
4336 FormatEx(Class, Size, "weapon_nova");
4337 }
4338 case 36:
4339 {
4340 FormatEx(Class, Size, "weapon_p250");
4341 }
4342 case 38:
4343 {
4344 FormatEx(Class, Size, "weapon_scar20");
4345 }
4346 case 39:
4347 {
4348 FormatEx(Class, Size, "weapon_sg556");
4349 }
4350 case 40:
4351 {
4352 FormatEx(Class, Size, "weapon_ssg08");
4353 }
4354 case 42:
4355 {
4356 FormatEx(Class, Size, "weapon_knife");
4357 }
4358 case 59:
4359 {
4360 FormatEx(Class, Size, "weapon_knife_t");
4361 }
4362 case 60:
4363 {
4364 FormatEx(Class, Size, "weapon_m4a1_silencer");
4365 }
4366 case 61:
4367 {
4368 FormatEx(Class, Size, "weapon_usp_silencer");
4369 }
4370 case 63:
4371 {
4372 FormatEx(Class, Size, "weapon_cz75a");
4373 }
4374 case 64:
4375 {
4376 FormatEx(Class, Size, "weapon_revolver");
4377 }
4378 case 500:
4379 {
4380 FormatEx(Class, Size, "weapon_bayonet");
4381 }
4382 case 505:
4383 {
4384 FormatEx(Class, Size, "weapon_knife_flip");
4385 }
4386 case 506:
4387 {
4388 FormatEx(Class, Size, "weapon_knife_gut");
4389 }
4390 case 507:
4391 {
4392 FormatEx(Class, Size, "weapon_knife_karambit");
4393 }
4394 case 508:
4395 {
4396 FormatEx(Class, Size, "weapon_knife_m9_bayonet");
4397 }
4398 case 509:
4399 {
4400 FormatEx(Class, Size, "weapon_knife_tactical");
4401 }
4402 case 512:
4403 {
4404 FormatEx(Class, Size, "weapon_knife_falchion");
4405 }
4406 case 514:
4407 {
4408 FormatEx(Class, Size, "weapon_knife_survival_bowie");
4409 }
4410 case 515:
4411 {
4412 FormatEx(Class, Size, "weapon_knife_butterfly");
4413 }
4414 case 516:
4415 {
4416 FormatEx(Class, Size, "weapon_knife_push");
4417 }
4418 default:
4419 {
4420 Class[0] = MissingTAG:0;
4421 }
4422 }
4423 new var1;
4424 if (Class[0])
4425 {
4426 var1 = 1;
4427 }
4428 else
4429 {
4430 var1 = 0;
4431 }
4432 return var1;
4433}
4434
4435public .83292.ClassById(Id, String:Class[], Size)
4436{
4437 switch (Id)
4438 {
4439 case 1:
4440 {
4441 FormatEx(Class, Size, "weapon_deagle");
4442 }
4443 case 2:
4444 {
4445 FormatEx(Class, Size, "weapon_elite");
4446 }
4447 case 3:
4448 {
4449 FormatEx(Class, Size, "weapon_fiveseven");
4450 }
4451 case 4:
4452 {
4453 FormatEx(Class, Size, "weapon_glock");
4454 }
4455 case 7:
4456 {
4457 FormatEx(Class, Size, "weapon_ak47");
4458 }
4459 case 8:
4460 {
4461 FormatEx(Class, Size, "weapon_aug");
4462 }
4463 case 9:
4464 {
4465 FormatEx(Class, Size, "weapon_awp");
4466 }
4467 case 10:
4468 {
4469 FormatEx(Class, Size, "weapon_famas");
4470 }
4471 case 11:
4472 {
4473 FormatEx(Class, Size, "weapon_g3sg1");
4474 }
4475 case 13:
4476 {
4477 FormatEx(Class, Size, "weapon_galilar");
4478 }
4479 case 14:
4480 {
4481 FormatEx(Class, Size, "weapon_m249");
4482 }
4483 case 16:
4484 {
4485 FormatEx(Class, Size, "weapon_m4a1");
4486 }
4487 case 17:
4488 {
4489 FormatEx(Class, Size, "weapon_mac10");
4490 }
4491 case 19:
4492 {
4493 FormatEx(Class, Size, "weapon_p90");
4494 }
4495 case 24:
4496 {
4497 FormatEx(Class, Size, "weapon_ump45");
4498 }
4499 case 25:
4500 {
4501 FormatEx(Class, Size, "weapon_xm1014");
4502 }
4503 case 26:
4504 {
4505 FormatEx(Class, Size, "weapon_bizon");
4506 }
4507 case 27:
4508 {
4509 FormatEx(Class, Size, "weapon_mag7");
4510 }
4511 case 28:
4512 {
4513 FormatEx(Class, Size, "weapon_negev");
4514 }
4515 case 29:
4516 {
4517 FormatEx(Class, Size, "weapon_sawedoff");
4518 }
4519 case 30:
4520 {
4521 FormatEx(Class, Size, "weapon_tec9");
4522 }
4523 case 32:
4524 {
4525 FormatEx(Class, Size, "weapon_hkp2000");
4526 }
4527 case 33:
4528 {
4529 FormatEx(Class, Size, "weapon_mp7");
4530 }
4531 case 34:
4532 {
4533 FormatEx(Class, Size, "weapon_mp9");
4534 }
4535 case 35:
4536 {
4537 FormatEx(Class, Size, "weapon_nova");
4538 }
4539 case 36:
4540 {
4541 FormatEx(Class, Size, "weapon_p250");
4542 }
4543 case 38:
4544 {
4545 FormatEx(Class, Size, "weapon_scar20");
4546 }
4547 case 39:
4548 {
4549 FormatEx(Class, Size, "weapon_sg556");
4550 }
4551 case 40:
4552 {
4553 FormatEx(Class, Size, "weapon_ssg08");
4554 }
4555 case 42:
4556 {
4557 FormatEx(Class, Size, "weapon_knife");
4558 }
4559 case 59:
4560 {
4561 FormatEx(Class, Size, "weapon_knife_t");
4562 }
4563 case 60:
4564 {
4565 FormatEx(Class, Size, "weapon_m4a1_silencer");
4566 }
4567 case 61:
4568 {
4569 FormatEx(Class, Size, "weapon_usp_silencer");
4570 }
4571 case 63:
4572 {
4573 FormatEx(Class, Size, "weapon_cz75a");
4574 }
4575 case 64:
4576 {
4577 FormatEx(Class, Size, "weapon_revolver");
4578 }
4579 case 500:
4580 {
4581 FormatEx(Class, Size, "weapon_bayonet");
4582 }
4583 case 505:
4584 {
4585 FormatEx(Class, Size, "weapon_knife_flip");
4586 }
4587 case 506:
4588 {
4589 FormatEx(Class, Size, "weapon_knife_gut");
4590 }
4591 case 507:
4592 {
4593 FormatEx(Class, Size, "weapon_knife_karambit");
4594 }
4595 case 508:
4596 {
4597 FormatEx(Class, Size, "weapon_knife_m9_bayonet");
4598 }
4599 case 509:
4600 {
4601 FormatEx(Class, Size, "weapon_knife_tactical");
4602 }
4603 case 512:
4604 {
4605 FormatEx(Class, Size, "weapon_knife_falchion");
4606 }
4607 case 514:
4608 {
4609 FormatEx(Class, Size, "weapon_knife_survival_bowie");
4610 }
4611 case 515:
4612 {
4613 FormatEx(Class, Size, "weapon_knife_butterfly");
4614 }
4615 case 516:
4616 {
4617 FormatEx(Class, Size, "weapon_knife_push");
4618 }
4619 default:
4620 {
4621 Class[0] = MissingTAG:0;
4622 }
4623 }
4624 new var1;
4625 if (Class[0])
4626 {
4627 var1 = 1;
4628 }
4629 else
4630 {
4631 var1 = 0;
4632 }
4633 return var1;
4634}
4635
4636public .85760.IDIByClass(String:szClass[])
4637{
4638 if (!strcmp(szClass, "weapon_bayonet", true))
4639 {
4640 return 500;
4641 }
4642 if (!strcmp(szClass, "weapon_knife_flip", true))
4643 {
4644 return 505;
4645 }
4646 if (!strcmp(szClass, "weapon_knife_gut", true))
4647 {
4648 return 506;
4649 }
4650 if (!strcmp(szClass, "weapon_knife_karambit", true))
4651 {
4652 return 507;
4653 }
4654 if (!strcmp(szClass, "weapon_knife_m9_bayonet", true))
4655 {
4656 return 508;
4657 }
4658 if (!strcmp(szClass, "weapon_knife_tactical", true))
4659 {
4660 return 509;
4661 }
4662 if (!strcmp(szClass, "weapon_knife_falchion", true))
4663 {
4664 return 512;
4665 }
4666 if (!strcmp(szClass, "weapon_knife_survival_bowie", true))
4667 {
4668 return 514;
4669 }
4670 if (!strcmp(szClass, "weapon_knife_butterfly", true))
4671 {
4672 return 515;
4673 }
4674 if (!strcmp(szClass, "weapon_knife_push", true))
4675 {
4676 return 516;
4677 }
4678 if (!strcmp(szClass, "weapon_knife", true))
4679 {
4680 return 42;
4681 }
4682 if (!strcmp(szClass, "weapon_knife_t", true))
4683 {
4684 return 59;
4685 }
4686 return 0;
4687}
4688
4689public .85760.IDIByClass(String:szClass[])
4690{
4691 if (!strcmp(szClass, "weapon_bayonet", true))
4692 {
4693 return 500;
4694 }
4695 if (!strcmp(szClass, "weapon_knife_flip", true))
4696 {
4697 return 505;
4698 }
4699 if (!strcmp(szClass, "weapon_knife_gut", true))
4700 {
4701 return 506;
4702 }
4703 if (!strcmp(szClass, "weapon_knife_karambit", true))
4704 {
4705 return 507;
4706 }
4707 if (!strcmp(szClass, "weapon_knife_m9_bayonet", true))
4708 {
4709 return 508;
4710 }
4711 if (!strcmp(szClass, "weapon_knife_tactical", true))
4712 {
4713 return 509;
4714 }
4715 if (!strcmp(szClass, "weapon_knife_falchion", true))
4716 {
4717 return 512;
4718 }
4719 if (!strcmp(szClass, "weapon_knife_survival_bowie", true))
4720 {
4721 return 514;
4722 }
4723 if (!strcmp(szClass, "weapon_knife_butterfly", true))
4724 {
4725 return 515;
4726 }
4727 if (!strcmp(szClass, "weapon_knife_push", true))
4728 {
4729 return 516;
4730 }
4731 if (!strcmp(szClass, "weapon_knife", true))
4732 {
4733 return 42;
4734 }
4735 if (!strcmp(szClass, "weapon_knife_t", true))
4736 {
4737 return 59;
4738 }
4739 return 0;
4740}
4741
4742public .86548.hCSGO_PureChatCommand(String:Input[], String:Output[], Size)
4743{
4744 static m_Length;
4745 static m_Iterator;
4746 m_Iterator = 0;
4747 m_Length = 0;
4748 Output[0] = MissingTAG:0;
4749 while (strlen(Input) > m_Iterator)
4750 {
4751 new var1;
4752 if (Input[m_Iterator] == '!' || Input[m_Iterator] == '/' || IsCharAlpha(Input[m_Iterator]) || IsCharNumeric(Input[m_Iterator]))
4753 {
4754 m_Length = Format(Output, Size, "%s%c", Output, Input[m_Iterator]);
4755 }
4756 m_Iterator += 1;
4757 }
4758 return m_Length;
4759}
4760
4761public .86548.hCSGO_PureChatCommand(String:Input[], String:Output[], Size)
4762{
4763 static m_Length;
4764 static m_Iterator;
4765 m_Iterator = 0;
4766 m_Length = 0;
4767 Output[0] = MissingTAG:0;
4768 while (strlen(Input) > m_Iterator)
4769 {
4770 new var1;
4771 if (Input[m_Iterator] == '!' || Input[m_Iterator] == '/' || IsCharAlpha(Input[m_Iterator]) || IsCharNumeric(Input[m_Iterator]))
4772 {
4773 m_Length = Format(Output, Size, "%s%c", Output, Input[m_Iterator]);
4774 }
4775 m_Iterator += 1;
4776 }
4777 return m_Length;
4778}