DecaK

Untitled

Jul 17th, 2016
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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. }
Advertisement
Add Comment
Please, Sign In to add comment