wklejto.pl

Dodane przez: ~Eteer (2019-02-18 19:06) -> text
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.
/* Plugin generated by AMXX-Studio */
 
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <nvault>
#include <fakemeta>
#include <engine>
#include <hamsandwich>
#include <ColorChat>
 
/*
        *****************************************************
        ******                                          *****  
        ******                                          *****  
        ******  Prosz nie zmienia autora!             *****  
        ******                            Na 5tyk       *****  
        ******                                          *****  
        ******                                          *****  
        *****************************************************
*/
 
#define PLUGIN "EXPMod EasyBlock"
#define VERSION "0.1"
#define AUTHOR "Na 5tyk"
 
// HeadSplash
 
#define MINIMUM_FALL_SPEED 10
#define MAXIMUM_DAMAGE_FROM_JUMP 60.0
#define DAMAGE 35.0
#define DELAY 0.03
 
new Float:falling_speed[33];
new Float:damage_after[33][33];
new sprite_blood, sprite_bloodspray;
 
//
 
#define TASK_RESPAWN 1337
 
/* FLAGI */
#define VIP ADMIN_LEVEL_H
/* FLAGI */
 
/* ZMIENNE DOT. GRACZA */
new poziom_gracza[33] = 1;
new nick_gracza[33][64];
new exp_gracza[33];
new punkty_gracza[33];
/* ZMIENNE DOT. GRACZA */
 
/* ZMIENNE UMIEJETNOSCI */
new plushp[33];
new plusap[33];
new apteczka[33];
new ciche[33];
new loshe[33];
new losfb[33];
new lossg[33];
new fastfb[33];
new respawn[33];
new niewidka[33];
new bronie[33];
new karabiny[33];
new morexp[33];
new reduction[33];
/* ZMIENNE UMIEJETNOSCI */
 
/* ZMIENNE OSIAGNIEC */
new connect[33];
new connect_zaliczone[33];
new killer[33];
new killer_zaliczone[33];
new jumper[33];
new jumper_zaliczone[33];
/* ZMIENNE OSIAGNIEC */
 
/* ZMIENNE WYKORZYSTANIA UMIEJETNOSCI */
new bool:usedApteczka[33];
new bool:usedRespawn[33];
new bool:usedNiewidka[33];
/* ZMIENNE WYKORZYSTANIA UMIEJETNOSCI */
 
/* CVARY */
new doswiadczenia_za_zabojstwo;
/* CVARY */
 
/* ROZNE */
new vault;
new gStatusMsg;
/* ROZNE */
 
/* PREFIXY I DZWIEKI */
new const PREFIX[][] = { "[EasyBlock]" }
new const gszModels[][] = { "w_flashbang.mdl" };
new const g_sound_stealth[] = "EasyBlockV6/niewidzialnosc.wav";
/* PREFIXY I DZWIEKI */
 
new amx_headsplash;
new const tabelka_expa[] = {
        0,
        39, 103, 221, 422, 667, 926, 1232, 1553, 1992, 2462, 
        3106, 3755, 4475, 5287, 6152, 7084, 8063, 9081, 10135, 11218, 
        12416, 13720, 15041, 16427, 17834, 19367, 20936, 22517, 24239, 25974, 
        27778, 29672, 31643, 33630, 35686, 37811, 40014, 42291, 44622, 46965, 
        49378, 51800, 54278, 56782, 59427, 62162, 64977, 67836, 70698, 73624, 
        76624, 79720, 82837, 86016, 89288, 92646, 96055, 99502, 102973, 106449, 
        110069, 113733, 117437, 121201, 125086, 129034, 133053, 137107, 141235, 145427, 
        149682, 153996, 158322, 162728, 167212, 171697, 176236, 180819, 185431, 190118, 
        194920, 199770, 204694, 209632, 214652, 219716, 224782, 229914, 235206, 240522, 
        245959, 251436, 256973, 262544, 268191, 273877, 279646, 285512, 291410, 297378
}
 
public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        
        register_clcmd("say /exp", "EXPMenu");
        
        register_event("DeathMsg", "Death", "ade");
        
        RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
        RegisterHam(Ham_Killed, "player", "FwdPlayerDeath", 1);
        RegisterHam(Ham_TakeDamage, "player", "TakeDamage", 1);
        
        register_touch("*", "grenade", "fwTouchGrenade2");
        register_touch("grenade", "*", "fwTouchGrenade");
 
        register_forward(FM_CmdStart, "JumpCount");
        
        vault = nvault_open("EBXP");
        amx_headsplash  = register_cvar("amx_headsplash", "1"); // HeadSplash ma by wczony? 1 - Tak | 0 - Nie
        gStatusMsg = get_user_msgid("StatusText")
        register_forward(FM_Touch, "FwTouch");
        
        register_cvar("eb_killxp", "10");
        
        register_clcmd("say /exp", "EXPMenu");
        register_clcmd("say_team /exp", "EXPMenu");
        register_clcmd("say /xp", "EXPMenu");
        register_clcmd("say_team /xp", "EXPMenu");
 
        register_clcmd("say /wczytaj", "Wczytaj");
        
        register_clcmd("+menu", "SkillMenu");
        
        doswiadczenia_za_zabojstwo = get_cvar_num("eb_killxp");
}
 
public plugin_precache() {
        sprite_blood = precache_model("sprites/blood.spr");
        sprite_bloodspray = precache_model("sprites/bloodspray.spr");
}
 
public client_connect(id)
{
        get_user_name(id, nick_gracza[id], 63);
        
        poziom_gracza[id] = 0;
        exp_gracza[id] = 0;
        punkty_gracza[id] = 0;
        
        plushp[id] = 0;
        plusap[id] = 0;
        apteczka[id] = 0;
        ciche[id] = 0;
        loshe[id] = 0;
        losfb[id] = 0;
        lossg[id] = 0;
        fastfb[id] = 0;
        respawn[id] = 0;
        niewidka[id] = 0;
        bronie[id] = 0;
        karabiny[id] = 0;
        morexp[id] = 0;
        reduction[id] = 0;
        connect[id] = 0;
        connect_zaliczone[id] = 0;
        killer[id] = 0;
        killer_zaliczone[id] = 0;
        jumper[id] = 0;
        jumper_zaliczone[id] = 0;
        
        usedApteczka[id] = false;
        usedRespawn[id] = false;
        usedNiewidka[id] = false;
        
        set_task(0.8, "Life", id, _, _, "b");
        
        Wczytaj(id);
        connect[id]++;
}
 
public plugin_natives()
{
        register_library("hns_xp");
        register_native("hnsxp_add_user_xp", "f_add_xp");
        register_native("hnsxp_get_user_xp", "f_add_xp");
        register_native("hnsxp_set_user_xp", "_set_xp"); 
        
        /*register_library("hns_xp");
        register_native("hnsxp_get_user_xp", "_get_xp");
        register_native("hnsxp_set_user_xp", "_set_xp"); */
}
 
public f_add_xp(plugin, params)
{
        new id = get_param(1);
        
        exp_gracza[id] += get_param(2);
        Zapisz(id);
        SprawdzPoziom(id);
        return exp_gracza[get_param(1)];
}
public _get_xp(plugin, params)
{
        return exp_gracza[get_param(1)];
}
 
public _set_xp(plugin, params)
{
        new client = get_param(1);
        exp_gracza[client] = max(0, get_param(2));
        SprawdzPoziom(client);
        return exp_gracza[client];
}
 
public client_disconnect(id)
{       
        Zapisz(id)
}
 
public Odrodzenie(id)
{
        new flaga = get_user_flags(id);
        new szansabron, szansakarabin;
        client_cmd(id, "bind h +menu");
        
        if(plushp[id] > 0 && is_user_alive(id))
        {
                if(flaga == VIP)
                {
                        set_user_health(id, get_user_health(id) + (plushp[id]*5));
                }
                else
                {
                        set_user_health(id, get_user_health(id) + (plushp[id]*6));
                }
        }
 
        if(plusap[id] > 0 && is_user_alive(id))
                set_user_armor(id, get_user_armor(id) + (plusap[id]*10));
        
        usedApteczka[id] = false;
        usedRespawn[id] = false;
        usedNiewidka[id] = false;
        
        if(cs_get_user_team(id) == CS_TEAM_CT && ciche[id] == 1)
                set_user_footsteps(id, 1);
        
        new szansahe = loshe[id]*15;
        new szansafb = losfb[id]*20;
        new szansasg = lossg[id]*15;
        
        if(flaga == VIP)
        {
                szansabron = bronie[id]*6;
        }
        else
        {
                szansabron = bronie[id]*5;
        }
        
        if(flaga == VIP)
        {
                szansakarabin = karabiny[id]*4;
        }
        else
        {
                szansakarabin = karabiny[id]*3
        }
        
        if(loshe[id] > 0 && is_user_alive(id) && random_num(1, 100) <= szansahe)
        {
                give_item(id, "weapon_hegrenade");
                ColorChat(id, RED, "^x04%s^x01 Gratulacje wylosowales HE!", PREFIX);
        }
        
        if(losfb[id] > 0 && is_user_alive(id) && random_num(1, 100) <= szansafb && cs_get_user_team(id) == CS_TEAM_T)
        {
                give_item(id, "weapon_flashbang");
                ColorChat(id, RED, "^x04%s^x01 Gratulacje wylosowales FB!", PREFIX);
        }
        
        if(lossg[id] > 0 && is_user_alive(id) && random_num(1, 100) <= szansasg)
        {
                give_item(id, "weapon_smokegrenade");
                ColorChat(id, RED, "^x04%s^x01 Gratulacje wylosowales SG!", PREFIX);
        }
        
        if(bronie[id] > 0 && is_user_alive(id) && random_num(1, 100) <= szansabron)
        {
                new random_weapon = random_num(1, 5);
                switch(random_weapon){
                        case 1:{
                                give_item(id, "weapon_deagle");
                                cs_set_user_bpammo(id, CSW_DEAGLE, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_deagle", id ), 1);
                        }
                        case 2:{
                                give_item(id, "weapon_glock18");
                                cs_set_user_bpammo(id, CSW_GLOCK18, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_glock18", id ), 1);
                        }
                        case 3:{
                                give_item(id, "weapon_p228");
                                cs_set_user_bpammo(id, CSW_P228, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_p228", id ), 1);
                        }
                        case 4:{
                                give_item(id, "weapon_usp");
                                cs_set_user_bpammo(id, CSW_USP, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_usp", id ), 1);
                        }
                        case 5:{
                                give_item(id, "weapon_elite");
                                cs_set_user_bpammo(id, CSW_ELITE, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_elite", id), 1);
                                
                        }
                        
                }
                ColorChat(id, GREEN, "^x04%s^x01 Gratulacje! Wylosowales pistolet!", PREFIX);
        }
        
        if(karabiny[id] > 0 && is_user_alive(id) && random_num(1, 100) <= szansakarabin)
        {
                new random = random_num(1, 4);
                switch(random){
                        case 1:{
                                give_item(id, "weapon_m4a1");
                                cs_set_user_bpammo(id, CSW_M4A1, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_m4a1", id ), 1);
                        }
                        case 2:{
                                give_item(id, "weapon_ak47");
                                cs_set_user_bpammo(id, CSW_AK47, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_ak47", id ), 1);
                        }
                        case 3:{
                                give_item(id, "weapon_tmp");
                                cs_set_user_bpammo(id, CSW_TMP, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_tmp", id ), 1);
                        }
                        case 4:{
                                give_item(id, "weapon_mac10");
                                cs_set_user_bpammo(id, CSW_MAC10, 0);
                                cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_mac10", id ), 1);
                        }
                }
                ColorChat(id, GREEN, "%s^x01 Gratulacje! Wylosowales karabin!", PREFIX);
        }
 
        if(connect_zaliczone[id] == 0 && connect[id] > 300)
        {
                connect_zaliczone[id] = 1;
                exp_gracza[id] += 250;
                ColorChat(id, GREEN, "^x04%s^x01 Gratulacje! Dostales ^x04 250 ^x01 EXPa za wykonanie osiagniecia: ^x04Connector", PREFIX);
        }
        
        if(killer_zaliczone[id] == 0 && killer[id] > 100)
        {
                killer_zaliczone[id] = 1
                exp_gracza[id] += 200;
                ColorChat(id, GREEN, "^x04%s^x01 Gratulacje! Dostales ^x04 200 ^x01 EXPa za wykonanie osiagniecia: ^x04Killer", PREFIX);
        }
        
        if(jumper_zaliczone[id] == 0 && jumper[id] > 10000)
        {
                jumper_zaliczone[id] = 1;
                exp_gracza[id] += 100;
                ColorChat(id, GREEN, "^x04%s^x01 Gratulacje! Dostales ^x04 200 ^x01 EXPa za wykonanie osiagniecia: ^x04Jumper", PREFIX);
        }
        
        set_hudmessage(255, 255, 255, 0.02, 0.71, 0, 6.0, 5.0)
        show_hudmessage(id, "Skoki: %i", jumper[id])
        
}
 
public FwTouch(toucher, touched, entity,id)
{
        if(!is_user_alive(toucher) || !is_user_alive(touched)) 
                return;
        
        if(!get_pcvar_num(amx_headsplash)) 
                return;
        
        if(falling_speed[touched]) 
                return;
        
        if(get_user_team(toucher) == get_user_team(touched) && !get_cvar_num("mp_friendlyfire")) 
                return;
        
        new touched_origin[3], toucher_origin[3];
        get_user_origin(touched, touched_origin); 
        get_user_origin(toucher, toucher_origin);
        
        new Float:toucher_minsize[3], Float:touched_minsize[3];
        pev(toucher,pev_mins,toucher_minsize);
        pev(touched,pev_mins,touched_minsize);
        
        new toucher_movetype = pev(toucher, pev_movetype);
        new touched_movetype = pev(touched, pev_movetype);
        
        if(touched_minsize[2] != -18.0) 
        {
                if(!(toucher_origin[2] == touched_origin[2]+72 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+54 && toucher_minsize[2] == -18.0))
                {
                        return;
                }
        }
        else 
        {
                if(!(toucher_origin[2] == touched_origin[2]+68 && toucher_minsize[2] != -18.0) && !(toucher_origin[2] == touched_origin[2]+50 && toucher_minsize[2] == -18.0))
                {
                        return;
                }
        }
        
        if(toucher_movetype == MOVETYPE_FLY || touched_movetype == MOVETYPE_FLY)
                return;
        
        new flags = entity_get_int(touched, EV_INT_flags);
        
        if (flags & FL_ONGROUND){
        if(falling_speed[toucher] >= MINIMUM_FALL_SPEED)
        {
                new Float:damage = ((falling_speed[toucher] - MINIMUM_FALL_SPEED + 30) * (falling_speed[toucher] - MINIMUM_FALL_SPEED + 30)) / 1300;
                if(damage > MAXIMUM_DAMAGE_FROM_JUMP)
                smashHead(touched, toucher, damage);
                damage_after[toucher][touched] = 0.0; 
        }
        
        if(is_user_alive(touched) && damage_after[toucher][touched] <= get_gametime())
        {
                
                damage_after[toucher][touched] = get_gametime() + DELAY;
                smashHead(touched, toucher, DAMAGE);
        }
}
}
 
public smashHead(pwned, pwnzor, Float:damage){
        if(get_user_team(pwnzor) != get_user_team(pwned)){
                static Float:fOrigin[3], Float:Health;
                pev(pwned, pev_origin, fOrigin);        
                pev(pwned, pev_health,  Health);
                
                if(Health < damage){
                        engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, fOrigin, 0);
                        write_byte(TE_PARTICLEBURST);
                        engfunc(EngFunc_WriteCoord, fOrigin[0]);
                        engfunc(EngFunc_WriteCoord, fOrigin[1]);
                        engfunc(EngFunc_WriteCoord, fOrigin[2]);
                        write_short(50);
                        write_byte(72);
                        write_byte(10);
                        message_end();
                        
                }
                message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, pwned);
                write_short(255<<14);
                write_short(10<<14);
                write_short(255<<14);
                message_end();
                
                engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, fOrigin, 0);
                write_byte(TE_BLOODSPRITE);
                engfunc(EngFunc_WriteCoord, fOrigin[0] +  8.0);
                engfunc(EngFunc_WriteCoord, fOrigin[1]);
                engfunc(EngFunc_WriteCoord, fOrigin[2] + 26.0);
                write_short(sprite_bloodspray);
                write_short(sprite_blood);
                write_byte(248);
                write_byte(4);
                message_end();
                
                ExecuteHam(Ham_TakeDamage, pwned, "", pwnzor/*id*/, damage, 1);
        }
}
 
public Death()
{
        new id = read_data(2);
        new attacker = read_data(1);
        new flaga = get_user_flags(id);
        
        if(!is_user_alive(attacker) || !is_user_connected(attacker))
                return PLUGIN_CONTINUE;
        
        if(get_user_team(id) != get_user_team(attacker))
        {
                new nowe_doswiadczenie = 0;
                new nowe = 0;
                if(morexp[id] > 0)
                {
                        if(flaga == VIP)
                        {
                                nowe += doswiadczenia_za_zabojstwo+(morexp[id]*2)+15;
                                ColorChat(attacker, RED, "^x04%s^x01 Dostales ^x04%i^x01 EXPa za zabojstwo!", PREFIX, nowe);
                                
                                exp_gracza[attacker] += nowe;
                        }
                        else
                        {
                                nowe += doswiadczenia_za_zabojstwo+(morexp[id]*2)+15;
                                ColorChat(attacker, RED, "^x04%s^x01 Dostales ^x04%i^x01 EXPa za zabojstwo!", PREFIX, nowe);
                                
                                exp_gracza[attacker] += nowe
                        }
                }
                else
                {
                        if(flaga == VIP)
                        {
                                nowe_doswiadczenie += doswiadczenia_za_zabojstwo+15;            
                                
                                ColorChat(attacker, RED, "^x04%s^x01 Dostales ^x04%i^x01 EXPa za zabojstwo!", PREFIX, nowe_doswiadczenie);
                                
                                exp_gracza[attacker] += nowe_doswiadczenie;
                        }
                        else
                        {
                                nowe_doswiadczenie += doswiadczenia_za_zabojstwo;               
                                
                                ColorChat(attacker, RED, "^x04%s^x01 Dostales ^x04%i^x01 EXPa za zabojstwo!", PREFIX, doswiadczenia_za_zabojstwo);
                                
                                exp_gracza[attacker] += nowe_doswiadczenie;
                        }
                }
                
                killer[id]++;
        }
        
        SprawdzPoziom(attacker);
        
        return PLUGIN_CONTINUE;
}
 
public Zapisz(id) {
        
        new nick[35];
        get_user_name(id, nick, 34);
        
        
        
        new vaultkey[64], vaultdata[256];
        
        format(vaultkey, 63, "%s-Mod", nick);
        
        format(vaultdata, 255, "%i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i %i", exp_gracza[id], poziom_gracza[id], punkty_gracza[id], plushp[id], plusap[id], apteczka[id]
        , ciche[id], loshe[id], losfb[id], lossg[id], fastfb[id], respawn[id], niewidka[id],
        bronie[id], karabiny[id], morexp[id], reduction[id], connect[id], connect_zaliczone[id], killer[id], killer_zaliczone[id],
        jumper[id], jumper_zaliczone[id]);
        
        nvault_set(vault, vaultkey, vaultdata);
        
        return PLUGIN_CONTINUE;
        
}
 
public Wczytaj(id) {
        new nick[35];
        get_user_name(id, nick, 34);
        
        
        
        new vaultkey[64], vaultdata[256];
        
        format(vaultkey, 63, "%s-Mod", nick);
        
        nvault_get(vault, vaultkey, vaultdata, 255);
        
        
        
        new exp[32], lewel[32], punkty[32], hape[32], arm[32], apt[32], ci[32], he[32], fb[32], sg[32], fast[32], resp[32], nie[32], bro[32], kar[32], mor[32], red[32], con[32], con_zal[32],
        kil[32], kill_zal[32], jump[32], jump_zal[32];
        
        
        
        parse(vaultdata, exp, 31, lewel, 31, punkty, 31, hape, 31, arm, 31, apt, 31, ci, 31, he, 31, fb, 31, sg, 31, fast, 31, resp, 31, nie, 31, bro, 31, kar, 31, mor, 31, red, 31, con, 31, con_zal, 31,
        kil, 31, kill_zal, 31, jump, 31, jump_zal, 31);
        
        
        
        exp_gracza[id] = str_to_num(exp);
        
        poziom_gracza[id] = str_to_num(lewel);
        
        punkty_gracza[id] = str_to_num(punkty);
        plushp[id] = str_to_num(hape);
        plusap[id] = str_to_num(arm);
        apteczka[id] = str_to_num(apt);
        ciche[id] = str_to_num(ci);
        loshe[id] = str_to_num(he);
        losfb[id] = str_to_num(fb);
        lossg[id] = str_to_num(sg);
        fastfb[id] = str_to_num(fast);
        respawn[id] = str_to_num(resp);
        niewidka[id] = str_to_num(nie);
        bronie[id] = str_to_num(bro);
        karabiny[id] = str_to_num(kar);
        morexp[id] = str_to_num(mor);
        reduction[id] = str_to_num(red);
        connect[id] = str_to_num(con);
        connect_zaliczone[id] = str_to_num(con_zal);
        killer[id] = str_to_num(kil);
        killer_zaliczone[id] = str_to_num(kill_zal);
        jumper[id] = str_to_num(jump);
        jumper_zaliczone[id] = str_to_num(jump_zal);
        
        return PLUGIN_CONTINUE;
        
}
public SprawdzPoziom(id)
{       
        if(poziom_gracza[id] < 100)
        {
                while(exp_gracza[id] >= tabelka_expa[poziom_gracza[id]])
                {
                        poziom_gracza[id]++;
                        ColorChat(id, RED, "^x04%s^x01 Awansowales do ^x04%i^x01 poziomu!", PREFIX, poziom_gracza[id]);
                        ColorChat(0, RED, "^x04%s^x01 Gracz ^x04%s^x01 awansowal do ^x04%i^x01 poziomu!", PREFIX, nick_gracza[id], poziom_gracza[id]);
                        punkty_gracza[id]++;
                }       
        }
        Zapisz(id);
}
 
public EXPMenu(id)
{
        new tytul[100]
        
        format(tytul, charsmax(tytul), "y%s wEXP Mod by rNa 5tyk", PREFIX);
        
        new EXP = menu_create(tytul, "handleEXPMenu");
        menu_additem(EXP, "Menu umiejentosci");
        menu_additem(EXP, "Opis umiejentosci");
        menu_additem(EXP, "Lista osiagniec");
        menu_addblank(id, 4);
        menu_additem(EXP, "Odswiez EXP");
        menu_display(id, EXP, 0);
        
}
 
public handleEXPMenu(id, menu, key)
{
        switch(key)
        {
                case 0:
                {
                        MenuUm(id)
                }
                case 1:
                {
                        Opis(id)
                }
                case 2:
                {
                        OsiagnieciaMenu(id);
                }
                case 3:
                {
                        SprawdzPoziom(id)
                }
        }
        menu_destroy(menu);
}
 
public OsiagnieciaMenu(id)
{
        new tytul[100]
        new osj[100];
        new osk[100];
        new osc[100];
        
        format(tytul, charsmax(tytul), "y%s wOsiagniecia Menu", PREFIX);
        if(jumper[id] < 10001)
        {
                format(osj, charsmax(osj), "Jumper [y%iw/10000]", jumper[id]);
        }
        else
        {
                format(osj, charsmax(osj), "dJumper [y%id][rZALICZONEd]", jumper[id]);
        }
        
        if(killer[id] < 101)
        {
                format(osk, charsmax(osk), "Killer [y%iw/100]", killer[id]);
        }
        else
        {
                format(osk, charsmax(osk), "dKiller [y%id][rZALICZONEd]", killer[id]);
        }
        
        if(connect[id] < 301)
        {
                format(osc, charsmax(osc), "Connector [y%iw/300]", connect[id]);
        }
        else
        {
                format(osc, charsmax(osc), "dConnector [y%id][rZALICZONEd]", connect[id]);
        }
        
        new os = menu_create(tytul, "handleOsiagnieciaMenu");
        menu_additem(os, osj);
        menu_additem(os, osk);
        menu_additem(os, osc);
        menu_display(id, os, 0);
        
}
 
public handleOsiagnieciaMenu(id, menu, key)
{
        switch(key)
        {
                case 0:
                {
                        OsiagnieciaMenu(id);
                }
                case 1:
                {
                        OsiagnieciaMenu(id);
                }
                case 2:
                {
                        OsiagnieciaMenu(id);
                }
        }
        menu_destroy(menu);
}
 
public Opis(id)
{
        new tytul[100]
        
        format(tytul, charsmax(tytul), "y%s wOpis umiejetnosci", PREFIX);
        
        new opis = menu_create(tytul, "handleOpisMenu");
        menu_additem(opis, "Dodatkowe HP");
        menu_additem(opis, "Dodatkowe AP");
        menu_additem(opis, "Apteczka");
        menu_additem(opis, "Ciche kroki");
        menu_additem(opis, "Szansa na HE");
        menu_additem(opis, "Szansa na FB");
        menu_additem(opis, "Szansa na SG");
        menu_additem(opis, "Szybki flash");
        menu_additem(opis, "odrodzenie");
        menu_additem(opis, "Niewidzialnosc");
        menu_additem(opis, "MoreXP");
        menu_additem(opis, "FallDamage Reduction");
        menu_display(id, opis, 0);
        
}
 
public handleOpisMenu(id, menu, key)
{       
        switch(key)
        {
                case 0:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Dodatkowe HP^nDostajesz dodatkowe HP podczas spawnu.^n^n1 punkt = 5 HP", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 1:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Dodatkowe AP^nDostajesz dodatkowy armor podczas spawnu.^n^n1 punkt = 10 AP", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 2:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Apteczka^nLeczy 50 HP.", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 3:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Ciche Kroki^nW CT nie slychac jak chodzisz.", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 4:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Szansa na HE^nMasz szanse na wylosowanie HE.^n^n1 punkt = 15 procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 5:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Szansa na FB^nMasz szanse na wylosowanie FB.^n^n1 punkt = 20 procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 6:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Szansa na SG^nMasz szanse na wylosowanie SG.^n^n1 punkt = 15 procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 7:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Szybki flash^nDostajesz szybkiego flasha.", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 8:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Odrodzenie^nMasz szanse na odrodzenie raz w rundzie.^n^n1 punkt = 30 procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 9:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Niewidzialnosc^nMozesz stac sie niewidzialny.^n^n1 punkt = 2 s", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 10:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Pistolety^nMasz szanse na wylosowanie pistoletu.^n^n1 punkt = 5(VIP 6) procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 11:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w Karabiny^nMasz szanse na wylosowanie karabinu.^n^n1 punkt = 4(VIP 5) procent szans", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 12:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w MoreXP^nSzybciej zdobywasz EXP.^n^nZdobywasz wiecej EXPa o: punkty*2", PREFIX);
                        show_menu(id, 1023, opis);
                }
                case 13:
                {
                        new opis[416];
                        format(opis, charsmax(opis), "y%s w FallDamage Reduction^nOtrzymujesz mniejsze obrazenia po upadku", PREFIX);
                        show_menu(id, 1023, opis);
                }
        }
        menu_destroy(menu);
}
 
public MenuUm(id)
{
        new tytul[100];
        new addhp[100];
        new addap[100];
        new heal[100];
        new fs[100];
        new h[100];
        new f[100];
        new s[100];
        new szybki[100];
        new resp[100];
        new niet[100];
        new br[100];
        new kr[100];
        new mr[100];
        new fall[100];
        
        format(tytul, charsmax(tytul), "y%s wMenu Umiejetnosci (Punkty: r%iw)", PREFIX, punkty_gracza[id]);
        format(addhp, charsmax(addhp), "Dodatkowe HP [r%iw/10]", plushp[id]);
        format(addap, charsmax(addap), "Dodatkowe AP [r%iw/5]", plusap[id]);
        format(heal, charsmax(heal), "Apteczka [r%iw/1]", apteczka[id]);
        format(fs, charsmax(fs), "Ciche kroki [r%iw/1][Od 5 LVL]", ciche[id]);
        format(h, charsmax(h), "Szansa na HE [r%iw/3][Od 3 LVL]", loshe[id]);
        format(f, charsmax(f), "Szansa na FB [r%iw/3]", losfb[id]);
        format(s, charsmax(s), "Szansa na SG [r%iw/3][Od 3LVL]", lossg[id]);
        format(szybki, charsmax(szybki), "Szybki flash [r%iw/1][Od 15 LVL]", fastfb[id]);
        format(resp, charsmax(resp), "Odrodzenie [r%iw/2][Od 10 LVL]", respawn[id]);
        format(niet, charsmax(niet), "Niewidzialnosc [r%iw/5][Od 7 LVL]", niewidka[id]);
        format(br, charsmax(br), "Pistolety [r%iw/3][Od 15 LVL]", bronie[id]);
        format(kr, charsmax(kr), "Karabiny [r%iw/3][Od 20 LVL]", karabiny[id]);
        format(mr, charsmax(mr), "MoreXP [r%iw/5][Od 30 LVL]", morexp[id]);
        format(fall, charsmax(fall), "FallDamage Reduction [r%iw/3][Od 20 LVL]", reduction[id]);
        
        new Umki = menu_create(tytul, "handleMenuUm");
        menu_additem(Umki, addhp);
        menu_additem(Umki, addap);
        menu_additem(Umki, heal);
        menu_additem(Umki, fs);
        menu_additem(Umki, h);
        menu_additem(Umki, f);
        menu_additem(Umki, s);
        menu_additem(Umki, szybki);
        menu_additem(Umki, resp);
        menu_additem(Umki, niet);
        menu_additem(Umki, br);
        menu_additem(Umki, kr);
        menu_additem(Umki, mr);
        menu_additem(Umki, fall);
 
        menu_display(id, Umki, 0);
}
 
public handleMenuUm(id, menu, key)
{
        switch(key)
        {
                case 0:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(plushp[id] == 10)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        plushp[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 1:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(plusap[id] == 10)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        plusap[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 2:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(apteczka[id] == 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        apteczka[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 3:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(ciche[id] == 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 4)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        ciche[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 4:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(loshe[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 2)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        loshe[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 5:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(losfb[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        losfb[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 6:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(lossg[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 2)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        lossg[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 7:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(fastfb[id] == 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 14)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        
                        fastfb[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 8:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(respawn[id] == 2)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 9)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        respawn[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 9:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(niewidka[id] == 5)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 6)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        niewidka[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 10:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(bronie[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 14)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        bronie[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                        
                }
                case 11:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(karabiny[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 19)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        karabiny[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 12:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(morexp[id] == 5)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 29)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        morexp[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
                case 13:
                {
                        if(punkty_gracza[id] < 1)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Nie masz punktow do rozdania!", PREFIX);
                                MenuUm(id);
                                return 1;
                                
                        }
                        
                        if(reduction[id] == 3)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz maksymalny poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        if(poziom_gracza[id] < 19)
                        {
                                ColorChat(id, RED, "^x04%s^x01 Masz za maly poziom!", PREFIX);
                                MenuUm(id);
                                return 1;
                        }
                        reduction[id]++
                        punkty_gracza[id]--;
                        MenuUm(id);
                }
        }
        return PLUGIN_HANDLED;
}
 
public SkillMenu(id)
{
        new tytul[100];
        new apt[100];
        new nie[100];
        
        format(tytul, charsmax(tytul), "y%s wMenu Skilli", PREFIX);
        if(usedApteczka[id] == true)
        {
                format(apt, charsmax(apt), "Apteczka [Uzyte: yTakw]");
        }
        else
        {
                format(apt, charsmax(apt), "dApteczka w[Uzyte: rNiew]");
        }
        
        if(usedNiewidka[id] == true)
        {
                format(nie, charsmax(nie), "dNiewidzialnosc w[Uzyte: yTakw]");
        }
        else
        {
                format(nie, charsmax(nie), "Niewidzialnosc [Uzyte: rNiew]");
        }
        
        new skill = menu_create(tytul, "handleSkillMenu");
        menu_additem(skill, apt);
        menu_additem(skill, nie);
        menu_display(id, skill, 0)
}
 
public handleSkillMenu(id, menu, key)
{
        switch(key)
        {
                case 0:
                {
                        if(!usedApteczka[id] && apteczka[id] == 1)
                        {
                                Apteczka(id);
                                usedApteczka[id] = true;
                                ColorChat(id, RED, "^x04%s^x01 Uleczyles sie o 50HP!", PREFIX);
                                
                        }
                        else
                        {
                                ColorChat(id, RED, "^x04%s^x01 Apteczki mozna uzyc raz na runde lub nie masz dostepu!", PREFIX);
                        }
                }
                case 1:
                {
                        if(!usedNiewidka[id] && niewidka[id] > 0)
                        {
                                WlaczNiewidke(id);
                                usedNiewidka[id] = true;
                                emit_sound(id, CHAN_STATIC, g_sound_stealth, 1.0, ATTN_NORM, 0, PITCH_NORM);
                        }
                        else
                        {
                                ColorChat(id, RED, "^x04%s^x01 Niewidzialnosci mozna uzyc raz na runde lub nie masz dostepu!", PREFIX);
                        }
                }
        }
}
 
public Apteczka(id)
{
        set_user_health(id, get_user_health(id) + 50);
}
 
public fwTouchGrenade2(ent, nade)
{
        for(new id=0; id<33; id++)
        {
                if(fastfb[id] == 1 && is_user_alive(id))
                {
                        fwTouchGrenade(nade, ent);
                }
        }
}
 
public fwTouchGrenade(nade, ent)
{       
        if(pev_valid(ent) && pev(ent, pev_solid) == SOLID_TRIGGER) return;
        
        for(new id=0; id<33; id++)
        {
                if(fastfb[id] == 1 && is_user_alive(id))
                {
                        new szModel[32];
                        pev(nade, pev_model, szModel, 31);
                        
                        for(new i=0;i<sizeof(gszModels); i++)
                                if(equal(szModel[7], gszModels[i]))
                        {       
                                set_pev(nade, pev_dmgtime, get_gametime());
                                dllfunc(DLLFunc_Think, nade);
                                break;
                        }
                        
                }       
        }
}
 
public FwdPlayerDeath(vid, killer, shouldgib)
{
        set_task(0.5, "TaskRespawn", vid);
}
 
public TaskRespawn(vid)
{
        new respsz = respawn[vid]*30
        
        if(!usedRespawn[vid] && respawn[vid] > 0 && random_num(1, 100) <= respsz)
        {
                ExecuteHamB(Ham_CS_RoundRespawn, vid);
                ColorChat(vid, RED, "^x04%s^x01 Udalo Ci sie odrodzic!", PREFIX);
                usedRespawn[vid] = true;
        }
}
 
public WlaczNiewidke(id)
{
        if(niewidka[id] == 0)
        {
                ColorChat(id, GREEN, "%s^x01 Nie masz wykupionej tej umiejetnosci", PREFIX);
                return 1;
        }
        if(usedNiewidka[id])
        {
                ColorChat(id, GREEN, "%s^x01 Juz raz tego uzyles", PREFIX);
                return 1;
        }
        if(!is_user_alive(id))
        {
                ColorChat(id, GREEN, "%s^x01 Musisz byc zywy aby tego uzyc", PREFIX);
                return 1;
        }
        
        set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 0);
        
        new Float:ile = niewidka[id] * 2.0;
        set_task(ile, "WylaczNiewidke", id);
        ColorChat(id, GREEN, "^x04%s^x01 Jestes niewidzialny!", PREFIX);
        usedNiewidka[id] = true;
        
        return 0;
}
 
public WylaczNiewidke(id)
{
        set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 255);
        ColorChat(id, GREEN, "^x04%s^x01 Jestes widzialny!", PREFIX);
}
 
public Life(id)
{
        if(!is_user_connected(id))
                return PLUGIN_CONTINUE;
        new cus[51];
        if(poziom_gracza[id] < 52)
        {
                format(cus, sizeof cus - 1, "Poziom: %d/52 | Exp : %d/%d | Punkty: %d", poziom_gracza[id], exp_gracza[id], tabelka_expa[poziom_gracza[id]], punkty_gracza[id]);
        }
        else
        {
                format(cus, sizeof cus - 1, "Poziom: %d | Exp : %d | Punkty: %d", poziom_gracza[id], exp_gracza[id], punkty_gracza[id]);
        }
 
        message_begin(MSG_ONE, gStatusMsg, {0,0,0}, id) 
        write_byte(0) 
        write_string(cus) 
        message_end() 
        return PLUGIN_HANDLED;
}
 
public TakeDamage(id, inflictor, attacker, Float:damage, damagebits) 
{
        if(is_user_alive(id) && (damagebits & DMG_FALL)) 
        {
                if(reduction[id] > 0) 
                {
                        new percent = reduction[id] *  5;
                        SetHamParamFloat(4, damage * (1.0 - (float(percent) / 100.0)));
                        
                }
        }
}
 
public JumpCount(id, uc_handle){
        static g_Button,
                g_Flags;
        
        g_Button = get_uc(uc_handle, UC_Buttons);
        g_Flags = pev(id, pev_flags);
        
        if(g_Button & IN_JUMP){
                if(g_Flags & FL_ONGROUND){
                        jumper[id]++;
                        
                }
        }
}
 
Wygenerowano w 0.046s, przy pomocy GeSHi 1.0.8
'
Podziel się na Facebook Podziel się na BLIP Podziel się na Twitter Podziel się na Buzz Podziel się na Flaker Dodaj zakładkę Google Podziel się na Delicious Wykop to!

Nowy Komentarz:

Komentarze:

Brak Komentarzy!