Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Wklejka 1fcd2i6i95906 dodana przez PROKOP, 05.07.2015 20:00
Typ:



JB SHOP
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
400.
401.
402.
403.
404.
405.
406.
407.
408.
409.
410.
411.
412.
413.
414.
415.
416.
417.
418.
419.
420.
421.
422.
423.
424.
425.
426.
427.
428.
429.
430.
431.
432.
433.
434.
435.
436.
437.
438.
439.
440.
441.
442.
443.
444.
445.
446.
447.
448.
449.
450.
451.
452.
453.
454.
455.
456.
457.
458.
459.
460.
461.
462.
463.
464.
465.
466.
467.
468.
469.
470.
471.
472.
473.
474.
475.
476.
477.
478.
479.
480.
481.
482.
483.
484.
485.
486.
487.
488.
489.
490.
491.
492.
493.
494.
495.
496.
497.
498.
499.
500.
501.
502.
503.
504.
505.
506.
507.
508.
509.
510.
511.
512.
513.
514.
515.
516.
517.
518.
519.
520.
521.
522.
523.
524.
525.
526.
527.
528.
529.
530.
531.
532.
533.
534.
535.
536.
537.
538.
539.
540.
541.
542.
543.
544.
545.
546.
547.
548.
549.
550.
551.
552.
553.
554.
555.
556.
557.
558.
559.
560.
561.
562.
563.
564.
565.
566.
567.
568.
569.
570.
571.
572.
573.
574.
575.
576.
577.
578.
579.
580.
581.
582.
583.
584.
585.
586.
587.
588.
589.
590.
591.
592.
593.
594.
595.
596.
597.
598.
599.
600.
601.
602.
603.
604.
605.
606.
607.
608.
609.
610.
611.
612.
613.
614.
615.
616.
617.
618.
619.
620.
621.
622.
623.
624.
625.
626.
627.
628.
629.
630.
631.
632.
633.
634.
635.
636.
637.
638.
639.
640.
641.
642.
643.
644.
645.
646.
647.
648.
649.
650.
651.
652.
653.
654.
655.
656.
657.
658.
659.
660.
661.
662.
663.
664.
665.
666.
667.
668.
669.
670.
671.
672.
673.
674.
675.
676.
677.
678.
679.
680.
681.
682.
683.
684.
685.
686.
687.
688.
689.
690.
691.
692.
693.
694.
695.
696.
697.
698.
699.
700.
701.
702.
703.
704.
705.
706.
707.
708.
709.
710.
711.
712.
713.
714.
715.
716.
717.
718.
719.
720.
721.
722.
723.
724.
725.
726.
727.
728.
729.
730.
731.
732.
733.
734.
735.
736.
737.
738.
739.
740.
741.
742.
743.
744.
745.
746.
747.
748.
749.
750.
751.
752.
753.
754.
755.
756.
757.
758.
759.
760.
761.
762.
763.
764.
765.
766.
767.
768.
769.
770.
771.
772.
773.
774.
775.
776.
777.
778.
779.
780.
781.
782.
783.
784.
785.
786.
787.
788.
789.
790.
791.
792.
793.
794.
795.
796.
797.
798.
799.
800.
801.
802.
803.
804.
805.
806.
807.
808.
809.
810.
811.
812.
813.
814.
815.
816.
817.
818.
819.
820.
821.
822.
823.
824.
825.
826.
827.
828.
829.
830.
831.
832.
833.
834.
835.
836.
837.
838.
839.
840.
841.
842.
843.
844.
845.
846.
847.
848.
849.
850.
851.
852.
853.
854.
855.
856.
857.
858.
859.
860.
861.
862.
863.
864.
865.
866.
867.
868.
869.
870.
871.
872.
873.
874.
875.
876.
877.
878.
879.
880.
881.
882.
883.
884.
885.
886.
887.
888.
889.
890.
891.
892.
893.
894.
895.
896.
897.
898.
899.
900.
901.
902.
903.
904.
905.
906.
907.
908.
909.
910.
911.
912.
913.
914.
915.
916.
917.
918.
919.
920.
921.
922.
923.
924.
925.
926.
927.
928.
929.
930.
931.
932.
933.
934.
935.
936.
937.
938.
939.
940.
941.
942.
943.
944.
945.
946.
947.
948.
949.
950.
951.
952.
953.
954.
955.
956.
957.
958.
959.
960.
961.
962.
963.
964.
965.
966.
967.
968.
969.
970.
971.
972.
973.
974.
975.
976.
977.
978.
979.
980.
981.
982.
983.
984.
985.
986.
987.
988.
989.
990.
991.
992.
993.
994.
995.
996.
997.
998.
999.
1000.
1001.
1002.
1003.
1004.
1005.
1006.
1007.
1008.
1009.
1010.
1011.
1012.
1013.
1014.
1015.
1016.
1017.
1018.
1019.
1020.
1021.
1022.
1023.
1024.
1025.
1026.
1027.
1028.
1029.
1030.
1031.
1032.
1033.
1034.
1035.
1036.
1037.
1038.
1039.
1040.
1041.
1042.
1043.
1044.
1045.
1046.
1047.
1048.
1049.
1050.
1051.
1052.
1053.
1054.
1055.
1056.
1057.
1058.
1059.
1060.
1061.
1062.
1063.
1064.
1065.
1066.
1067.
1068.
1069.
1070.
1071.
1072.
1073.
1074.
1075.
1076.
1077.
1078.
1079.
1080.
1081.
1082.
1083.
1084.
1085.
1086.
1087.
1088.
1089.
1090.
1091.
1092.
1093.
1094.
1095.
1096.
1097.
1098.
1099.
1100.
1101.
1102.
1103.
1104.
1105.
1106.
1107.
1108.
1109.
1110.
1111.
1112.
1113.
1114.
1115.
1116.
1117.
1118.
1119.
1120.
1121.
1122.
1123.
1124.
1125.
1126.
1127.
1128.
1129.
1130.
1131.
1132.
1133.
1134.
1135.
1136.
1137.
1138.
1139.
1140.
1141.
1142.
1143.
1144.
1145.
1146.
1147.
1148.
1149.
1150.
1151.
1152.
1153.
1154.
1155.
1156.
1157.
1158.
1159.
1160.
1161.
1162.
1163.
1164.
1165.
1166.
1167.
1168.
1169.
1170.
1171.
1172.
1173.
1174.
1175.
1176.
1177.
1178.
1179.
1180.
1181.
1182.
1183.
1184.
1185.
1186.
1187.
1188.
1189.
1190.
1191.
1192.
1193.
1194.
1195.
1196.
1197.
1198.
1199.
1200.
1201.
1202.
1203.
1204.
1205.
1206.
1207.
1208.
1209.
1210.
1211.
1212.
1213.
1214.
1215.
1216.
1217.
1218.
1219.
1220.
1221.
1222.
1223.
1224.
1225.
1226.
1227.
1228.
1229.
1230.
1231.
1232.
1233.
1234.
1235.
1236.
1237.
1238.
1239.
1240.
1241.
1242.
1243.
1244.
1245.
1246.
1247.
1248.
1249.
1250.
1251.
1252.
1253.
1254.
1255.
1256.
1257.
1258.
1259.
1260.
1261.
1262.
1263.
1264.
1265.
1266.
1267.
1268.
1269.
1270.
1271.
1272.
1273.
1274.
1275.
1276.
1277.
1278.
1279.
1280.
1281.
1282.
1283.
1284.
1285.
1286.
1287.
1288.
1289.
1290.
1291.
1292.
1293.
1294.
1295.
1296.
1297.
1298.
1299.
1300.
1301.
1302.
1303.
1304.
1305.
1306.
1307.
1308.
1309.
1310.
1311.
1312.
1313.
1314.
1315.
1316.
1317.
1318.
1319.
1320.
1321.
1322.
1323.
1324.
1325.
1326.
1327.
1328.
1329.
1330.
1331.
1332.
1333.
1334.
1335.
1336.
1337.
1338.
1339.
1340.
1341.
1342.
1343.
1344.
1345.
1346.
1347.
1348.
1349.
1350.
1351.
1352.
1353.
1354.
1355.
1356.
1357.
1358.
1359.
1360.
1361.
1362.
1363.
1364.
1365.
1366.
1367.
1368.
1369.
1370.
1371.
1372.
1373.
1374.
1375.
1376.
1377.
1378.
1379.
1380.
1381.
1382.
1383.
1384.
1385.
1386.
1387.
1388.
1389.
1390.
1391.
1392.
1393.
1394.
1395.
1396.
1397.
1398.
1399.
1400.
1401.
1402.
1403.
1404.
1405.
1406.
1407.
1408.
1409.
1410.
1411.
1412.
1413.
1414.
1415.
1416.
1417.
1418.
1419.
1420.
1421.
1422.
1423.
1424.
1425.
1426.
1427.
1428.
1429.
1430.
1431.
1432.
1433.
1434.
1435.
1436.
1437.
1438.
1439.
1440.
1441.
1442.
1443.
1444.
1445.
1446.
1447.
1448.
1449.
1450.
1451.
1452.
1453.
1454.
1455.
1456.
1457.
1458.
1459.
1460.
1461.
1462.
1463.
1464.
1465.
1466.
1467.
1468.
1469.
1470.
1471.
1472.
1473.
1474.
1475.
1476.
1477.
1478.
1479.
1480.
1481.
1482.
1483.
1484.
1485.
1486.
1487.
1488.
1489.
1490.
1491.
1492.
1493.
1494.
1495.
1496.
1497.
1498.
1499.
1500.
1501.
1502.
1503.
1504.
1505.
1506.
1507.
1508.
1509.
1510.
1511.
1512.
1513.
1514.
1515.
1516.
1517.
1518.
1519.
1520.
1521.
1522.
1523.
1524.
1525.
1526.
1527.
1528.
1529.
1530.
1531.
1532.
1533.
1534.
1535.
1536.
1537.
1538.
1539.
1540.
1541.
1542.
1543.
1544.
1545.
1546.
1547.
1548.
1549.
1550.
1551.
1552.
1553.
1554.
1555.
1556.
1557.
1558.
1559.
1560.
1561.
1562.
1563.
1564.
1565.
1566.
1567.
1568.
1569.
1570.
1571.
1572.
1573.
1574.
1575.
1576.
1577.
1578.
1579.
1580.
1581.
1582.
1583.
1584.
1585.
1586.
1587.
1588.
1589.
1590.
1591.
1592.
1593.
1594.
1595.
1596.
1597.
1598.
1599.
1600.
1601.
1602.
1603.
1604.
1605.
1606.
1607.
1608.
1609.
1610.
1611.
1612.
1613.
1614.
1615.
1616.
1617.
1618.
1619.
1620.
1621.
1622.
1623.
1624.
1625.
1626.
1627.
1628.
1629.
1630.
1631.
1632.
1633.
1634.
1635.
1636.
1637.
1638.
1639.
1640.
1641.
1642.
1643.
1644.
1645.
1646.
1647.
1648.
1649.
1650.
1651.
1652.
1653.
1654.
1655.
1656.
1657.
1658.
1659.
1660.
1661.
1662.
1663.
1664.
1665.
1666.
1667.
1668.
1669.
1670.
1671.
1672.
1673.
1674.
1675.
1676.
1677.
1678.
1679.
1680.
1681.
1682.
1683.
1684.
1685.
1686.
1687.
1688.
1689.
1690.
1691.
1692.
1693.
1694.
1695.
1696.
1697.
1698.
1699.
#include <sourcemod>
#include <sdktools>
#include <sdktools_sound>
#include <cstrike>
#include <clientprefs>
#include <smlib> 
#include <sdkhooks>
#include <csgocolors>
 
#pragma semicolon 1
 
new bool:g_Ivisivel[MAXPLAYERS+1] = {false, ...};
new bool:g_Godmode[MAXPLAYERS+1] = {false, ...};
new bool:poison[MAXPLAYERS+1] = {false, ...};
new bool:vampire[MAXPLAYERS+1] = {false, ...};
new bool:super_faca[MAXPLAYERS+1] = {false, ...};
new bool:view[MAXPLAYERS+1] = {false, ...};
new bool:fogo[MAXPLAYERS+1] = {false, ...};
new bool:AWP[MAXPLAYERS+1] = {true,...};
new bool:EAGLE[MAXPLAYERS+1] = {true, ...};
new bool:bhop[MAXPLAYERS+1] = {false, ...};
 
#define VERSION "Private version"
 
new g_iCreditos[MAXPLAYERS+1];
 
new iEnt;
new String:EntityList[][] = {
 
	"func_door",
	"func_rotating",
	"func_walltoggle",
    "func_breakable",
	"func_door_rotating",
	"func_movelinear",
	"prop_door",
	"prop_door_rotating",
	"func_tracktrain",
	"func_elevator",
	""
};
 
 
new Handle:cvarCreditosMax = INVALID_HANDLE;
new Handle:cvarCreditosKill_CT = INVALID_HANDLE;
new Handle:cvarCreditosKill_T = INVALID_HANDLE;
new Handle:cvarCreditos_LR = INVALID_HANDLE;
new Handle:cvarCreditosKill_CT_VIP = INVALID_HANDLE;
new Handle:cvarCreditosKill_T_VIP = INVALID_HANDLE;
new Handle:cvarCreditos_LR_VIP = INVALID_HANDLE;
new Handle:cvarCreditosSave = INVALID_HANDLE;
new Handle:cvarTronly = INVALID_HANDLE;
new Handle:cvarEnableRevive = INVALID_HANDLE;
new Handle:cvarSpawnMsg = INVALID_HANDLE;
new Handle:cvarCreditsOnWarmup = INVALID_HANDLE;
new Handle:cvarMinPlayersToGetCredits = INVALID_HANDLE;
new Handle:cvar_1;
new Handle:cvar_2;
new Handle:cvar_3;
new Handle:cvar_4;
new Handle:cvar_5;
new Handle:cvar_6;
new Handle:cvar_7;
new Handle:cvar_8;
new Handle:cvar_9;
new Handle:cvar_10;
new Handle:cvar_11;
new Handle:cvar_12;
new Handle:cvar_14;
new Handle:cvar_15;
new Handle:cvar_16;
new Handle:cvar_17;
new Handle:cvar_18;
 
 
//new Handle:cvarRoundCreditos = INVALID_HANDLE;
//new Handle:cvarCrInterval = INVALID_HANDLE;
 
new Handle:c_GameCreditos = INVALID_HANDLE;
 
new g_sprite;
new g_HaloSprite;
 
 
public Plugin:myinfo =
{
    name = "Shop Jail",
    author = "Dk--",
    description = "Comprar itens no shop jailbreak",
    version = VERSION,
};
 
public OnPluginStart()
{
 
	LoadTranslations("common.phrases");
	LoadTranslations("jail_shop.phrases");
	c_GameCreditos = RegClientCookie("Creditos", "Creditos", CookieAccess_Private);
 
	// ======================================================================
 
	HookEvent("player_spawn", PlayerSpawn);
	HookEvent("player_death", PlayerDeath);
	HookEvent("smokegrenade_detonate", Event_SmokeGrenadeDetonate, EventHookMode_Post);
	HookEvent("smokegrenade_detonate", Event_SmokeGrenadeDetonate2, EventHookMode_Post);
	HookEvent("player_hurt",EventPlayerHurt, EventHookMode_Pre);
	HookEvent("round_end", Event_OnRoundEnd);
 
	// ======================================================================
 
	RegConsoleCmd("sm_shop", SHOPMENU);
	RegConsoleCmd("sm_credits", Creditos);
	RegConsoleCmd("sm_gift", Command_SendCredits);
	RegConsoleCmd("sm_reviver", Reviver);
	RegConsoleCmd("sm_vercreditos", Command_ShowCredits);
 
	RegAdminCmd("sm_give", SetCreditos, ADMFLAG_ROOT);
	RegAdminCmd("sm_set", SetCreditos2, ADMFLAG_ROOT);
	// ======================================================================
 
	// ======================================================================
 
	cvarCreditosMax = CreateConVar("shop_creditos_maximo", "500000", "Maxim of credits for player");
	cvarCreditosKill_T = CreateConVar("shop_creditos_por_kill_t", "150", "Amount of credits for kill ( prisioner )");
	cvarCreditosKill_CT = CreateConVar("shop_creditos_por_kill_ct", "15", "Amount of credits for kill ( guard )");
	cvarCreditos_LR = CreateConVar("shop_creditos_por_kill_lr", "300", "Amount of credits for the last player");
	cvarCreditosKill_T_VIP = CreateConVar("shop_creditos_por_kill_t_vip", "150", "Amount of credits for kill ( prisioner ) for VIP (flag a)");
	cvarCreditosKill_CT_VIP = CreateConVar("shop_creditos_por_kill_ct_vip", "15", "Amount of credits for kill ( guard ) for VIP (flag a)");
	cvarCreditos_LR_VIP = CreateConVar("shop_creditos_por_kill_lr_vip", "300", "Amount of credits for the last player for VIP (flag a)");
	cvarSpawnMsg = CreateConVar("shop_spawnmessages", "1", "Messages on spawn", FCVAR_NONE, true, 0.0, true, 1.0);
	cvarCreditosSave = CreateConVar("shop_creditos_save", "1", "Save or not credits on player disconnect", FCVAR_NONE, true, 0.0, true, 1.0);
	cvarTronly = CreateConVar("shop_terrorist_only", "1", "Menu for only prisioners", FCVAR_NONE, true, 0.0, true, 1.0); 
	cvarEnableRevive = CreateConVar("shop_ativar_revive", "1", "Enable/Disble revive", FCVAR_NONE, true, 0.0, true, 1.0); 
	cvarCreditsOnWarmup = CreateConVar("shop_warmupcredits", "0", "Should players get credits on warmup?");
	cvarMinPlayersToGetCredits = CreateConVar("shop_minplayers", "4", "Minimum players to get credits");
 
	cvar_1 = CreateConVar("preco_01", "7000", "Price of item (invisible)");
	cvar_2 = CreateConVar("preco_02", "2000", "Price of item (awp)");
	cvar_3 = CreateConVar("preco_03", "7000", "Price of item (imortal)");
	cvar_4 = CreateConVar("preco_04", "800", "Price of item (open jails)");
	cvar_5 = CreateConVar("preco_05", "4000", "Price of item (more fast)");
	cvar_6 = CreateConVar("preco_06", "3500", "Price of item (hp)");
	cvar_7 = CreateConVar("preco_07", "2000", "Price of item (eagle)");
	cvar_8 = CreateConVar("preco_08", "1500", "Price of item (super knife)");
	cvar_9 = CreateConVar("preco_09", "50", "Price of item (healing)");
	cvar_10 = CreateConVar("preco_10", "650", "Price of item (molotov)");
	cvar_11 = CreateConVar("preco_11", "7000", "Price of item (skin)");
	cvar_12 = CreateConVar("preco_12", "1000", "Price of item (poison smoke)");
	cvar_14 = CreateConVar("preco_14", "8000", "Price of item (smoke teleport)");
	cvar_15 = CreateConVar("preco_15", "8000", "Price of item (respawn)");
	cvar_16 = CreateConVar("preco_16", "2000", "Price of item (he with fire)");
	cvar_17 = CreateConVar("preco_17", "5000", "Price of item (bhop)");
	cvar_18 = CreateConVar("preco_18", "2500", "Price of item (low gravity)");
 
 
	if(GetConVarBool(cvarCreditosSave))
	{
		for(new client = 1; client <= MaxClients; client++)
		{
			if(IsClientInGame(client))
			{
				if(AreClientCookiesCached(client))
				{
					OnClientCookiesCached(client);
				}
			}
		}
	}
 
	AutoExecConfig(true, "sm_shopjail");
 
}
 
 
public OnPluginEnd()
{
	if(!GetConVarBool(cvarCreditosSave))
		return;
 
	for(new client = 1; client <= MaxClients; client++)
	{
		if(IsClientInGame(client))
		{
			OnClientDisconnect(client);
		}
	}
}
 
 
public OnClientCookiesCached(client)
{
	if(!GetConVarBool(cvarCreditosSave))
		return;
 
	new String:CreditosString[12];
	GetClientCookie(client, c_GameCreditos, CreditosString, sizeof(CreditosString));
	g_iCreditos[client]  = StringToInt(CreditosString);
}  
 
public OnClientDisconnect(client)
{	
	if(!GetConVarBool(cvarCreditosSave))
	{
		g_iCreditos[client] = 0;
		return;
	}
 
	if(AreClientCookiesCached(client))
	{
		new String:CreditosString[12];
		Format(CreditosString, sizeof(CreditosString), "%i", g_iCreditos[client]);
		SetClientCookie(client, c_GameCreditos, CreditosString);
	}
 
}
 
 
public OnMapStart()
{
	g_sprite = PrecacheModel("materials/sprites/laserbeam.vmt", true);
	g_HaloSprite = PrecacheModel("materials/sprites/halo.vmt", true);
}
 
 
public Action:MensajesSpawn(Handle:timer, any:client)
{
	if(GetConVarBool(cvarSpawnMsg) && IsClientInGame(client))
	{
		CPrintToChat(client, "x0E[ SHOP ] x04%t","Kill");
		CPrintToChat(client, "x0E[ SHOP ] x04%t","Type");
	}
}
 
public Action:PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
	new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
 
	CreateTimer(2.0, MensajesMuerte, client);
 
 
	if (!attacker)
		return;
 
	if (attacker == client)
		return;
 
	if(!GetConVarBool(cvarCreditosKill_CT))
		return;
 
	if(!GetConVarBool(cvarCreditosKill_T))
		return;
 
	if(GetAllPlayersCount() >= GetConVarInt(cvarMinPlayersToGetCredits) && (GetConVarInt(cvarCreditsOnWarmup) != 0 || GameRules_GetProp("m_bWarmupPeriod") != 1) ) 
	{
		if(GetClientTeam(attacker) == CS_TEAM_CT)
		{
			if (IsPlayerReservationAdmin(attacker))
				g_iCreditos[attacker] += GetConVarInt(cvarCreditosKill_CT_VIP);
			else 
				g_iCreditos[attacker] += GetConVarInt(cvarCreditosKill_CT);
		}
 
		if(GetClientTeam(attacker) == CS_TEAM_T)
		{
			if (IsPlayerReservationAdmin(attacker))
				g_iCreditos[attacker] += GetConVarInt(cvarCreditosKill_T_VIP);
			else 
				g_iCreditos[attacker] += GetConVarInt(cvarCreditosKill_T);
		}
	}
	if(GetAllPlayersCount() >= GetConVarInt(cvarMinPlayersToGetCredits) && (GetConVarInt(cvarCreditsOnWarmup) != 0 || GameRules_GetProp("m_bWarmupPeriod") != 1) ) 
	{
		if (g_iCreditos[attacker] < GetConVarInt(cvarCreditosMax))
		{
			if(GetClientTeam(attacker) == CS_TEAM_CT)
			{
				if (IsPlayerReservationAdmin(attacker))
					CPrintToChat(attacker, "x0E[ SHOP ] x04%t","KillCT", g_iCreditos[attacker],GetConVarInt(cvarCreditosKill_CT_VIP));
				else
					CPrintToChat(attacker, "x0E[ SHOP ] x04%t","KillCT", g_iCreditos[attacker],GetConVarInt(cvarCreditosKill_CT));
			}
 
			if(GetClientTeam(attacker) == CS_TEAM_T)
			{
				if (IsPlayerReservationAdmin(attacker))
					CPrintToChat(attacker, "x0E[ SHOP ] x04%t","KillT", g_iCreditos[attacker],GetConVarInt(cvarCreditosKill_T_VIP));
				else
					CPrintToChat(attacker, "x0E[ SHOP ] x04%t","KillT", g_iCreditos[attacker],GetConVarInt(cvarCreditosKill_T));
			}
 
 
		}
		else
		{
			CPrintToChat(attacker, "x0E[ SHOP ] x04%t","Maximo", g_iCreditos[attacker]);
			g_iCreditos[attacker] = GetConVarInt(cvarCreditosMax);
		}
	}
}
 
public Action:MensajesMuerte(Handle:timer, any:client)
{
 if (IsClientInGame(client))
 {
	CPrintToChat(client, "x0E[ SHOP ] x04%t","Reviver4",GetConVarInt(cvar_15));
 }
}
 
public Action:Creditos(client, args)
{
	if(client == 0)
	{
		PrintToServer("%t","Command is in-game only");
		return;
	}
        CPrintToChat(client, "x0E[ SHOP ] x04%t","Creditos", g_iCreditos[client]);
}
 
public Action:SHOPMENU(client,args)
{
	if(GetConVarBool(cvarTronly))
	{
		if(GetClientTeam(client) != 2)
		{
			 CPrintToChat(client, "x0E[ SHOP ] x04%t","Prisioneiros");
			 return;
		}
		else
		{
			DID(client);
		}
	}
	else
	{
		DID(client);
	}
}
 
public Action:Reviver(client,args)
{
	if(client == 0)
	{
		PrintToServer("%t","Command is in-game only");
		return;
	}
 
	if(GetConVarBool(cvarEnableRevive))
	{
		CPrintToChat(client, "x0E[ SHOP ] x04%t","Ativado");
		return;
	}
 
	if(GetConVarBool(cvarTronly))
	{
		if(GetClientTeam(client) != 2)
		{
			 CPrintToChat(client, "x0E[ SHOP ] x04%t","Prisioneiros2");
			 return;
		}
		else
		{
			if (IsClientInGame(client) && !IsPlayerAlive(client))
			{
				if (g_iCreditos[client] >= GetConVarInt(cvar_15))
				{
 
					CS_RespawnPlayer(client);
 
					g_iCreditos[client] -= GetConVarInt(cvar_15);
 
					decl String:nome[32];
					GetClientName(client, nome, sizeof(nome));
 
					CPrintToChatAll("x0E[ SHOP ] x04The playerx03 %s x04has respawned!", nome); 
 
				}
				else
				{
					CPrintToChat(client, "x0E[ SHOP ] x04%t","Item reviver", g_iCreditos[client],GetConVarInt(cvar_15));
				}
			}
			else
			{
				CPrintToChat(client, "x0E[ SHOP ] x04%t","Morto");
			}
		}
	}
	else
	{
		if (!IsPlayerAlive(client))
		{
			if (g_iCreditos[client] >= GetConVarInt(cvar_15))
			{
 
				CS_RespawnPlayer(client);
 
				g_iCreditos[client] -= GetConVarInt(cvar_15);
 
				decl String:nome[32];
				GetClientName(client, nome, sizeof(nome));
 
 
				CPrintToChatAll("x0E[ SHOP ] x04The playerx03 %s x04has respawned!", nome); 
 
			}
			else
			{
				CPrintToChat(client, "x0E[ SHOP ] x04%t","Item reviver", g_iCreditos[client],GetConVarInt(cvar_15));
			}
		}
		else
		{
			CPrintToChat(client, "x0E[ SHOP ] x04%t","Morto");
		}
	}
}
 
 
public Action:EventPlayerHurt(Handle:event, const String:name[], bool:dontBroadcast)
// ----------------------------------------------------------------------------
{
	new victim = GetClientOfUserId(GetEventInt(event,"userid"));
	new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	if(attacker == 0 || !fogo[attacker]) 
		return;
 
	if(victim != attacker && attacker !=0 && attacker <MAXPLAYERS){
		new String:sWeaponUsed[50];
		GetEventString(event,"weapon",sWeaponUsed,sizeof(sWeaponUsed));
		if(StrEqual(sWeaponUsed,"hegrenade"))
		{
			IgniteEntity(victim, 15.0);
		}
 
	}
}
 
public Action:Event_SmokeGrenadeDetonate2(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	if(view[client] == true)
	{
		view[client] = false;
		if(IsClientInGame(client))
		SetClientViewEntity(client, client);
		new Float:origin[3];
 
		// Dest. location
		origin[0] = float(GetEventInt(event, "x"));
		origin[1] = float(GetEventInt(event, "y"));
		origin[2] = float(GetEventInt(event, "z"));
 
		//TELEPORT TO PLACE WHERE THE GRENADE WILL EXPLODE!
		TeleportEntity(client, origin, NULL_VECTOR, NULL_VECTOR);
	}
}
 
public Action:Event_SmokeGrenadeDetonate(Handle:event, const String:name[], bool:dontBroadcast)
{
	new Float:DetonateOrigin[3];
	DetonateOrigin[0] = GetEventFloat(event, "x"); 
	DetonateOrigin[1] = GetEventFloat(event, "y"); 
	DetonateOrigin[2] = GetEventFloat(event, "z");
 
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	if(!poison[client])
		return;
 
	new iEntity = CreateEntityByName("light_dynamic");
 
	if (iEntity == -1)
	{
		return;
	}
	DispatchKeyValue(iEntity, "inner_cone", "0");
	DispatchKeyValue(iEntity, "cone", "80");
	DispatchKeyValue(iEntity, "brightness", "5");
	DispatchKeyValueFloat(iEntity, "spotlight_radius", 96.0);
	DispatchKeyValue(iEntity, "pitch", "90");
	DispatchKeyValue(iEntity, "style", "6");
	DispatchKeyValue(iEntity, "_light", "0 255 0");
	DispatchKeyValueFloat(iEntity, "distance", 256.0);
	SetEntPropEnt(iEntity, Prop_Send, "m_hOwnerEntity", client);
	CreateTimer(20.0, Delete, iEntity, TIMER_FLAG_NO_MAPCHANGE);
 
	TE_SetupBeamRingPoint(DetonateOrigin, 99.0, 100.0, g_sprite, g_HaloSprite, 0, 15, 20.0, 10.0, 220.0, {50, 255, 50, 255}, 10, 0);
	TE_SendToAll();
 
	TE_SetupBeamRingPoint(DetonateOrigin, 99.0, 100.0, g_sprite, g_HaloSprite, 0, 15, 20.0, 10.0, 220.0, {50, 50, 255, 255}, 10, 0);
	TE_SendToAll();
 
	DispatchSpawn(iEntity);
	TeleportEntity(iEntity, DetonateOrigin, NULL_VECTOR, NULL_VECTOR);
	AcceptEntityInput(iEntity, "TurnOn");
 
	CreateTimer(1.0, Timer_CheckDamage, iEntity, TIMER_FLAG_NO_MAPCHANGE|TIMER_REPEAT);
 
	poison[client] = false;
}
 
public OnEntityCreated(iEntity, const String:classname[]) 
{
	if(StrEqual(classname, "smokegrenade_projectile"))
		SDKHook(iEntity, SDKHook_SpawnPost, OnEntitySpawned);
}
 
public OnEntitySpawned(iGrenade)
{
	new client = GetEntPropEnt(iGrenade, Prop_Send, "m_hOwnerEntity");
	if(view[client] && IsClientInGame(client))
	{
		SetClientViewEntity(client, iGrenade);
	}
}
 
public Action:Delete(Handle:timer, any:entity)
{
	if(IsValidEdict(entity))
		AcceptEntityInput(entity, "kill");
}
 
public Action:Delete2(Handle:timer, any:entity)
{
	if(IsValidEdict(entity))
		AcceptEntityInput(entity, "kill");
}
 
public Action:Timer_CheckDamage(Handle:timer, any:iEntity)
{
 
	if(!IsValidEdict(iEntity))
		return Plugin_Stop;
 
        new client = GetEntPropEnt(iEntity, Prop_Send, "m_hOwnerEntity");
 
 
        if (!IsClientInGame(client) || !IsPlayerAlive(client))
		return Plugin_Stop;
 
 
	new Float:fSmokeOrigin[3], Float:fOrigin[3];
	GetEntPropVector(iEntity, Prop_Send, "m_vecOrigin", fSmokeOrigin);
 
	for(new i=1;i<=MaxClients;i++)
	{
		if(IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) != GetClientTeam(client))
		{
			GetClientAbsOrigin(i, fOrigin);
			if(GetVectorDistance(fSmokeOrigin, fOrigin) <= 220)
				//SDKHooks_TakeDamage(i, iGrenade, client, GetConVarFloat(g_hCVDamage), DMG_POISON, -1, NULL_VECTOR, fSmokeOrigin);
                                DealDamage(i,75,client,DMG_POISON,"weapon_smokegrenade");
		}
	}
        return Plugin_Continue;
}
 
stock DealDamage(nClientVictim, nDamage, nClientAttacker = 0, nDamageType = DMG_GENERIC, String:sWeapon[] = "")
// ----------------------------------------------------------------------------
{
	// taken from: http://forums.alliedmods.net/showthread.php?t=111684
	// thanks to the authors!
	if(	nClientVictim > 0 &&
			IsValidEdict(nClientVictim) &&
			IsClientInGame(nClientVictim) &&
			IsPlayerAlive(nClientVictim) &&
			nDamage > 0)
	{
		new EntityPointHurt = CreateEntityByName("point_hurt");
		if(EntityPointHurt != 0)
		{
			new String:sDamage[16];
			IntToString(nDamage, sDamage, sizeof(sDamage));
 
			new String:sDamageType[32];
			IntToString(nDamageType, sDamageType, sizeof(sDamageType));
 
			DispatchKeyValue(nClientVictim,			"targetname",		"war3_hurtme");
			DispatchKeyValue(EntityPointHurt,		"DamageTarget",	"war3_hurtme");
			DispatchKeyValue(EntityPointHurt,		"Damage",				sDamage);
			DispatchKeyValue(EntityPointHurt,		"DamageType",		sDamageType);
			if(!StrEqual(sWeapon, ""))
				DispatchKeyValue(EntityPointHurt,	"classname",		sWeapon);
			DispatchSpawn(EntityPointHurt);
			AcceptEntityInput(EntityPointHurt,	"Hurt",					(nClientAttacker != 0) ? nClientAttacker : -1);
			DispatchKeyValue(EntityPointHurt,		"classname",		"point_hurt");
			DispatchKeyValue(nClientVictim,			"targetname",		"war3_donthurtme");
 
			RemoveEdict(EntityPointHurt);
		}
	}
} 
 
 
public Action:DID(clientId) 
{
	new Handle:menu = CreateMenu(DIDMenuHandler);
	SetMenuTitle(menu, "%t","Shop", g_iCreditos[clientId]);
	decl String:opcionmenu[124];
 
	Format(opcionmenu, 124, "%T","Invisivel", clientId,GetConVarInt(cvar_1));
	AddMenuItem(menu, "option5", opcionmenu);	
 
	Format(opcionmenu, 124, "%T","AWP", clientId,GetConVarInt(cvar_2));
	AddMenuItem(menu, "option6", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Imortal", clientId,GetConVarInt(cvar_3));
	AddMenuItem(menu, "option8", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Jail", clientId,GetConVarInt(cvar_4));
	AddMenuItem(menu, "option9", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Rapido", clientId,GetConVarInt(cvar_5));
	AddMenuItem(menu, "option10", opcionmenu);
 
	Format(opcionmenu, 124, "%T","HP", clientId,GetConVarInt(cvar_6));
	AddMenuItem(menu, "option12", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Eagle", clientId,GetConVarInt(cvar_7));
	AddMenuItem(menu, "option13", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Super", clientId,GetConVarInt(cvar_8));
	AddMenuItem(menu, "option14", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Cura", clientId,GetConVarInt(cvar_9));
	AddMenuItem(menu, "option15", opcionmenu);
 
	decl String:sGame[64];
	GetGameFolderName(sGame, sizeof(sGame));
	if (StrEqual(sGame, "cstrike"))
	{
		Format(opcionmenu, 124, "%T","2flash", clientId,GetConVarInt(cvar_10));
		AddMenuItem(menu, "option16", opcionmenu);
	}
	else if (StrEqual(sGame, "csgo"))
	{
		Format(opcionmenu, 124, "%T","Molotov", clientId,GetConVarInt(cvar_10));
		AddMenuItem(menu, "option16", opcionmenu);
	}
 
	Format(opcionmenu, 124, "%T","Skin", clientId,GetConVarInt(cvar_11));
	AddMenuItem(menu, "option17", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Smoke", clientId,GetConVarInt(cvar_12));
	AddMenuItem(menu, "option18", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Teletransportadora3", clientId,GetConVarInt(cvar_14));
	AddMenuItem(menu, "option20", opcionmenu);
 
	Format(opcionmenu, 124, "%T","HE", clientId,GetConVarInt(cvar_16));
	AddMenuItem(menu, "option21", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Bhop", clientId,GetConVarInt(cvar_17));
	AddMenuItem(menu, "option22", opcionmenu);
 
	Format(opcionmenu, 124, "%T","Gravity", clientId,GetConVarInt(cvar_18));
	AddMenuItem(menu, "option23", opcionmenu);
 
	SetMenuExitButton(menu, true);
	DisplayMenu(menu, clientId, MENU_TIME_FOREVER);
 
	return Plugin_Handled;
}
 
 
public DIDMenuHandler(Handle:menu, MenuAction:action, client, itemNum) 
{
	if ( action == MenuAction_Select ) 
	{
		new String:info[32];
 
		GetMenuItem(menu, itemNum, info, sizeof(info));
 
		if ( strcmp(info,"option1") == 0 ) 
		{
			{
				DID(client);
				CPrintToChat(client,"x0E[ SHOP ] x04make by dk.");
			}
		}
 
 
 
			else if ( strcmp(info,"option5") == 0 ) 
			{
				{
					DID(client);
 
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_1))
					{
						if (IsPlayerAlive(client))
						{
							decl String:sGame[255];
							GetGameFolderName(sGame, sizeof(sGame));
							if (StrEqual(sGame, "cstrike") || StrEqual(sGame, "cstrike_beta"))
							{
								SetEntityRenderMode(client, RENDER_TRANSCOLOR);
								SetEntityRenderColor(client, 255, 255, 255, 0);
								g_Ivisivel[client] = true;		
								CreateTimer(10.0, Invisible2, client);
							}
							else if (StrEqual(sGame, "csgo"))
							{
								SDKHook(client, SDKHook_SetTransmit, Hook_SetTransmit);
								g_Ivisivel[client] = true;		
								CreateTimer(10.0, Invisible, client);
							}
 
							new wepIdx;
 
							// strip all weapons
							for (new s = 0; s < 4; s++)
							{
								if ((wepIdx = GetPlayerWeaponSlot(client, s)) != -1)
								{
									RemovePlayerItem(client, wepIdx);
									RemoveEdict(wepIdx);
								}
							}
 
							GivePlayerItem(client, "weapon_knife");
 
 
							g_iCreditos[client] -= GetConVarInt(cvar_1);
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Invisivel2", g_iCreditos[client],GetConVarInt(cvar_2));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
					}
					else
					{
						CPrintToChat(client, "x0E[ SHOP ] x04%t","Item invisivel", g_iCreditos[client],GetConVarInt(cvar_1));
					}
				}
 
			}
 
			else if ( strcmp(info,"option6") == 0 ) 
			{
				{
					DID(client);
					if (g_iCreditos[client] >= GetConVarInt(cvar_2))
					{
						if(!AWP[client])
						{	
							CPrintToChat(client, "x0E[ SHOP ] x04%t","MaximoAWP");
						}
						else if(AWP[client] && IsPlayerAlive(client))
						{	
							GivePlayerItem(client, "weapon_awp");
							AWP[client] = false;
							Client_GiveWeaponAndAmmo(client, "weapon_awp", _, 0, _, 1); 
							g_iCreditos[client] -= GetConVarInt(cvar_2);
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","AWP2", g_iCreditos[client],GetConVarInt(cvar_2));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
					}
					else
					{
						CPrintToChat(client, "x0E[ SHOP ] x04%t","Item awp", g_iCreditos[client],GetConVarInt(cvar_2));
					}
				}
			}
 
 
			else if ( strcmp(info,"option8") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_3))
					{
						if (IsPlayerAlive(client))
						{
 
							g_Godmode[client] = true;
							CreateTimer(20.0, OpcionNumero16b, client);
 
							g_iCreditos[client] -= GetConVarInt(cvar_3);
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Imortal2", g_iCreditos[client],GetConVarInt(cvar_3));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
					}
					else
					{
						CPrintToChat(client, "x0E[ SHOP ] x04%t","Item imortal", g_iCreditos[client],GetConVarInt(cvar_3));
					}
				}
 
			}
 
			else if ( strcmp(info,"option9") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_4))
					{
						if (IsPlayerAlive(client))
						{
 
							abrir();
 
							g_iCreditos[client] -= GetConVarInt(cvar_4);
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Jails2", g_iCreditos[client],GetConVarInt(cvar_4));
							decl String:nome[32];
							GetClientName(client, nome, sizeof(nome));
 
							CPrintToChatAll("x0E[ SHOP ] x04O jogadorx03 %s x04abriu as jails pelo shop!", nome); 
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
					}
					else
					{
						CPrintToChat(client, "x0E[ SHOP ] x04%t","Item jails", g_iCreditos[client],GetConVarInt(cvar_4));
					}
				}
 
			}
 
			else if ( strcmp(info,"option10") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_5))
					{
						if (IsPlayerAlive(client))
						{
 
							SetEntPropFloat(client, Prop_Data, "m_flLaggedMovementValue", 1.5);
 
							g_iCreditos[client] -= GetConVarInt(cvar_5);
							vampire[client] = true;
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Rapido2", g_iCreditos[client],GetConVarInt(cvar_5));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
					}
					else
					{
						CPrintToChat(client, "x0E[ SHOP ] x04%t","Item rapido", g_iCreditos[client],GetConVarInt(cvar_5));
					}
				}
 
			}
 
 
			else if ( strcmp(info,"option12") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_6))
					{
						if (IsPlayerAlive(client))
						{
 
							g_iCreditos[client] -= GetConVarInt(cvar_6);
 
							new vida = (GetClientHealth(client) + 150);
 
							SetEntityHealth(client, vida);
							GivePlayerItem( client, "item_assaultsuit"); // Give Kevlar Suit and a Helmet
							SetEntProp( client, Prop_Send, "m_ArmorValue", 100, 1 ); // Set kevlar armour
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","HP2", g_iCreditos[client],GetConVarInt(cvar_6));
						}
							else
							{
								CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
							}
					}
							else
							{
								CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da vida", g_iCreditos[client],GetConVarInt(cvar_6));
							}
				}
 
			}
 
 
			else if ( strcmp(info,"option13") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_7))
					{
						if(!EAGLE[client])
						{	
							CPrintToChat(client, "x0E[ SHOP ] x04%t","MaximoEAGLE");
						}
 
						else if(EAGLE[client] && IsPlayerAlive(client))
						{
							GivePlayerItem(client, "weapon_deagle");
							EAGLE[client] = false;
							Client_GiveWeaponAndAmmo(client, "weapon_deagle", _, 0, _, 7); 
 
							g_iCreditos[client] -= GetConVarInt(cvar_7);
 
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Eagle2", g_iCreditos[client],GetConVarInt(cvar_7));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da eagle", g_iCreditos[client],GetConVarInt(cvar_7));
						}
				}
			}
 
			else if ( strcmp(info,"option14") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_8))
					{
						if (IsPlayerAlive(client))
						{
							decl String:sGame[255];
							GetGameFolderName(sGame, sizeof(sGame));
							if (StrEqual(sGame, "cstrike") || StrEqual(sGame, "cstrike_beta"))
							{
								new currentknife = GetPlayerWeaponSlot(client, 2);
								if(IsValidEntity(currentknife) && currentknife != INVALID_ENT_REFERENCE)
								{
									RemovePlayerItem(client, currentknife);
									RemoveEdict(currentknife);
								}
 
								new knife = GivePlayerItem(client, "weapon_knife");	
								EquipPlayerWeapon(client, knife);
 
								super_faca[client] = true;
							}
 
							else if (StrEqual(sGame, "csgo"))
							{
								new currentknife = GetPlayerWeaponSlot(client, 2);
								if(IsValidEntity(currentknife) && currentknife != INVALID_ENT_REFERENCE)
								{
									RemovePlayerItem(client, currentknife);
									RemoveEdict(currentknife);
								}
 
								new knife = GivePlayerItem(client, "weapon_knifegg");	
								EquipPlayerWeapon(client, knife);
 
								super_faca[client] = true;
							}
 
 
							g_iCreditos[client] -= GetConVarInt(cvar_8);
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Super2", g_iCreditos[client],GetConVarInt(cvar_8));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da super faca", g_iCreditos[client],GetConVarInt(cvar_8));
						}
				}
 
			}
 
			else if ( strcmp(info,"option15") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_9))
					{
						if (IsPlayerAlive(client))
						{
							new health = GetEntProp(client, Prop_Send, "m_iHealth");  
 
							if(health >= 100)
							{
								CPrintToChat(client, "x0E[ SHOP ] x04 Your life already is full '-'");
							}
							else
							{
								SetEntityHealth(client, 100);
								g_iCreditos[client] -= GetConVarInt(cvar_9);
 
								EmitSoundToAll("medicsound/medic.wav");
								CPrintToChat(client, "x0E[ SHOP ] x04%t","Curar2", g_iCreditos[client],GetConVarInt(cvar_9));
							}
 
 
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item de curar", g_iCreditos[client],GetConVarInt(cvar_9));
						}
				}
 
			}
 
			else if ( strcmp(info,"option16") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_10))
					{
						if (IsPlayerAlive(client))
						{
 
							GivePlayerItem(client, "weapon_molotov");
							GivePlayerItem(client, "weapon_flashbang");
							GivePlayerItem(client, "weapon_flashbang");
 
							g_iCreditos[client] -= GetConVarInt(cvar_10);
 
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Molotov2", g_iCreditos[client],GetConVarInt(cvar_10));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da molotov", g_iCreditos[client],GetConVarInt(cvar_10));
						}
				}
			}
 
 
 
			else if ( strcmp(info,"option17") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_11))
					{
						if (IsPlayerAlive(client))
						{
							g_iCreditos[client] -= GetConVarInt(cvar_11);
							SetEntityModel(client, "models/player/ctm_gign_variantc.mdl");
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Skin2", g_iCreditos[client],GetConVarInt(cvar_11));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da skin", g_iCreditos[client],GetConVarInt(cvar_11));
						}
				}
 
			}
 
			else if ( strcmp(info,"option18") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_12))
					{
						if (IsPlayerAlive(client))
						{
 
							GivePlayerItem(client, "weapon_smokegrenade");
 
 
							g_iCreditos[client] -= GetConVarInt(cvar_12);
 
 
							poison[client] = true;
 
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Smoke2", g_iCreditos[client],GetConVarInt(cvar_12));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da smoke", g_iCreditos[client],GetConVarInt(cvar_12));
						}
				}
 
			}
 
 
 
			else if ( strcmp(info,"option20") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_14))
					{
						if (IsPlayerAlive(client))
						{
 
							GivePlayerItem(client, "weapon_smokegrenade");
 
 
							g_iCreditos[client] -= GetConVarInt(cvar_14);
 
 
							view[client] = true;
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Teletransportadora", g_iCreditos[client],GetConVarInt(cvar_14));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da teletransportadora", g_iCreditos[client],GetConVarInt(cvar_14));
						}
				}
 
			}
 
			else if ( strcmp(info,"option21") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_16))
					{
						if (IsPlayerAlive(client))
						{
 
							GivePlayerItem(client, "weapon_hegrenade");
 
 
							g_iCreditos[client] -= GetConVarInt(cvar_16);
 
 
							fogo[client] = true;
							CPrintToChat(client, "x0E[ SHOP ] x04%t","HE2", g_iCreditos[client],GetConVarInt(cvar_16));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da he2", g_iCreditos[client],GetConVarInt(cvar_16));
						}
				}
 
			}
 
			else if ( strcmp(info,"option22") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_17))
					{
						if (IsPlayerAlive(client))
						{
 
							g_iCreditos[client] -= GetConVarInt(cvar_17);
 
 
							bhop[client] = true;
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Bhop2", g_iCreditos[client],GetConVarInt(cvar_17));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item do bhop", g_iCreditos[client],GetConVarInt(cvar_17));
						}
				}
 
			}
 
			else if ( strcmp(info,"option23") == 0 ) 
			{
				{
					DID(client);
 
					if (g_iCreditos[client] >= GetConVarInt(cvar_18))
					{
						if (IsPlayerAlive(client))
						{
 
							g_iCreditos[client] -= GetConVarInt(cvar_18);
 
 
							SetEntityGravity(client, 0.6);
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Gravity2", g_iCreditos[client],GetConVarInt(cvar_18));
						}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Vivo");
						}
 
					}
						else
						{
							CPrintToChat(client, "x0E[ SHOP ] x04%t","Item da gravidade", g_iCreditos[client],GetConVarInt(cvar_18));
						}
				}
 
			}
	}
}
 
 
public Action:SetCreditos2(client, args)
{
    if(client == 0)
    {
		PrintToServer("%t","Command is in-game only");
		return Plugin_Handled;
    }
 
    if(args < 2) 
    {
        ReplyToCommand(client, "[SM] Use: sm_set <#userid|name> [amount]");
        return Plugin_Handled;
    }
 
    decl String:arg2[10];
 
    GetCmdArg(2, arg2, sizeof(arg2));
 
    new amount = StringToInt(arg2);
 
    decl String:strTarget[32]; GetCmdArg(1, strTarget, sizeof(strTarget)); 
 
 
    decl String:strTargetName[MAX_TARGET_LENGTH]; 
    decl TargetList[MAXPLAYERS], TargetCount; 
    decl bool:TargetTranslate; 
 
    if ((TargetCount = ProcessTargetString(strTarget, client, TargetList, MAXPLAYERS, COMMAND_FILTER_CONNECTED, 
                                           strTargetName, sizeof(strTargetName), TargetTranslate)) <= 0) 
    { 
          ReplyToTargetError(client, TargetCount); 
          return Plugin_Handled; 
    } 
 
 
    for (new i = 0; i < TargetCount; i++) 
    { 
        new iClient = TargetList[i]; 
        if (IsClientInGame(iClient)) 
        { 
              g_iCreditos[iClient] = amount;
 
 
              CPrintToChat(iClient, "[ SHOP ] Set x03%i x01credits in the player: %N", amount, iClient);
        } 
    } 
 
    return Plugin_Continue;
}
 
public Action:SetCreditos(client, args)
{
	if(client == 0)
	{
		PrintToServer("%t","Command is in-game only");
		return Plugin_Handled;
	}
 
	if(args < 2) 
	{
		ReplyToCommand(client, "[SM] Use: sm_give <#userid|name> [amount]");
		return Plugin_Handled;
	}
 
	decl String:arg2[10];
 
	GetCmdArg(2, arg2, sizeof(arg2));
 
	new amount = StringToInt(arg2);
 
	decl String:strTarget[32]; GetCmdArg(1, strTarget, sizeof(strTarget)); 
 
 
	decl String:strTargetName[MAX_TARGET_LENGTH]; 
	decl TargetList[MAXPLAYERS], TargetCount; 
	decl bool:TargetTranslate; 
 
	if ((TargetCount = ProcessTargetString(strTarget, client, TargetList, MAXPLAYERS, COMMAND_FILTER_CONNECTED, 
										   strTargetName, sizeof(strTargetName), TargetTranslate)) <= 0) 
	{ 
		  ReplyToTargetError(client, TargetCount); 
		  return Plugin_Handled; 
	} 
 
 
	for (new i = 0; i < TargetCount; i++) 
	{ 
		new iClient = TargetList[i]; 
		if (IsClientInGame(iClient)) 
		{ 
			  g_iCreditos[iClient] += amount;
 
			  CPrintToChat(iClient, "[ SHOP ] Give x03%i x01credits in the player: %N", amount, iClient);
 
		} 
	} 
 
	return Plugin_Continue;
}
 
public Action:Command_SendCredits(client, args)
{
	if(client == 0)
	{
		PrintToServer("%t","Command is in-game only");
		return Plugin_Handled;
	}
 
	if(args < 2) // Not enough parameters
	{
		ReplyToCommand(client, "[SM] Use: sm_gift <#userid|name> [amount]");
		return Plugin_Handled;
	}
 
	decl String:arg2[10];
	GetCmdArg(2, arg2, sizeof(arg2));
 
	new amount = StringToInt(arg2);
 
	decl String:strTarget[32]; GetCmdArg(1, strTarget, sizeof(strTarget));
 
	decl String:strTargetName[MAX_TARGET_LENGTH];
	decl TargetList[MAXPLAYERS], TargetCount;
	decl bool:TargetTranslate;
 
	if ((TargetCount = ProcessTargetString(strTarget, client, TargetList, MAXPLAYERS, COMMAND_FILTER_CONNECTED,
		strTargetName, sizeof(strTargetName), TargetTranslate)) <= 0)
	{
		ReplyToTargetError(client, TargetCount);
		return Plugin_Handled;
	}
 
	for (new i = 0; i < TargetCount; i++)
	{
		new iClient = TargetList[i];
		if (IsClientInGame(iClient) && amount > 0)
		{
			if (g_iCreditos[client] < amount)
				CPrintToChat(client, "x0E[ SHOP ] x04%t","NoCredits");
			else
			{
				g_iCreditos[client] -= amount;
				g_iCreditos[iClient] += amount;
 
				CPrintToChat(client, "[ SHOP ] You give x03%i x01credits for player: %N", amount, iClient);
				CPrintToChat(iClient, "[ SHOP ] You get x03%i x01credits from player: %N", amount, client);
			}
		}
	}
	return Plugin_Continue;
}
 
public Action:OnTakeDamage(victim, &attacker, &inflictor, &Float:damage, &damagetype)
{
	if (g_Godmode[victim] == true)
	{
	   damage = 0.0;
	   return Plugin_Changed;
	}
	else if(IsValidClient(attacker))
	{
		if((vampire[attacker] && GetClientTeam(attacker) != GetClientTeam(victim)))
		{
			new recibir = RoundToFloor(damage * 0.5);
			recibir += GetClientHealth(attacker);
			SetEntityHealth(attacker, recibir);
		}
 
		if(super_faca[attacker])
		{
			decl String:weaponName[255];
			GetClientWeapon(attacker, weaponName, sizeof(weaponName));
			decl String:sGame[255];
			GetGameFolderName(sGame, sizeof(sGame));
			if (StrEqual(sGame, "cstrike") || StrEqual(sGame, "cstrike_beta"))
			{
				if(StrEqual(weaponName, "weapon_knife"))
				{
					DealDamage(victim,100,attacker,DMG_BULLET,weaponName);
				}
			}
			else if (StrEqual(sGame, "csgo"))
			{
				if(StrEqual(weaponName, "weapon_knifegg"))
				{
					DealDamage(victim,100,attacker,DMG_BULLET,weaponName);
				}
			}
 
		}
 
	}
 
	return Plugin_Continue;
}
 
 
stock bool:IsValidClient(client, bool:bAlive = false)
{
	if(client >= 1 && client <= MaxClients && IsClientConnected(client) && IsClientInGame(client) && (bAlive == false || IsPlayerAlive(client)))
	{
		return true;
	}
 
	return false;
}
 
public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon)
{
	new water = GetEntProp(client, Prop_Data, "m_nWaterLevel");
	if (IsPlayerAlive(client))
	{
		if (buttons & IN_JUMP)
		{
			if (water <= 1)
			{
				if (!(GetEntityMoveType(client) & MOVETYPE_LADDER))
				{
					SetEntPropFloat(client, Prop_Send, "m_flStamina", 0.0);
					if (!(GetEntityFlags(client) & FL_ONGROUND))
					{
						if(bhop[client] == true)
						{
							buttons &= ~IN_JUMP;	
						}
					}
				}
			}
		}
	}
 
	return Plugin_Continue;
}
 
 
 
public Action:OnWeaponCanUse(client, weapon)
{
	if (g_Ivisivel[client])
	{
		decl String:sClassname[32];
		GetEdictClassname(weapon, sClassname, sizeof(sClassname));
		if (!StrEqual(sClassname, "weapon_knife"))
		return Plugin_Handled;
	}
	return Plugin_Continue;
}
 
public OnClientPutInServer(client)
{
	SDKHook(client, SDKHook_OnTakeDamage, OnTakeDamage);
	SDKHook(client, SDKHook_WeaponCanUse, OnWeaponCanUse);
}
 
public OnClientPostAdminCheck(client)
{
	g_Godmode[client] = false;
	g_Ivisivel[client] = false;
	fogo[client] = false;
	super_faca[client] = false;
	poison[client] = false;
	vampire[client] = false;
	AWP[client] = true;
	EAGLE[client] = true;
	view[client] = false;
}
 
public Action:Event_OnRoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
	for (new i = 1; i <= GetMaxClients(); i++)
		if (IsClientInGame(i))
			{
				poison[i] = false;
				vampire[i] = false;
				view[i] = false;
				fogo[i] = false;
				super_faca[i] = false;
				bhop[i] = false;
				AWP[i] = true;
				EAGLE[i] = true;
			}
}
 
public Action:PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
 
	if (GetClientTeam(client) == 1 && !IsPlayerAlive(client))
	{
		return;
	}
 
	CreateTimer(1.0, MensajesSpawn, client);
 
}
 
Normalizar(client)
{
	if (g_Godmode[client])
	{
		g_Godmode[client] = false;
	}
	if (g_Ivisivel[client])
	{
		g_Ivisivel[client] = false;
		SDKUnhook(client, SDKHook_SetTransmit, Hook_SetTransmit);  
	}
 
	poison[client] = false;
	vampire[client] = false;
	view[client] = false;
	fogo[client] = false;
	super_faca[client] = false;
	bhop[client] = false;
	AWP[client] = true;
	EAGLE[client] = true;
}
 
public OnAvailableLR(Announced)
{
	for (new i = 1; i <= GetMaxClients(); i++)
	{
		if (IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == CS_TEAM_T)
		{
			if(GetAllPlayersCount() >= GetConVarInt(cvarMinPlayersToGetCredits) && (GetConVarInt(cvarCreditsOnWarmup) != 0 || GameRules_GetProp("m_bWarmupPeriod") != 1) ) 
				if (IsPlayerReservationAdmin(i))
					g_iCreditos[i] += GetConVarInt(cvarCreditos_LR_VIP);
				else 
					g_iCreditos[i] += GetConVarInt(cvarCreditos_LR);
			SetEntityGravity(i, 1.0);
			Normalizar(i);
			SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.0);
		}
	}
}
 
 
public Action:OpcionNumero16b(Handle:timer, any:client)
{
	if ( (IsClientInGame(client)) && (IsPlayerAlive(client)) )
	{
	   CPrintToChat(client, "x0E[ SHOP ] x04%t","Mortal3");
	   g_Godmode[client] = false;
	}
 
}
 
public Action:Invisible(Handle:timer, any:client)
{
 if ( (IsClientInGame(client)) && (IsPlayerAlive(client)) )
 {
   g_Ivisivel[client] = false;
   CPrintToChat(client, "x0E[ SHOP ] x04%t","Visivel novamente");
   SDKUnhook(client, SDKHook_SetTransmit, Hook_SetTransmit);  
 }
}
 
public Action:Invisible2(Handle:timer, any:client)
{
	if ( (IsClientInGame(client)) && (IsPlayerAlive(client)) )
	{
		CPrintToChat(client, "x0E[ SHOP ] x04%t","Visivel novamente");
		SetEntityRenderMode(client, RENDER_TRANSCOLOR); 
		g_Ivisivel[client] = false;
		SetEntityRenderColor(client, 255, 255, 255, 255); 
	}
}
 
public Action:abrir()
{
    for(new i = 0; i < sizeof(EntityList); i++)
        while((iEnt = FindEntityByClassname(iEnt, EntityList[i])) != -1)
            AcceptEntityInput(iEnt, "Open");
    return Plugin_Handled;
}
 
 
public Action:Hook_SetTransmit(entity, client)  
{  
    if (entity != client)  
        return Plugin_Handled; 
 
    return Plugin_Continue;  
} 
 
 
public Action:Command_ShowCredits(client, args) 
{
	decl String:sName[MAX_NAME_LENGTH], String:sUserId[10];
 
	new Handle:menu = CreateMenu(MenuHandlerShowCredits);
	SetMenuTitle(menu, "%t","Players Credits");
 
	for(new i=1;i<=MaxClients;i++)
	{
		if (IsClientInGame(i))
		{
			GetClientName(i, sName, sizeof(sName));
			IntToString(GetClientUserId(i), sUserId, sizeof(sUserId));
			decl String:buffer[255];
			Format(buffer, sizeof(buffer), "%s: %d", sName, g_iCreditos[i]);
			AddMenuItem(menu, sUserId, buffer, ITEMDRAW_DISABLED );			//sUserID to id_usera, a sName to nick ktory sie wyswietla w Menu
		}
	}
 
	SetMenuExitButton(menu, true);
	DisplayMenu(menu, client, 20);
 
	return Plugin_Handled;
}
 
public MenuHandlerShowCredits(Handle:menu, MenuAction:action, param1, param2)
{
 
}
 
GetAllPlayersCount()
{
  decl iCount, i; iCount = 0;
 
  for( i = 1; i <= MaxClients; i++ )
    if( IsClientInGame( i ) && !IsFakeClient(i) )
      iCount++;
  return iCount;
} 
 
bool:IsPlayerReservationAdmin(client)
{
    if (CheckCommandAccess(client, "Admin_Reservation", ADMFLAG_RESERVATION, false))
    {
        return true;
    }
    return false;
}
 

Dodanych wklejek: 4031
Powered By (Pav32) Pastebin © 2011