View difference between Paste ID: 9mKNfjR0 and V9MyWmgm
SHOW: | | - or go back to the newest paste.
1
/* BoxMod Menu*/
2
3
#include <amxmodx>
4
#include <amxmisc>
5
#include <colorchat>
6
#include <cstrike>
7
#include <fun>
8
#include <hamsandwich>
9
#include <engine>
10
#include <dhudmessage>
11
#include <nvault>
12
#include <fakemeta>
13
14
#define PLUGIN "BoxMod Menu"
15
#define VERSION "1.0"
16
#define AUTHOR "Fr0zen"
17
18
#define FL_WATERJUMP    (1<<11)
19
#define FL_ONGROUND     (1<<9)
20
 
21
#pragma semicolon 1
22
23
#if cellbits == 32
24
#else
25
#define OFFSET_CSMONEY  140
26
#endif
27
#if cellbits == 32
28
   #define OFFSET_CSMONEY  115
29
#else
30
   #define OFFSET_CSMONEY  140
31
#endif
32
#define OFFSET_LINUX      5
33
34
#define OFFSET_LINUX      5
35
36
#define MAXENTS 1500
37
38
new bool:HaveWeapon[33], weapon;
39
new MODE,REG_HEALTH, MAXHEALTH, COSTS,SHOUT, MESSAGE, COOLDOWN;
40
new PlayerReload[33];
41
new moneybox[MAXENTS];
42
new model[] = "models/dinari.mdl";
43
new money_sound1[] = "money/drop_money.wav";
44
new method, ison, m_amount, ran_money, random_nums, money_drop, money_drop_a, fadeon, money_sound, divide, force;
45
new g_msgScreenFade;
46
new bool:can_pickup[33];  
47
new g_vault; 
48
new BoxVIP[ 33 ]; 
49
new bool: iVip[33], g_iMaxPlayers;
50
new bool:koristiohebombu[33],bool:koristioflashbombu[33], bool:koristiosmokebombu[33];
51
new bool:koristio25hp[33],bool:koristio50hp[33],bool:koristio75hp[33],koristio100hp[33];
52
new bool:koristio25armor[33],bool:koristio50armor[33],bool:koristio75armor[33],koristio100armor[33];
53
new bool:koristiogravitaciju[33],bool:koristiobrzinu[33],koristionoclip[33]; 
54
new const Fajl[] = "addons/amxmodx/configs/Vipovi.ini";
55
new SyncHudObj;  
56
new iskustvo_igraca[33];
57
new nivo_igraca[33] = 30;  
58
new maxlvl;
59
new kill_iskustvo;
60
61
new const g_sGlavniMenuData[][] = {
62
        "\yCene",
63
        "\yInfo",
64
        "\yBoost",
65
        "\yIzaberi Tim",
66
        "\yShop",
67
        "\yOnline Vipovi",
68
        "\yBanka",
69
        "\yMedic",
70
        "\yAdmin Menu"
71
};
72
73
new const g_szKostaMenuData[][] = {
74
        "\yCene Admina",
75
        "\yCene VIP-a"
76
};
77
78
new const g_szKostaAdminaMenuData[][] = {
79
	"\yAdmin \r1 Boost",
80
	"\yFull Admin \r 2 Boost",
81
	"\yZamenik \r4 Boost",
82
	"\yHead \r5 Boost"		
83
};
84
 
85
new const g_szKostaVipaMenuData[][] = {
86
        "\yVIP \r1 Boost"
87
};
88
89
new const g_szInfoModMenuData[][] = {
90
	"\yVip Info",
91
	"\yBoxMod Info"
92
};
93
94
public plugin_init() {
95
	register_plugin(PLUGIN, VERSION, AUTHOR);
96
	
97
	register_clcmd("say /menu", "GlavniMenu");
98
	register_clcmd("say_team /menu", "GlavniMenu");
99
	register_clcmd( "nightvision", "GlavniMenu");
100
	register_clcmd("say_team /info", "Info");
101
	register_clcmd("say /info", "Info");
102
	register_clcmd("say_team /Info", "BoxModInfo");
103
	register_clcmd("say /cene", "Kosta");
104
	register_clcmd("say_team /cene", "Kosta");
105
	register_clcmd("say /boost", "Boost");
106
	register_clcmd("say_team /boost", "Boost");
107
	register_cvar("Menu Reklama","120");
108
	set_task(get_cvar_float("Menu Reklama"),"reklama" , _ , _ , _ , "b");
109
	register_clcmd("say /boxshop", "Shop");
110
	register_clcmd("say_team /boxshop", "Shop"); 
111
	RegisterHam(Ham_Spawn, "player", "hamspawn");   
112
	register_dictionary("boxvip.txt");
113
	register_message(get_user_msgid( "ScoreAttrib" ),"iVipScoreboard");  
114
	register_message(get_user_msgid("SayText"),"handleSayText");
115
	register_clcmd("say /vips", "VipsOnline");
116
	register_clcmd("say /vipovi", "VipsOnline");
117
	RegisterHam(Ham_Spawn, "player", "Spawn", 1);
118
	g_iMaxPlayers = get_maxplayers(); 
119
	g_vault = nvault_open("BRS");
120
	register_cvar("brs_warmup","0");
121
	register_clcmd("say /banka","BankaMeni");
122
	register_clcmd("say_team /banka", "BankaMeni");
123
	register_concmd("deposit","ubaci");
124
	register_concmd("withdraw","podigni");
125
	ison = register_cvar("amx_dropmoney","1");
126
	method = register_cvar("amx_dropmethod","2");
127
	divide = register_cvar("amx_moneydivide","2");
128
	m_amount = register_cvar("amx_dropamount","1000");
129
	ran_money = register_cvar("amx_droprandom","300 500 700");
130
	random_nums = register_cvar("amx_droprandomnums","300 7500");
131
	money_drop = register_cvar("amx_playerdrop","1");
132
	money_drop_a = register_cvar("amx_playerdropamount","1000");
133
	fadeon = register_cvar("amx_moneyfade","1");
134
	money_sound = register_cvar("amx_moneysound","1");
135
	force = register_cvar("amx_dropforce","15");
136
	g_msgScreenFade = get_user_msgid("ScreenFade");
137
	register_clcmd("drop","hook_drop");
138
	register_event("DeathMsg", "deatha", "a");
139
	register_forward(FM_Touch,"player_Touch");
140
	register_logevent("round_start", 2, "1=Round_Start");
141
	register_cvar("medic_version",VERSION,FCVAR_SERVER);
142
	set_cvar_string("medic_version",VERSION);
143
	MODE = register_cvar("medic_enabled","1");				
144
	REG_HEALTH = register_cvar("medic_health","100");				
145
	MAXHEALTH = register_cvar("medic_maxhp","100");				
146
	COSTS = register_cvar("medic_costs","5000");				
147
	SHOUT = register_cvar("medic_shout","1");				
148
	MESSAGE = register_cvar("medic_message","1");		
149
	COOLDOWN = register_cvar("medic_cooldown","0");	
150
	register_clcmd("/medic","call_medic",ADMIN_ALL);
151
	register_clcmd("medic","call_medic",ADMIN_ALL);
152
	register_clcmd("say /medic","call_medic",ADMIN_ALL);
153
	register_clcmd("say medic","call_medic",ADMIN_ALL);
154
	register_clcmd("say_team /medic","call_medic",ADMIN_ALL);
155
	register_clcmd("say_team medic","call_medic",ADMIN_ALL);
156
	set_task(1.0, "Infomod", _, _, _, "b");
157
	RegisterHam(Ham_Touch, "armoury_entity", "fwdTouch");
158
	RegisterHam(Ham_Touch, "weapon_shield", "fwdTouch");
159
	RegisterHam(Ham_Touch, "weaponbox", "fwdTouch"),
160
	RegisterHam(Ham_Spawn, "player", "hamspawn");
161
	register_message(get_user_msgid("StatusIcon"), "msgStatusIcon");
162
	register_event("CurWeapon", "set_models", "be", "1=1");
163
	register_concmd("amx_drop", "DropCmd", ADMIN_BAN, "Baca igracu oruzje");
164
	register_event( "CurWeapon", "oduzmi", "be", "1=1" );
165
	register_event("DeathMsg", "Death", "ade");
166
	g_vault = nvault_open("xpmod");  
167
	SyncHudObj = CreateHudSyncObj();
168
	kill_iskustvo = register_cvar("amx_killxp", "5");
169
	maxlvl = register_cvar("amx_maxlevel","1000");
170
	register_clcmd("say /level", "PrikaziLeveleuChatu");
171
	register_clcmd("say_team /level", "PrikaziLeveleuChatu");
172
}
173
174
public plugin_precache() {
175
	precache_model(model);
176
	precache_sound(money_sound1);
177
	precache_sound("medic.wav");
178
	precache_model("models/v_ruka.mdl");
179
}
180
181
public client_connect(id) {
182
	PlayerReload[id] = 0;
183
	can_pickup[id]=true;
184
	PonistiInfo(id);  
185
	UcitajLevele(id);  
186
	set_task(3.0, "PokaziInfo", id+672);  
187
	
188
}
189
190
public client_disconnect(id) {
191
	PlayerReload[id] = 0;
192
	can_pickup[id]=false;
193
	HaveWeapon[id] = false;
194
	SacuvajLevele(id);  
195
	PonistiInfo(id);  
196
	remove_task(id+672);  
197
}
198
199
public client_putinserver(id)
200
{
201
	set_task(2.0, "UsaoVIP", id, _, _, "a", 1);
202
	set_task(0.2, "VipoviProvera", id ); 	
203
	set_task(2.0,"clp_delay",id);
204
}	
205
206
207
public Infomod() {
208
        set_hudmessage(255, 255, 255, -1.0, 0.01, 0, 6.0, 1.0);
209
        show_hudmessage(0, "Box Mod by Fr0zen");
210
}
211
212
213
public GlavniMenu(id) {
214
        new iMenuID = menu_create("\rBox Mod Glavni Menu\w:", "GlavniMenu_handle");
215
       
216
        for(new i=0; i<sizeof(g_sGlavniMenuData); i++) menu_additem(iMenuID, g_sGlavniMenuData[i]);
217
       
218
        menu_display(id, iMenuID);
219
}
220
221
public GlavniMenu_handle(id, iMenuID, iItem) {
222
       
223
        switch(iItem) {
224
                case MENU_EXIT: {
225
                        menu_destroy(iMenuID);
226
                        return 0;
227
        }
228
        case 0: Kosta(id);		
229
        case 1: Info(id);
230
        case 2: Boost(id);
231
        case 3: IzaberiTim(id);
232
        case 4: Shop(id);
233
        case 5: VipsOnline(id); 	
234
        case 6: BankaMeni(id);
235
        case 7: call_medic(id);
236
        case 8: AdminMenu(id);
237
        }
238
       
239
        return 0;
240
}
241
242
public Kosta(id) {
243
        new iMenuID = menu_create("\rOdaberite sta zelite", "hKosta");
244
       
245
        for(new i=0; i<sizeof(g_szKostaMenuData); i++) menu_additem(iMenuID, g_szKostaMenuData[i]);
246
       
247
        menu_display(id, iMenuID);
248
       
249
}
250
 
251
public hKosta(id, iMenuID, iItem) {
252
       
253
        switch(iItem) {
254
                case MENU_EXIT: {
255
                        menu_destroy(iMenuID);
256
                        return 0;
257
                }
258
                case 0: KostaAdmina(id);
259
                case 1: KostaVipa(id);
260
        }
261
       
262
        return 0;
263
}
264
265
public KostaAdmina(id) {
266
        new iMenuID = menu_create("\rCene Admina:", "hKostaAdmina");
267
       
268
        for(new i=0; i<sizeof(g_szKostaAdminaMenuData); i++) menu_additem(iMenuID, g_szKostaAdminaMenuData[i]);
269
       
270
        menu_display(id, iMenuID);
271
}
272
273
public hKostaAdmina(id, iMenuID, iItem) {
274
       
275
        switch(iItem) {
276
                case MENU_EXIT: {
277
                        menu_destroy(iMenuID);
278
                        return 0;
279
                }
280
                case 0: KostaAdmina(id);
281
        }
282
       
283
        return 0;
284
}
285
286
public KostaVipa(id) {
287
        new iMenuID = menu_create("\rCene VIP-a:", "hKostaVipa");
288
       
289
        for(new i=0; i<sizeof(g_szKostaVipaMenuData); i++) menu_additem(iMenuID, g_szKostaVipaMenuData[i]);
290
       
291
        menu_display(id, iMenuID);
292
}
293
294
public hKostaVipa(id, iMenuID, iItem) {
295
       
296
        switch(iItem) {
297
                case MENU_EXIT: {
298
                        menu_destroy(iMenuID);
299
                        return 0;
300
                }
301
                case 0: KostaVipa(id);
302
        }
303
       
304
        return 0;
305
}
306
307
public Info(id) {
308
        new iMenuID = menu_create("\Info Meni", "hInfo");
309
       
310
        for(new i=0; i<sizeof(g_szKostaMenuData); i++) menu_additem(iMenuID, g_szInfoModMenuData[i]);
311
       
312
        menu_display(id, iMenuID);
313
       
314
}
315
 
316
public hInfo(id, iMenuID, iItem) {
317
       
318
        switch(iItem) {
319
                case MENU_EXIT: {
320
                        menu_destroy(iMenuID);
321
                        return 0;
322
                }
323
                case 0: VipInfo(id);
324
                case 1: BoxModInfo(id);
325
        }
326
       
327
        return 0;
328
}
329
330
public VipInfo(id)
331
{
332
	show_motd(id, "addons/amxmodx/configs/BoxMod/vipinfo.html");
333
}
334
335
public BoxModInfo(id)
336
{
337
	show_motd(id, "addons/amxmodx/configs/BoxMod/opismoda.html");
338
}
339
340
public Boost(id)
341
    {
342
        client_print(id, print_center, "Pogledaj chat!");
343
        ColorChat(id, TEAM_COLOR, "^4[BoxMod Boost]^3 Prvo izaberi zemlju iz koje boostujes server.");
344
        ColorChat(id, TEAM_COLOR, "^4[BoxMod Boost]^3 Ako nisi ni iz jedne ponudjene zemlje onda ne mozes da boostujes! :(");
345
        ColorChat(id, TEAM_COLOR, "^4[BoxMod Boost]^3 Prije bosta javi se^4 Adminu."),
346
        
347
        set_task(5.0, "cmdMenu", id);
348
}
349
350
public cmdMenu(id)
351
    {
352
    new menu=menu_create("\rIzaberi drzavu:", "menu_handler");
353
    
354
    menu_additem(menu, "\ySrbija");
355
    menu_additem(menu, "\yHrvatska");
356
    menu_additem(menu, "\yBosna i Hercegovina");
357
    menu_additem(menu, "\yCrna Gora");
358
    menu_additem(menu, "\yMakedonija");
359
    
360
    menu_display(id, menu);
361
}
362
public menu_handler(id, menu, item)
363
    {
364
    if(item==MENU_EXIT)
365
        {
366
        menu_destroy(menu);
367
        return PLUGIN_CONTINUE;
368
    }
369
    
370
    switch(item)
371
    {
372
        case 0:
373
        {
374
            new ipsrb[32];
375
            get_user_ip(0, ipsrb, 31);
376
            
377
            client_print(id, print_center, "Pogledaj konzolu!");
378
            
379
            console_print(id, "-----------------------------------BOOST---------------------------------------");
380
            console_print(id, "Kako boostovati server iz Srbije  (sve pazljivo procitaj):");
381
            console_print(id, "-");
382
            console_print(id, "Format poruke: 100 GTRS [IP] [Vase ime] posaljete na broj 1310");
383
            console_print(id, "-");
384
            console_print(id, "Da boostujete ovaj server radite ovako: ukucajte 100 GTRS %s vas_nick i posaljite na broj 1310", ipsrb);
385
            console_print(id, "-");
386
            console_print(id, "Cena jedne poruke je: za mt:s 120.60 RSD, za Vip 118.00 RSD, za Telenor 121.54 RSD");
387
            console_print(id, "-");
388
            console_print(id, "NAPOMENA! server se boostuje tek kada stigne status o naplati!");
389
            console_print(id, "To je uglavnom za par sekundi, ali nekad moze da potraje i do par sati !");
390
            console_print(id, "-----------------------------------BOOST---------------------------------------");
391
            
392
            set_hudmessage(255, 0, 0, -1.0, 0.89, 0, 6.0, 12.0);
393
            show_hudmessage(id, "Za vise informacija poseti www.gametracker.rs");
394
               
395
            return PLUGIN_HANDLED;
396
        }
397
	
398
        case 1:
399
        {
400
            new iphrv[32];
401
            get_user_ip(0, iphrv, 31);
402
            
403
            client_print(id, print_center, "Pogledaj konzolu!");
404
            
405
            console_print(id, "-----------------------------------BOOST---------------------------------------");
406
            console_print(id, "Kako boostovati server iz Hrvatske (sve pazljivo procitaj):");
407
            console_print(id, "-");
408
            console_print(id, "Format poruke: TXT GTRS [IP] [Vase ime] posaljete na broj 67454");
409
            console_print(id, "-");
410
            console_print(id, "Da boostate ovaj server radite ovako: ukucajte TXT GTRS %s vas_nick i posaljite na broj 67454", iphrv);
411
            console_print(id, "-");
412
            console_print(id, "Cijena jedne poruke je: 6,10 KN");
413
            console_print(id, "-");
414
            console_print(id, "Operator usluge s dodanom vrijednosti: NTH Media d.o.o., Horvacanska 17a, 10 000 Zagreb, MB: 1842358, OIB: 59547672558. Tel: 01 6388 160");
415
            console_print(id, "-"),
416
            console_print(id, "Podrska:             +385 1 638 8135      ");
417
            console_print(id, "-");
418
            console_print(id, "NAPOMENA! server se boosta tek kada stigne status o naplati!") ;
419
            console_print(id, "To je uglavnom za par sekundi, ali nekad moze potrajati i do par sati !");
420
            console_print(id, "-----------------------------------BOOST---------------------------------------");
421
            
422
            set_hudmessage(255, 0, 0, -1.0, 0.89, 0, 6.0, 12.0);
423
            show_hudmessage(id, "Za vise informacija poseti www.gametracker.rs");
424
            
425
            return PLUGIN_HANDLED;
426
        }
427
	
428
        case 2:
429
        {
430
            new ipbih[32];
431
            get_user_ip(0, ipbih, 31);
432
            
433
            client_print(id, print_center, "Pogledaj konzolu!");
434
            
435
            console_print(id, "-----------------------------------BOOST---------------------------------------");
436
            console_print(id, "Kako boostovati server iz Bosne i Hercegovine (sve pazljvo procitaj):");
437
            console_print(id, "-");
438
            console_print(id, "Format poruke: TXT GTRS [IP] [Vase ime] posaljete na broj 091810700");
439
            console_print(id, "-");
440
            console_print(id, "Da boostujete ovaj server radite ovako: ukucajte TXT GTRS %s vas_nick i posaljite na broj 091810700", ipbih);
441
            console_print(id, "-");
442
            console_print(id, "Cijena jedne poruke je: 2,00 BAM + PDV");
443
            console_print(id, "-");
444
            console_print(id, "NAPOMENA! server se boostuje tek kada stigne status o naplati!");
445
            console_print(id, "To je uglavnom za par sekundi, ali nekad moze da potraje i do par sati !");
446
            console_print(id, "-----------------------------------BOOST---------------------------------------");
447
            
448
            set_hudmessage(255, 0, 0, -1.0, 0.89, 0, 6.0, 12.0);
449
            show_hudmessage(id, "Za vise informacija poseti www.gametracker.rs");
450
            
451
            return PLUGIN_HANDLED;
452
        }
453
	
454
        case 3:
455
        {
456
            new ipcg[32];
457
            get_user_ip(0, ipcg, 31);
458
            
459
            client_print(id, print_center, "Pogledaj konzolu!");
460
            
461
            console_print(id, "-----------------------------------BOOST---------------------------------------");
462
            console_print(id, "Kako boostovati server iz Crne Gore (sve pazljivo procitaj):");
463
            console_print(id, "-");
464
            console_print(id, "Format poruke: FOR GTRS [IP] [Vase ime] posaljete na broj 14741");
465
            console_print(id, "-");
466
            console_print(id, "Da boostujete ovaj server radite ovako: ukucajte FOR GTRS %s vas_nick i posaljite na broj 14741", ipcg);
467
            console_print(id, "-");
468
            console_print(id, "Cijena jedne poruke je: 1.00 e(euro)");
469
            console_print(id, "-");
470
            console_print(id, "NAPOMENA! server se boostuje tek kada stigne status o naplati!");
471
            console_print(id, "To je uglavnom za par sekundi, ali nekad moze da potraje i do par sati !");
472
            console_print(id, "-----------------------------------BOOST---------------------------------------");
473
            
474
            set_hudmessage(255, 0, 0, -1.0, 0.89, 0, 6.0, 12.0);
475
            show_hudmessage(id, "Za vise informacija poseti www.gametracker.rs");
476
            
477
            return PLUGIN_HANDLED;
478
        }
479
	
480
        case 4:
481
        {
482
            new ipmkd[32];
483
            get_user_ip(0, ipmkd, 31);
484
            
485
            client_print(id, print_center, "Pogledni ja konzolata!");
486
            
487
            console_print(id, "-----------------------------------BOOST---------------------------------------");
488
            console_print(id, "Kako da boostuvas server od Makedonija (Procitaj vnimatelno):");
489
            console_print(id, "-");
490
            console_print(id, "Format na porakata: TAP GTRS [IP] [Vaseto ime] ispratete na broj 141551 ");
491
            console_print(id, "-");
492
            console_print(id, "Za da go bustuvate ovoj server napravete vaka: napisete TAP GTRS %s vasiot_nick i ispratete na broj 141551", ipmkd);
493
            console_print(id, "-");
494
            console_print(id, "Cenata na edna poraka e: 59.00 MKD");
495
            console_print(id, "-");
496
            console_print(id, "IZVESTUVANJE! serverot se boostuva koga stigne do statususot za naplata! ") ;
497
            console_print(id, "Vo glavno e od nekolku sekundi sekundi, no nekogas moze da bide i nekolku casa !");
498
            console_print(id, "-----------------------------------BOOST---------------------------------------");
499
            
500
            set_hudmessage(255, 0, 0, -1.0, 0.89, 0, 6.0, 12.0);
501
            show_hudmessage(id, "Za poveke informacii poseti www.gametracker.rs");
502
            
503
            return PLUGIN_HANDLED;
504
        }
505
    }
506
    return PLUGIN_CONTINUE;
507
}
508
509
public IzaberiTim(id)
510
{  
511
        new menu = menu_create("\rTeam Menu", "team_Handle") ; 
512
        menu_additem(menu, "\yUdji u Kantere");
513
        menu_additem(menu, "\yUdji u Terrore");
514
        menu_additem(menu, "\yUdji u Spec");
515
        menu_display(id, menu);
516
}
517
 
518
public team_Handle(id, iMenu, iItem)
519
{
520
        switch(iItem)
521
        {
522
                case 0:
523
                {
524
			cs_set_user_team(id, CS_TEAM_CT);	
525
			user_kill(id);
526
			ColorChat(id, BLUE, "^x04[BoxMod]^x03 Uspesno si usao u^4 Kantere.");
527
                }
528
                case 1:
529
                {
530
			cs_set_user_team(id, CS_TEAM_T);
531
			user_kill(id);
532
			ColorChat(id, RED, "^x04[BoxMod]^x03 Uspesno si usao u^4 Terrore.");
533
                }
534
	       case 2:
535
	       {
536
			cs_set_user_team(id, CS_TEAM_SPECTATOR);
537
			user_kill(id);
538
			ColorChat(id, TEAM_COLOR, "^x04[BoxMod]^03 Uspesno si usao u^4 Spec.");
539
	      }
540
	       
541
                case MENU_EXIT:
542
                {
543
                        menu_destroy(iMenu);
544
                        return PLUGIN_HANDLED;
545
                }
546
        }
547
       
548
        return PLUGIN_CONTINUE;
549
}
550
551
public reklama() 
552
{ 
553
    ColorChat(0, TEAM_COLOR, "^4[Box Mod]^3 Da otvoris Glavni Menu stisni slovo^4 N.");
554
}  
555
556
public Spawn(id)
557
	if(get_user_flags(id) & (BoxVIP[id])  & is_user_alive(id)) client_PreThink(id);
558
559
	
560
public UsaoVIP( id ) {
561
	
562
	if(BoxVIP[id]) {
563
	
564
		new name[ 32 ];
565
		get_user_name( id, name, 31 );
566
               
567
		set_dhudmessage( 0, 255, 255, -1.0, -1.0, 0, 6.0, 6.0 );
568
		show_dhudmessage( 0, "VIP = %s je usao na server", name );
569
        }
570
}
571
572
public VipoviProvera( id ) {
573
     
574
    new SteamID[ 32 ];
575
    get_user_authid( id, SteamID, 31 ); 
576
    new txtn[100];
577
    formatex(txtn, 100, "Ovde se daje vip");
578
    if(!file_exists(Fajl))
579
    write_file(Fajl, txtn);
580
581
    new broj_linija = file_size( "addons/amxmodx/configs/Vipovi.ini", 1 ); 
582
    new linija[ 256 ], broj;
583
584
    for( new i = 0; i < broj_linija; i++ )  {  
585
        
586
        read_file( "addons/amxmodx/configs/Vipovi.ini", i, linija, 255, broj ); 
587
        if( broj > 0 && containi( linija, SteamID ) != -1 )  
588
	BoxVIP[ id ] = true; 
589
	iVip [ id ] = true;
590
    }
591
    return PLUGIN_CONTINUE;
592
}  
593
	
594
	
595
public client_PreThink(id) {
596
	if(BoxVIP[id]) {
597
		entity_set_float(id, EV_FL_fuser2, 0.0);
598
		if(entity_get_int(id, EV_INT_button) & 2) {
599
			new flags = entity_get_int(id, EV_INT_flags);
600
			if(flags & FL_WATERJUMP) return PLUGIN_CONTINUE;
601
			if(entity_get_int(id, EV_INT_waterlevel) >= 2 ) return PLUGIN_CONTINUE;
602
			if(!(flags & FL_ONGROUND)) return PLUGIN_CONTINUE;
603
			new Float:velocity[3];
604
			entity_get_vector(id, EV_VEC_velocity, velocity);
605
			velocity[2] += 250.0;
606
			entity_set_vector(id, EV_VEC_velocity, velocity);
607
			entity_set_int(id, EV_INT_gaitsequence, 6);
608
		}
609
	}
610
	return PLUGIN_CONTINUE;
611
}
612
613
614
public iVipScoreboard()  
615
{  
616
	new i = get_msg_arg_int(1);  
617
	if(is_user_alive(i) && BoxVIP[i]) 
618
	set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2) | 4);  
619
}
620
621
public handleSayText(msgId, msgDest, msgEnt){
622
	new id = get_msg_arg_int(1);
623
	
624
	if(is_user_connected(id)){
625
		new szTmp[256],
626
		szTmp2[256];
627
		
628
		get_msg_arg_string(2, szTmp, charsmax(szTmp));
629
		
630
		new szPrefix[64] ;
631
632
		if(BoxVIP[id])
633
			formatex(szPrefix,charsmax( szPrefix ),"^x04[VIP LEVEL %d]",nivo_igraca[id]);
634
		else
635
			formatex(szPrefix,charsmax( szPrefix ),"^x04[LEVEL %d]",nivo_igraca[id]);
636
		
637
		if(!equal(szTmp, "#Cstrike_Chat_All")){
638
			add(szTmp2, charsmax(szTmp2), szPrefix);
639
			add(szTmp2, charsmax(szTmp2), " ");
640
			add(szTmp2, charsmax(szTmp2), szTmp);
641
		}
642
		else{
643
			add(szTmp2, charsmax(szTmp2), szPrefix);
644
			add(szTmp2, charsmax(szTmp2), "^x03 %s1^x01 :  %s2");
645
		}
646
		set_msg_arg_string(2, szTmp2);
647
	}
648
	return PLUGIN_CONTINUE;
649
}
650
651
public VipsOnline(id) {	
652
        new szVipsNames[33][32], message[256], i, count, k, len;
653
        for(i = 1 ; i <= g_iMaxPlayers ; i++)
654
        if(BoxVIP[id]) 
655
        if(is_user_connected(i))
656
        if(iVip[i])
657
        get_user_name(i, szVipsNames[count++], 31);
658
        len = format(message, 255, "^x04 %L ", id, "ONLINE_VIPS");
659
        if(count > 0) {
660
                for(k = 0 ; k < count ; k++) {
661
                        len += format(message[len], charsmax(message) - len, "%s%s ", szVipsNames[k], k < (count-1) ? ", ":"");
662
                        if(len > 96 ) {
663
                                ColorChat(id, GREEN, "%s", message);
664
                                len = format(message, charsmax(message), "^x04 ");
665
                        }
666
                }
667
                ColorChat(id, GREEN, "%s", message);
668
        }
669
        else {
670
                len += format(message[len], charsmax(message) - len, "%L", id, "NO_ONLINE_VIPS");
671
                ColorChat(id, GREEN, "%s", message);
672
        }
673
        return PLUGIN_HANDLED;
674
}
675
676
677
678
public Shop_Menu(id)
679
{
680
	new naslovc[60];
681
	format(naslovc, 59, "\rBox Shop Menu");
682
	new menu = menu_create(naslovc, "SPM_Handle");
683
	menu_display(id, menu);
684
	return PLUGIN_HANDLED;
685
}
686
687
688
public SPM_Handle(id, menu, item) 
689
{
690
	
691
	if(item == MENU_EXIT)
692
	{
693
		menu_destroy(menu);
694
		return PLUGIN_CONTINUE;
695
	}
696
	switch(item) 
697
	{ 
698
		case 0: BombeShop(id); 
699
		case 1: HealShop(id);
700
		case 2: ArmorShop(id);
701
		case 3: FunShop(id);
702
	}
703
	return PLUGIN_CONTINUE;
704
} 
705
706
public Shop(id)
707
{
708
	new menu = menu_create("\yBox Shop Menu \d:", "Shop_Handle");
709
	menu_additem(menu, "\rBombe \yShop");
710
	menu_additem(menu, "\rHeal \yShop");
711
	menu_additem(menu, "\rArmor \yShop");
712
	menu_additem(menu, "\rFun \yShop");
713
	menu_display(id, menu);
714
}
715
716
public Shop_Handle(id, menu, item) 
717
{
718
719
	
720
	if(item == MENU_EXIT)
721
	{
722
		menu_destroy(menu);
723
		return PLUGIN_CONTINUE;
724
	}
725
	menu_display(id, menu);
726
	switch(item) 
727
	{ 
728
			case 0:BombeShop(id);
729
			case 1:HealShop(id);
730
			case 2:ArmorShop(id);
731
			case 3:FunShop(id);
732
		}
733
	return PLUGIN_HANDLED;
734
}
735
736
public BombeShop(id)
737
{
738
	new menu = menu_create("\yBombe Shop Menu:", "Bombe1Shop_Handle");
739
	if(BoxVIP[id]) { 
740
		menu_additem(menu, "\wHE Bomba \yCena 450$");
741
		menu_additem(menu, "\wFlash Bomba \yCena 375$");
742
		menu_additem(menu, "\wSmoke Bomba \yCena 300$");
743
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
744
	}
745
	else {
746
		menu_additem(menu, "\wHE Bomba \yCena 900$");
747
		menu_additem(menu, "\wFlash Bomba \yCena 750$");
748
		menu_additem(menu, "\wSmoke Bomba \yCena 600$");
749
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
750
	}
751
	menu_display(id, menu);
752
}
753
754
public Bombe1Shop_Handle(id, menu,item) 
755
{
756
757
	
758
	if(item == MENU_EXIT)
759
	{
760
		menu_destroy(menu);
761
		return PLUGIN_CONTINUE;
762
	}
763
	menu_display(id, menu, item);
764
	new pare_igraca = cs_get_user_money(id);
765
	switch(item) 
766
	{ 
767
		case 0:
768
		{
769
			new cena = 900;
770
			if(BoxVIP[id])  cena = cena/2;
771
			if (pare_igraca<cena)
772
			{
773
				ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
774
				return PLUGIN_CONTINUE;
775
			}
776
			if(koristiohebombu[id]) { 
777
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 HE Bombu^3 ove runde!"); 
778
			return PLUGIN_HANDLED;
779
			} 
780
			koristiohebombu[id] = true;  
781
			give_item(id, "weapon_hegrenade");
782
			ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 HE Bombu.");
783
			cs_set_user_money(id, pare_igraca-cena);
784
		}
785
		case 1:
786
		{
787
			new cena = 750;
788
			if(BoxVIP[id])  cena = cena/2;
789
			if (pare_igraca<cena)
790
			{
791
				ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
792
				return PLUGIN_CONTINUE;
793
			}
794
			if(koristioflashbombu[id]) { 
795
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Flash Bombu^3 ove runde!"); 
796
			return PLUGIN_HANDLED;
797
			} 
798
			koristioflashbombu[id] = true;  
799
			give_item(id, "weapon_flashbang");
800
			ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Flash Bombu.");
801
			cs_set_user_money(id, pare_igraca-cena);
802
		}
803
		case 2: 
804
		{  
805
			new cena = 600;	
806
			if(BoxVIP[id]) cena = cena/2;
807
			if (pare_igraca<cena)
808
			{
809
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
810
				return PLUGIN_CONTINUE;
811
			}
812
			if(koristiosmokebombu[id]) { 
813
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Smoke Bombu^3 ove runde!"); 
814
			return PLUGIN_HANDLED;
815
			} 
816
			koristiosmokebombu[id] = true;  
817
			give_item(id, "weapon_smokegrenade");
818
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Smoke Bombu.");
819
			cs_set_user_money(id, pare_igraca-cena);
820
		}
821
	}
822
	return PLUGIN_CONTINUE;
823
}
824
825
826
public HealShop(id)
827
{
828
	new menu = menu_create("\yHeal Shop Menu \d:", "HealShop1_Handle");
829
	if(BoxVIP[id]) { 
830
		menu_additem(menu, "\wKupi \d[\r +25 HP \d] \yCena 1250$");
831
		menu_additem(menu, "\wKupi \d[\r +50 HP \d] \yCena 2500$");
832
		menu_additem(menu, "\wKupi \d[\r +75 HP \d] \yCena 3750$");
833
		menu_additem(menu, "\wKupi \d[\r +100 HP \d] \yCena 5000$");
834
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
835
	}
836
	else {
837
		menu_additem(menu, "\wKupi \d[\r +525 HP \d] \yCena 2500$");
838
		menu_additem(menu, "\wKupi \d[\r +50 HP \d] \yCena 5000$");
839
		menu_additem(menu, "\wKupi \d[\r +75 HP \d] \yCena 7500$");
840
		menu_additem(menu, "\wKupi \d[\r +100 HP \d] \yCena 10000$");
841
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
842
	}
843
	menu_display(id, menu);
844
}
845
846
public HealShop1_Handle(id, menu, item) 
847
{
848
	
849
	if(item == MENU_EXIT)
850
	{
851
		menu_destroy(menu);
852
		return PLUGIN_CONTINUE;
853
	}
854
	menu_display(id, menu);
855
	new pare_igraca = cs_get_user_money(id);
856
	switch(item) 
857
	{ 
858
		case 0:
859
		{
860
			new cena = 2500;
861
			if(BoxVIP[id])  cena = cena/2;
862
			if (pare_igraca<cena)
863
			{
864
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
865
				return PLUGIN_CONTINUE;
866
			}
867
			if(koristio25hp[id]) { 
868
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +25 HP^3 ove runde!"); 
869
			return PLUGIN_HANDLED; 
870
			} 
871
			koristio25hp[id] = true;  
872
			set_user_health(id, get_user_health(id) + 25);
873
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +25 HP.");
874
			cs_set_user_money(id, pare_igraca-cena);
875
		}
876
		case 1:
877
		{
878
			new cena = 5000;
879
			if(BoxVIP[id]) cena = cena/2;
880
			if (pare_igraca<cena)
881
			{
882
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
883
				return PLUGIN_CONTINUE;
884
			}
885
			if(koristio50hp[id]) { 
886
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +50 HP^3 ove runde!"); 
887
			return PLUGIN_HANDLED;
888
			} 
889
			koristio50hp[id] = true;  
890
			set_user_health(id, get_user_health(id) + 50);
891
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +50 HP.");
892
			cs_set_user_money(id, pare_igraca-cena);
893
		}
894
		case 2:
895
		{
896
			new cena = 7500;
897
			if(BoxVIP[id]) cena = cena/2;
898
			if (pare_igraca<cena)
899
			{
900
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
901
				return PLUGIN_CONTINUE;
902
			}
903
			if(koristio75hp[id]) { 
904
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3Vec si koristio^4 +75 HP^3 ove runde!"); 
905
			return PLUGIN_HANDLED;
906
			} 
907
			koristio75hp[id] = true;  
908
			set_user_health(id, get_user_health(id) + 75);
909
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +75 HP.");
910
			cs_set_user_money(id, pare_igraca-cena);
911
		}
912
		case 3: 
913
		{  
914
			new cena = 10000;	
915
			if(BoxVIP[id]) cena = cena/2;
916
			if (pare_igraca<cena)
917
			{
918
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
919
				return PLUGIN_CONTINUE;
920
			}
921
			if(koristio100hp[id]) { 
922
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +100 HP^3 ove runde!"); 
923
			return PLUGIN_HANDLED;
924
			} 
925
			koristio100hp[id] = true;  
926
			set_user_health(id, get_user_health(id) + 100);
927
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +100 HP.");
928
			cs_set_user_money(id, pare_igraca-cena);
929
		}
930
	}
931
	return PLUGIN_CONTINUE;
932
}
933
934
public ArmorShop(id)
935
{  
936
	new menu = menu_create("\yarmor Shop Menu \d:", "armorShop1_Handle");
937
	if(BoxVIP[id]) { 
938
		menu_additem(menu, "\wKupi \d[\r +25 armor \d] \yCena 1000$");
939
		menu_additem(menu, "\wKupi \d[\r +50 armor \d] \yCena 1500$");
940
		menu_additem(menu, "\wKupi \d[\r +75 armor \d] \yCena 3500$");
941
		menu_additem(menu, "\wKupi \d[\r +100 armor \d] \yCena 4250$");
942
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
943
	}
944
	else {
945
		menu_additem(menu, "\wKupi \d[\r +25 armor \d] \yCena 2000$");
946
		menu_additem(menu, "\wKupi \d[\r +50 armor \d] \yCena 3000$");
947
		menu_additem(menu, "\wKupi \d[\r +75 armor \d] \yCena 7000$");
948
		menu_additem(menu, "\wKupi \d[\r +100 armor \d] \yCena 8500$");
949
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
950
	}
951
	menu_display(id, menu);
952
}
953
954
public armorShop1_Handle(id, menu, item) 
955
{
956
	
957
	if(item == MENU_EXIT)
958
	{
959
		menu_destroy(menu);
960
		return PLUGIN_CONTINUE;
961
	}
962
	menu_display(id, menu);
963
	new pare_igraca = cs_get_user_money(id);
964
	switch(item) 
965
	{ 
966
		case 0:
967
		{
968
			new cena = 2000;
969
			if(BoxVIP[id])  cena = cena/2;
970
			if (pare_igraca<cena)
971
			{
972
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
973
				return PLUGIN_CONTINUE;
974
			}
975
			if(koristio25armor[id]) { 
976
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +25 armor^3 ove runde!"); 
977
			return PLUGIN_HANDLED; 
978
			} 
979
			koristio25armor[id] = true;  
980
			set_user_armor(id, get_user_armor(id) +25);
981
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +25 armor.");
982
			cs_set_user_money(id, pare_igraca-cena);
983
		}
984
		case 1:
985
		{
986
			new cena = 3000;
987
			if(BoxVIP[id]) cena = cena/2;
988
			if (pare_igraca<cena)
989
			{
990
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
991
				return PLUGIN_CONTINUE;
992
			}
993
			if(koristio50armor[id]) { 
994
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +50 armor^3 ove runde!"); 
995
			return PLUGIN_HANDLED;
996
			} 
997
			koristio50armor[id] = true;  
998
			set_user_armor(id, get_user_armor(id) + 50);
999
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +50 armor.");
1000
			cs_set_user_money(id, pare_igraca-cena);
1001
		}
1002
		case 2:
1003
		{
1004
			new cena = 7000;
1005
			if(BoxVIP[id]) cena = cena/2;
1006
			if (pare_igraca<cena)
1007
			{
1008
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
1009
				return PLUGIN_CONTINUE;
1010
			}
1011
			if(koristio75armor[id]) { 
1012
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3Vec si koristio^4 +75 armor^3 ove runde!"); 
1013
			return PLUGIN_HANDLED;
1014
			} 
1015
			koristio75armor[id] = true;  
1016
			set_user_armor(id, get_user_armor(id) + 50);
1017
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +75 armor.");
1018
			cs_set_user_money(id, pare_igraca-cena);
1019
		}
1020
		case 3: 
1021
		{  
1022
			new cena = 8500;	
1023
			if(BoxVIP[id]) cena = cena/2;
1024
			if (pare_igraca<cena)
1025
			{
1026
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
1027
				return PLUGIN_CONTINUE;
1028
			}
1029
			if(koristio100armor[id]) { 
1030
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +100 armor^3 ove runde!"); 
1031
			return PLUGIN_HANDLED;
1032
			} 
1033
			koristio100armor[id] = true;  
1034
			set_user_armor(id, get_user_armor(id) + 100);
1035
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +100 armor.");
1036
			cs_set_user_money(id, pare_igraca-cena);
1037
		}
1038
	}
1039
	return PLUGIN_CONTINUE;
1040
}
1041
1042
1043
1044
public FunShop(id)
1045
{
1046
	new menu = menu_create("\yFun Shop Menu \d:", "FunShop1_Handle");
1047
	if(BoxVIP[id]) { 
1048
		menu_additem(menu, "\wGravitacija \yCena 2000$");
1049
		menu_additem(menu, "\wBrzina \yCena 1500$");
1050
		menu_additem(menu, "\wNoclip \d[\r Traje 10 sekundi \d] \yCena 3750$");
1051
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
1052
	}
1053
	else {
1054
		menu_additem(menu, "\wGravitacija \yCena 4000$");
1055
		menu_additem(menu, "\wBrzina \yCena 3000$");
1056
		menu_additem(menu, "\wNoclip \d[\r Traje 10 sekundi \d] \yCena 7000$");
1057
		menu_setprop(menu, MPROP_EXITNAME, "Izadji");
1058
	}
1059
	menu_display(id, menu);
1060
}
1061
1062
public FunShop1_Handle(id, menu, item) 
1063
{
1064
	
1065
	if(item == MENU_EXIT)
1066
	{
1067
		menu_destroy(menu);
1068
		return PLUGIN_CONTINUE;
1069
	}
1070
	menu_display(id, menu);
1071
	new pare_igraca = cs_get_user_money(id);
1072
	switch(item) 
1073
	{ 
1074
		case 0:
1075
		{
1076
			new cena = 4000;
1077
			if(BoxVIP[id]) cena = cena/2;
1078
			if (pare_igraca<cena)
1079
			{
1080
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
1081
				return PLUGIN_CONTINUE;
1082
			}
1083
			if(koristiogravitaciju[id]) { 
1084
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Gravitaciju^3 ove runde!"); 
1085
			return PLUGIN_HANDLED;
1086
			}		 
1087
			koristiogravitaciju[id] = true;  
1088
			set_user_gravity(id,get_user_gravity(id) - 0.6);
1089
			ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Gravitaciju.");
1090
			cs_set_user_money(id, pare_igraca-cena);
1091
		}
1092
		case 1:
1093
		{
1094
			new cena = 3000;
1095
			if(BoxVIP[id]) cena = cena/2; 
1096
			if (pare_igraca<cena)
1097
			{
1098
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
1099
				return PLUGIN_CONTINUE;
1100
			}
1101
			if(koristiobrzinu[id]) { 
1102
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Brzinu^3 ove runde!"); 
1103
			return PLUGIN_HANDLED;
1104
			} 
1105
			koristiobrzinu[id] = true;  
1106
			set_user_maxspeed(id,get_user_maxspeed(id) + 50.0);
1107
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Brzinu.");
1108
			cs_set_user_money(id, pare_igraca-cena);
1109
		}
1110
1111
		case 2: 
1112
		{  
1113
			new cena = 7000;	
1114
			if(BoxVIP[id]) cena = cena/2;
1115
			if (pare_igraca<cena)
1116
			{
1117
				ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
1118
				return PLUGIN_CONTINUE;
1119
			}
1120
			if(koristionoclip[id]) { 
1121
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Noclip^3 ove runde!"); 
1122
			return PLUGIN_HANDLED;
1123
			} 
1124
			koristionoclip[id] = true;  
1125
			set_user_noclip(id, 1);
1126
			set_task(10.0, "IskljuciNoclip", id);
1127
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Noclip.");
1128
			ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Noclip traje^4 10 sekundi.");
1129
			cs_set_user_money(id, pare_igraca-cena);
1130
		}
1131
	}
1132
	return PLUGIN_CONTINUE;
1133
}
1134
1135
public IskljuciNoclip (id) {
1136
	set_user_noclip(id, 0);
1137
	ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Noclip je ugasen");
1138
}
1139
1140
public hamspawn(id) 
1141
{
1142
	koristiohebombu[id] = false;
1143
	koristioflashbombu[id] = false;
1144
	koristiosmokebombu[id] = false;
1145
	koristio25hp[id] = false;
1146
	koristio50hp[id] = false;
1147
	koristio75hp[id] = false;
1148
	koristio100hp[id] = false;
1149
	koristio25armor[id] = false;
1150
	koristio50armor[id] = false;
1151
	koristio75armor[id] = false;
1152
	koristio100armor[id] = false;
1153
	koristiogravitaciju[id] = false;
1154
	koristiobrzinu[id] = false;
1155
	koristionoclip[id]= false;
1156
	set_task(0.2, "hamspawn2", id);
1157
}
1158
1159
public BankaMeni(id)
1160
{
1161
	new menu = menu_create("\rBoxMod Banka:","Handler");
1162
	menu_additem(menu,"\yStavi pare u banku!");
1163
	menu_additem(menu,"\yPodigni pare iz banku!");
1164
	menu_additem(menu,"\yMoje pare u banci!");
1165
	menu_display(id, menu);
1166
}
1167
public Handler(id,menu,item)
1168
{
1169
	if(item == MENU_EXIT)
1170
	{
1171
		menu_destroy(menu);
1172
		return PLUGIN_CONTINUE;
1173
	}
1174
	switch(item)
1175
	{
1176
		case 0:
1177
		{
1178
			client_cmd(id,"messagemode deposit");
1179
			ColorChat(id, TEAM_COLOR, "^4[BoxMod Banka]^3 Ukucaj broj para koji oces da stavis u^4 Banku!");
1180
		}
1181
		case 1:
1182
		{
1183
			client_cmd(id,"messagemode withdraw");
1184
			ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Ukucaj broj para koji oces da podignes iz^x4 Banke!");
1185
		}
1186
		case 2:
1187
		{
1188
			new broj_bpara[32],pid[32];
1189
			get_user_authid(id,pid,31);
1190
			nvault_get(g_vault,pid,broj_bpara,31);
1191
			ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Imas^4 $%s^3 na tvom racunu!",broj_bpara);
1192
		}
1193
	}
1194
	return PLUGIN_CONTINUE;
1195
}
1196
public ubaci(id)
1197
{
1198
	if(get_cvar_num("brs_warmup")==0)
1199
	{
1200
		new suma[32],suma2, broj_para;
1201
		read_argv(1,suma,31);
1202
		suma2 = str_to_num(suma);
1203
		broj_para = cs_get_user_money(id);
1204
		if(suma2<0) return;
1205
		if(suma2>broj_para)
1206
			ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Nemozes da stavis vise para u^4 Banku^4 nego sto ih imas!");
1207
		else
1208
		{
1209
			new pid[32], bmoney[32],bmoney2, xxx[32];
1210
			get_user_authid(id,pid,31);
1211
			nvault_get(g_vault,pid,bmoney,31);
1212
			bmoney2 = str_to_num(bmoney);
1213
			num_to_str(suma2+bmoney2,xxx,31);
1214
			nvault_set(g_vault,pid,xxx);
1215
			cs_set_user_money(id,broj_para-suma2);
1216
			ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^3 Uspesno si stavio^4 %i^3 dolara u^4 Banku!",suma2);
1217
		}
1218
	}
1219
	else
1220
		ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^3 Nemozes staviti pare u^4 Banku^3  za vreme zagrevanja!");
1221
	
1222
}
1223
public podigni(id)
1224
{
1225
	if(get_cvar_num("brs_warmup")==0)
1226
	{
1227
		new suma[32],suma2, broj_para,broj_bpara[32],broj_bpara2,pid[32],xxx[32];
1228
		read_argv(1,suma,31);
1229
		suma2 = str_to_num(suma);
1230
		broj_para = cs_get_user_money(id);
1231
		get_user_authid(id,pid,31);
1232
		nvault_get(g_vault,pid,broj_bpara,31);
1233
		broj_bpara2 = str_to_num(broj_bpara);
1234
		if(suma2<0)
1235
			return;
1236
		if(suma2>broj_bpara2)
1237
			ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Nemozes podici vise^4 para^3 nego sto ih imas u^4 Banci!");
1238
		else
1239
		{
1240
			if(suma2+broj_para>16000)
1241
				ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^3 Mozes da nosis max $16000 u dzepu :P");
1242
			else
1243
			{
1244
				cs_set_user_money(id,broj_para+suma2);
1245
				num_to_str(broj_bpara2-suma2,xxx,31);
1246
				nvault_set(g_vault,pid,xxx);
1247
				ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Podigao si^x4 %i^3 dolara iz^4 Banke!",suma2);
1248
			}
1249
		}
1250
	}
1251
	else
1252
		ColorChat(id, TEAM_COLOR,"^x4[BoxMod Banka]^3 Nemozes dizati pare za vreme zagrevanja!");
1253
}
1254
1255
public clp_delay(id)
1256
{
1257
	new blaa = random_num(0,2);
1258
	switch(blaa)
1259
	{
1260
		case 1:
1261
		{
1262
			new pid[32], bmoney[32],bmoney2, xxx[32];
1263
			get_user_authid(id,pid,31);
1264
			nvault_get(g_vault,pid,bmoney,31);
1265
			bmoney2 = str_to_num(bmoney);
1266
			if(bmoney2<200)
1267
				return PLUGIN_CONTINUE;
1268
			else
1269
			{
1270
				num_to_str(bmoney2-200,xxx,31);
1271
				nvault_set(g_vault,pid,xxx);
1272
				ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^3 Neko ti je ukrao^4 200^3 dolara iz^4 Banke!");
1273
			}
1274
		}
1275
		case 2:
1276
		{
1277
			new pid[32], bmoney[32],bmoney2, xxx[32];
1278
			get_user_authid(id,pid,31);
1279
			nvault_get(g_vault,pid,bmoney,31);
1280
			bmoney2 = str_to_num(bmoney);
1281
			num_to_str(bmoney2+100,xxx,31);
1282
			nvault_set(g_vault,pid,xxx);
1283
			ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^3 Banka ti je dala^4 100^3 dolara na racun!");
1284
		}
1285
		case 3:
1286
		{
1287
			ColorChat(id, TEAM_COLOR,"^4[BoxMod Banka]^x3 Iznos na tvom racunu se nije promenio!");
1288
		}
1289
	}
1290
	return PLUGIN_CONTINUE;
1291
}
1292
1293
public set_models(id) 
1294
{ 
1295
if(!is_user_alive(id)) 
1296
{ 
1297
return PLUGIN_HANDLED; 
1298
} 
1299
1300
new clip, ammo, weapid = get_user_weapon(id, clip, ammo); 
1301
switch(weapid) 
1302
{ 
1303
case CSW_KNIFE: 
1304
{ 
1305
entity_set_string(id , EV_SZ_viewmodel , "models/v_ruka.mdl");
1306
1307
} 
1308
} 
1309
return PLUGIN_CONTINUE; 
1310
}
1311
1312
1313
public hamspawn2(id) {
1314
	strip_user_weapons(id); 
1315
	give_item(id, "weapon_knife");
1316
}
1317
1318
public fwdTouch(ent, id)
1319
{
1320
    if(!is_user_connected(id))
1321
        return HAM_IGNORED;
1322
    
1323
    return HAM_SUPERCEDE;
1324
}  
1325
1326
public oduzmi(id) {
1327
	if(HaveWeapon[id]) {
1328
	if(get_user_weapon(id) == weapon) {
1329
	client_cmd(id, "drop");
1330
}
1331
}
1332
	return PLUGIN_HANDLED;
1333
}
1334
     
1335
    public DropCmd(id, iLevel, iCid) {
1336
    if(!cmd_access(id, iLevel, iCid, 2)) return PLUGIN_HANDLED;
1337
     
1338
    new szArg1[32];
1339
    read_argv(1, szArg1, charsmax(szArg1));
1340
    new iPlayer = cmd_target(id, szArg1, CMDTARGET_ALLOW_SELF | CMDTARGET_NO_BOTS);
1341
    if(!is_user_connected(iPlayer)) return PLUGIN_HANDLED;
1342
    weapon = get_user_weapon(iPlayer);
1343
    HaveWeapon[iPlayer] = true;
1344
    client_cmd(iPlayer, "drop");
1345
    return PLUGIN_HANDLED;
1346
}
1347
1348
public msgStatusIcon(msgid, msgdest, id)
1349
{
1350
	static szIcon[8];
1351
	get_msg_arg_string(2, szIcon, 7);
1352
     
1353
        if(equal(szIcon, "buyzone") && get_msg_arg_int(1))
1354
        {
1355
            set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0));
1356
            return PLUGIN_HANDLED;
1357
        }
1358
     
1359
        return PLUGIN_CONTINUE;
1360
    }
1361
1362
1363
public call_medic(id) {
1364
	/* Mods and Stuff */
1365
	if(get_pcvar_num(MODE) == 1 && PlayerReload[id] < time())
1366
	{
1367
		new ActuellHP = get_user_health(id);
1368
		new ActuellMoney = fm_cs_get_user_money(id);
1369
		
1370
		if(ActuellMoney < get_pcvar_num(COSTS))
1371
		{
1372
			ColorChat(id,TEAM_COLOR,"^x04[Medic]^x03 Nemas brate pare za medic treba ti^x04 5000$!");
1373
		}
1374
		else
1375
		{
1376
			if(ActuellHP < get_pcvar_num(MAXHEALTH))
1377
			{
1378
				/* Shout if activated */
1379
				/* Write message if activated */
1380
				new playerCount, i, players[32], name[33];
1381
				get_players(players, playerCount, "ach");
1382
				get_user_name(id,name,32);
1383
					
1384
				for(i=1; i<=playerCount; i++)
1385
				{
1386
					if(get_user_team(id) == get_user_team(i))
1387
					{
1388
						if(get_pcvar_num(MESSAGE) == 1)
1389
						{
1390
							client_print(i,print_chat,"%s (RADIO): Medic!",name);
1391
							
1392
							if(get_pcvar_num(SHOUT) == 1)
1393
							{
1394
								engfunc(EngFunc_EmitSound, i, CHAN_ITEM, "medic.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
1395
							}
1396
						}						
1397
					}
1398
1399
				}
1400
1401
				new Float:Lebenplus = get_pcvar_float(REG_HEALTH);
1402
				
1403
				if(ActuellHP + Lebenplus > get_pcvar_num(MAXHEALTH))
1404
				{
1405
					set_pev(id,pev_health,get_pcvar_float(MAXHEALTH));
1406
				}
1407
				else
1408
				{
1409
					set_pev(id,pev_health,ActuellHP + Lebenplus);
1410
				}
1411
1412
				PlayerReload[id] = time() + get_pcvar_num(COOLDOWN);		/* Activate Reload */
1413
				fm_cs_set_user_money(id,ActuellMoney-get_pcvar_num(COSTS),1);	/* Pay.. */
1414
1415
			}
1416
			else
1417
			{
1418
				ColorChat(id,TEAM_COLOR,"^x04[Medic]^x03 Ti vec imas^x04 %i^x03 Hp-a!",get_pcvar_num(MAXHEALTH));
1419
			}
1420
			
1421
		}
1422
	}
1423
	else
1424
	{
1425
		if(get_pcvar_num(MODE) != 1)
1426
			ColorChat(id,TEAM_COLOR,"^x04[Medic]^x03 Medic je zabranjen. Izvini");
1427
		else
1428
		{
1429
			new Seconds = PlayerReload[id] - time();
1430
			ColorChat(id,TEAM_COLOR,"^x04[Medic]^x03 Upravo si pozvao doktora. Sacekaj^x04 %i^x03 sekundi...",Seconds);	
1431
		}
1432
	}
1433
	return PLUGIN_HANDLED;
1434
}
1435
1436
stock fm_cs_set_user_money(id,money,flash=1)
1437
 {
1438
     set_pdata_int(id,OFFSET_CSMONEY,money,OFFSET_LINUX);
1439
1440
     message_begin(MSG_ONE,get_user_msgid("Money"),{0,0,0},id);
1441
     write_long(money);
1442
     write_byte(flash);
1443
     message_end();
1444
 }
1445
1446
 stock fm_cs_get_user_money(id)
1447
 {
1448
     return get_pdata_int(id,OFFSET_CSMONEY,OFFSET_LINUX);
1449
 }
1450
1451
1452
1453
1454
public hook_drop(id) {
1455
	if(!get_pcvar_num(ison) || !get_pcvar_num(money_drop))	return PLUGIN_CONTINUE;
1456
	new weapon,clip,ammo,money,Float:velo[3];
1457
	weapon = get_user_weapon(id,clip,ammo);
1458
	if(weapon == CSW_KNIFE) {
1459
		if(fm_get_user_money(id) < get_pcvar_num(money_drop_a))
1460
			money = fm_get_user_money(id);
1461
		else
1462
			money = get_pcvar_num(money_drop_a);
1463
		
1464
		fm_set_user_money(id,fm_get_user_money(id) - money);
1465
		can_pickup[id] = false;
1466
		set_task(0.3,"reset_pick",id);
1467
		new start_velo = get_pcvar_num(force) * 15;
1468
		new end_velo = get_pcvar_num(force) * 50;
1469
		velocity_by_aim(id,random_num(start_velo,end_velo),velo);
1470
		make_money(id,money,velo);
1471
		return PLUGIN_HANDLED;
1472
	}
1473
	return PLUGIN_CONTINUE;
1474
}
1475
1476
public reset_pick(id)	can_pickup[id] = true;
1477
1478
public deatha() {
1479
	if(!get_pcvar_num(ison))
1480
	return PLUGIN_CONTINUE;
1481
	
1482
	new money, Float:velo[3];
1483
	new victim = read_data(2);
1484
	new killer = read_data(1);
1485
	
1486
	if(killer && killer != victim)
1487
		fm_set_user_money(killer,fm_get_user_money(killer) - 300);
1488
	
1489
	switch(get_pcvar_num(method)) {
1490
		case 1:{
1491
			money = get_pcvar_num(m_amount);
1492
			if(fm_get_user_money(victim) < money) {
1493
				money = fm_get_user_money(victim);
1494
				fm_set_user_money(victim,0);
1495
			}
1496
			else	fm_set_user_money(victim,fm_get_user_money(victim) - get_pcvar_num(m_amount));
1497
			}
1498
		case 2:{
1499
			new tempmoney = fm_get_user_money(victim);
1500
			if(money != 1) {
1501
				money = (tempmoney / get_pcvar_num(divide));
1502
				fm_set_user_money(victim,fm_get_user_money(victim) - money);
1503
			}
1504
			else {
1505
				fm_set_user_money(victim,0);
1506
				money = 1;
1507
			}
1508
		}
1509
		case 3:{
1510
			new maxmoney = fm_get_user_money(victim);
1511
			money = random_num(1,maxmoney);
1512
			fm_set_user_money(victim,fm_get_user_money(victim) - money);
1513
		}
1514
		case 4:{
1515
			new tempmoney2[32];
1516
			get_pcvar_string(ran_money,tempmoney2,31);
1517
			new tempmoney[3][6];
1518
			parse(tempmoney2, tempmoney[0], sizeof tempmoney[] - 1,tempmoney[1], sizeof tempmoney[] - 1,tempmoney[2], sizeof tempmoney[] - 1);
1519
			new num = random_num(1,3);
1520
			switch(num) {
1521
				case 1:{
1522
					money = str_to_num(tempmoney[0]);
1523
				}
1524
				case 2:{
1525
					money = str_to_num(tempmoney[1]);
1526
				}
1527
				case 3:{
1528
					money = str_to_num(tempmoney[2]);
1529
				}
1530
			}
1531
			if(fm_get_user_money(victim) < money) {
1532
				fm_set_user_money(victim,0);
1533
				money = fm_get_user_money(victim);
1534
			}
1535
			else	fm_set_user_money(victim,fm_get_user_money(victim) - money);
1536
			}
1537
		case 5:{
1538
			new tempmoney22[32], num_from, num_to;
1539
			get_pcvar_string(random_nums,tempmoney22,31);
1540
			new tempmoney1[2][6];
1541
			parse(tempmoney22, tempmoney1[0], sizeof tempmoney1[] - 1,tempmoney1[1], sizeof tempmoney1[] - 1);
1542
			num_from = str_to_num(tempmoney1[0]);
1543
			num_to = str_to_num(tempmoney1[1]);
1544
			if(num_to > 16000)	num_to = 16000;
1545
			if(num_from < 0)	num_to = 0;
1546
			money = random_num(num_from,num_to);
1547
			
1548
			if(fm_get_user_money(victim) < money) {
1549
				fm_set_user_money(victim,0);
1550
				money = fm_get_user_money(victim);
1551
			}
1552
			else	fm_set_user_money(victim,fm_get_user_money(victim) - money);
1553
			}
1554
	}
1555
	make_money(victim,money,velo);
1556
	return PLUGIN_CONTINUE;
1557
}
1558
1559
public round_start() {
1560
	new money_ent;
1561
	while((money_ent=engfunc(EngFunc_FindEntityByString,money_ent,"classname","pdm_money")) != 0){
1562
		engfunc(EngFunc_RemoveEntity,money_ent);
1563
	}
1564
}
1565
1566
1567
public make_money(id,money,Float:velo[]) {
1568
	new moneybags = money/1000;
1569
	new moneyleft = money;
1570
	new Float:origin[3];
1571
	new Float:angles[3];
1572
	new Float:mins[3] = {-2.79, -0.0, -6.14};
1573
	new Float:maxs[3] = {2.42, 1.99, 6.35};
1574
	
1575
	if((moneybags * 1000) < money)	moneybags++;
1576
	
1577
	for(new i = 0; i < moneybags; ++i) {
1578
		new newent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString,"info_target"));
1579
		if(!is_user_alive(id)) {
1580
			velo[0] = random_float(1.0,150.0);
1581
			velo[1] = random_float(1.0,150.0);
1582
			velo[2] = random_float(1.0,150.0);
1583
		}
1584
		else 
1585
			velo[2] += 100;
1586
		
1587
		pev(newent,pev_angles,angles);
1588
		angles[1] += random_num(1,360);
1589
		pev(id,pev_origin,origin);
1590
		set_pev(newent, pev_origin, origin);
1591
		set_pev(newent, pev_classname, "pdm_money");
1592
		engfunc(EngFunc_SetModel, newent, model);
1593
		engfunc(EngFunc_SetSize,newent,mins,maxs);
1594
		set_pev(newent,pev_angles,angles);
1595
		set_pev(newent, pev_solid, SOLID_TRIGGER);
1596
		set_pev(newent,pev_movetype,MOVETYPE_TOSS);
1597
		set_pev(newent, pev_velocity,velo);
1598
		engfunc(EngFunc_DropToFloor,newent);
1599
		
1600
		if(moneyleft == 0)	return FMRES_IGNORED;
1601
		
1602
		if(moneyleft < 1000) {
1603
			moneybox[newent]=moneyleft;
1604
			moneyleft = 0;
1605
			return FMRES_IGNORED;
1606
		}
1607
		moneyleft -= 1000;
1608
		moneybox[newent]=1000;
1609
	}
1610
	return FMRES_IGNORED;
1611
}
1612
1613
public player_Touch(touched, toucher) { 
1614
	
1615
	if (!pev_valid(touched) || !is_user_alive(toucher) ||  !get_pcvar_num(ison) || !can_pickup[toucher])
1616
		return FMRES_IGNORED;
1617
	
1618
	new classname[32];
1619
	pev(touched, pev_classname, classname, sizeof classname - 1);
1620
	
1621
	if (equali(classname, "pdm_money")) {
1622
		if(fm_get_user_money(toucher) == 16000)	return FMRES_IGNORED;
1623
		else if((fm_get_user_money(toucher)+moneybox[touched]) > 16000)		fm_set_user_money(toucher,16000);
1624
		else	fm_set_user_money(toucher,fm_get_user_money(toucher) + moneybox[touched]);
1625
			
1626
		if(get_pcvar_num(money_sound))	client_cmd(toucher,"spk %s",money_sound1);
1627
		
1628
		if(pev_valid(touched))
1629
			engfunc(EngFunc_RemoveEntity,touched);
1630
		
1631
		if(get_pcvar_num(fadeon))
1632
			screen_fade(toucher);
1633
	}
1634
	
1635
	return FMRES_IGNORED;
1636
}
1637
1638
1639
1640
public screen_fade(id) {
1641
	message_begin(MSG_ONE, g_msgScreenFade, {0,0,0}, id) ;
1642
	write_short(1<<12);
1643
	write_short(1<<12);
1644
	write_short(1<<12);
1645
	write_byte(0);
1646
	write_byte(200);
1647
	write_byte(0);
1648
	write_byte(20);
1649
	message_end();
1650
}
1651
1652
1653
//XxAvalanchexX Stocks
1654
stock fm_set_user_money(id,money,flash=0)
1655
{
1656
	set_pdata_int(id,OFFSET_CSMONEY,money,OFFSET_LINUX);
1657
	
1658
	message_begin(MSG_ONE,get_user_msgid("Money"),{0,0,0},id);
1659
	write_long(money);
1660
	write_byte(flash);
1661
	message_end();
1662
}
1663
1664
stock fm_get_user_money(id)
1665
{
1666
	return get_pdata_int(id,OFFSET_CSMONEY,OFFSET_LINUX);
1667
}
1668
1669
public AdminMenu( id ) {
1670
	
1671
	new szText[ 555 char ];
1672
	formatex( szText, charsmax( szText ), "\yAdmin Menu" );
1673
	new menu = menu_create( szText, "Admin_Menu_handle2" );
1674
	
1675
	
1676
	if( !( get_user_flags( id ) & ADMIN_BAN ) ){
1677
		
1678
		formatex( szText, charsmax( szText) , "\dBan Menu" );
1679
		menu_additem(menu, szText, "1", 0);
1680
	}
1681
	else {
1682
		
1683
		formatex( szText, charsmax( szText ), "\dBan Menu" );
1684
		menu_additem( menu, szText, "1", 0 );
1685
	}
1686
	if( !( get_user_flags( id ) & ADMIN_KICK ) ) {
1687
		
1688
		formatex( szText, charsmax( szText ), "\dKick Menu" );
1689
		menu_additem( menu, szText, "2", 0 );
1690
	}
1691
	else {
1692
		
1693
		formatex( szText, charsmax( szText ), "\dKick Menu" );
1694
		menu_additem( menu, szText, "2", 0 );
1695
	}
1696
	if( !( get_user_flags( id ) & ADMIN_SLAY ) ) {
1697
		
1698
		formatex( szText, charsmax( szText ), "\dSlap Menu" );
1699
		menu_additem( menu, szText, "3", 0 );
1700
	}
1701
	else {
1702
		
1703
		formatex( szText, charsmax( szText ), "\dSlap Menu" );
1704
		menu_additem( menu, szText, "3", 0 );
1705
	}
1706
	if( !( get_user_flags( id ) & ADMIN_MAP ) ) {
1707
		
1708
		formatex( szText, charsmax( szText ), "\dMap Menu" );
1709
		menu_additem( menu, szText, "4", 0 );
1710
	}
1711
	else {
1712
		
1713
		formatex( szText, charsmax( szText ), "Map Menu" );
1714
		menu_additem( menu, szText, "4", 0 );
1715
	}
1716
	if( !( get_user_flags( id ) & ADMIN_SLAY ) ) {
1717
		
1718
		formatex( szText, charsmax( szText ), "\dPravila za admine" );
1719
		menu_additem( menu, szText, "5", 0 );
1720
	}
1721
	else {
1722
		
1723
		formatex( szText, charsmax( szText ), "Pravila za admine" );
1724
		menu_additem( menu, szText, "5", 0 );
1725
	}
1726
	menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
1727
	menu_display( id, menu );
1728
	return PLUGIN_HANDLED;
1729
}
1730
public Admin_Menu_handle2( id, menu, item ) {
1731
	
1732
	if( item == MENU_EXIT ) {
1733
		
1734
		menu_destroy( menu );
1735
		return PLUGIN_CONTINUE;
1736
	}
1737
	new data[ 6 ], iName[ 64 ], access, callback;
1738
	menu_item_getinfo( menu, item, access, data, charsmax( data ), iName, charsmax( iName ), callback );
1739
	new keys = str_to_num( data );
1740
	
1741
	switch( keys ) {
1742
		case 1: client_cmd( id, "amx_banmenu" );
1743
		case 2: client_cmd( id, "amx_kickmenu" );
1744
		case 3: client_cmd( id, "amx_slapmenu" );
1745
		case 4: client_cmd( id, "amx_mapmenu" );
1746
		case 5: PravilazaAdmine(id);
1747
	}
1748
	return PLUGIN_HANDLED;
1749
}
1750
1751
public PravilazaAdmine(id)
1752
{
1753
	show_motd(id, "addons/amxmodx/configs/BoxMod/pravilazadmine.html");
1754
}	
1755
1756
public PonistiInfo(id)  
1757
{  
1758
    nivo_igraca[id] = 0;  
1759
    iskustvo_igraca[id] = 0;  
1760
}  
1761
 
1762
public izracunajxp(level)
1763
    return level*3*10;
1764
 
1765
 
1766
public PokaziInfo(id)  
1767
{  
1768
id -= 672;  
1769
 
1770
set_task(0.1, "PokaziInfo", id+672);  
1771
 
1772
if(!is_user_alive(id))  
1773
    {  
1774
        new target = entity_get_int(id, EV_INT_iuser2);  
1775
       
1776
        if(target == 0)  
1777
        {  
1778
            return;  
1779
        }     
1780
        set_hudmessage(0, 255, 255, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);   
1781
        ShowSyncHudMsg(id, SyncHudObj, "-=[Level: %i]=-^n-=[XP : %i / %i]=-^n=-[Box Mod by Fr0zen]-=", nivo_igraca[target], iskustvo_igraca[target],izracunajxp(nivo_igraca[target])); 	
1782
    }  
1783
    else  
1784
    {  
1785
	set_hudmessage(0, 255, 255, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);   
1786
	ShowSyncHudMsg(id, SyncHudObj, "-=[Level: %i]=-^n-=[XP : %i / %i]-=^n=-[Box Mod by Fr0zen]-=", nivo_igraca[id], iskustvo_igraca[id],izracunajxp(nivo_igraca[id]));
1787
	
1788
    }  
1789
}     
1790
 
1791
public Death()  
1792
{  
1793
new id = read_data(2);  
1794
new napadac = read_data(1);  
1795
 
1796
if(napadac != id && is_user_connected(napadac))
1797
{  
1798
        new novo_iskustvo = get_pcvar_num(kill_iskustvo);
1799
       
1800
        iskustvo_igraca[napadac] += novo_iskustvo;
1801
        ProveriNivo(napadac);  
1802
    }  
1803
}      
1804
 
1805
public ProveriNivo(id)
1806
{    
1807
    if(nivo_igraca[id] < maxlvl)
1808
    {
1809
        while(iskustvo_igraca[id] >= izracunajxp(nivo_igraca[id]))
1810
        {
1811
            nivo_igraca[id]++;
1812
        }
1813
        if(nivo_igraca[id] > maxlvl)
1814
        {
1815
            nivo_igraca[id] = maxlvl;
1816
           
1817
        }
1818
    }
1819
    SacuvajLevele(id);
1820
}
1821
 
1822
public SacuvajLevele(id)  
1823
{  
1824
    new AuthID[35];  
1825
    get_user_authid(id, AuthID, 34);  
1826
   
1827
    new vaultkey[64], vaultdata[256];  
1828
   
1829
    format(vaultkey, 63, "%s-lvl", AuthID);  
1830
    format(vaultdata, 255, "%i#%i#", iskustvo_igraca[id], nivo_igraca[id]);  
1831
   
1832
    nvault_set(g_vault, vaultkey, vaultdata);  
1833
   
1834
    return PLUGIN_CONTINUE;  
1835
}
1836
1837
public PrikaziLeveleuChatu(id)
1838
{  
1839
	ColorChat(id, TEAM_COLOR, "^x4[Box Mod]^3 Trenutno si ^4%i Level^3,imas^4 %i^3 XP-a,treba ti jos^4 %i^3 da predjes na slijedeci Level", nivo_igraca[id],iskustvo_igraca[id],izracunajxp(nivo_igraca[id]));
1840
}
1841
1842
 
1843
public UcitajLevele(id)  
1844
{  
1845
    new AuthID[35];  
1846
    get_user_authid(id, AuthID, 34);  
1847
   
1848
    new vaultkey[64], vaultdata[256];  
1849
   
1850
    format(vaultkey, 63, "%s-lvl", AuthID);  
1851
    format(vaultdata, 255, "%i#%i#", iskustvo_igraca[id], nivo_igraca[id] );  
1852
   
1853
    nvault_get(g_vault, vaultkey, vaultdata, 255);  
1854
   
1855
    replace_all(vaultdata, 255, "#", " ");  
1856
   
1857
    new iskustvoigraca[32], leveligraca[32];
1858
   
1859
    parse(vaultdata, iskustvoigraca, 31, leveligraca, 31);  
1860
   
1861
    iskustvo_igraca[id] = str_to_num(iskustvoigraca);  
1862
    nivo_igraca[id] = str_to_num(leveligraca);  
1863
    return PLUGIN_CONTINUE;  
1864
}