Advertisement
Guest User

Untitled

a guest
Feb 16th, 2023
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.10 KB | None | 0 0
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <N1K1Cz>
  6. #include <hamsandwich>
  7. #include <cstrike>
  8. #include <stripweapons>
  9. #include <engine>
  10. #include <fakemeta>
  11. #include <fun>
  12. #include <ColorChat>
  13.  
  14. #define PLUGIN "DD2 VIP & SVIP"
  15. #define VERSION "1.0"
  16. #define AUTHOR "N1K1Cz"
  17.  
  18. #define VIPFLAG ADMIN_LEVEL_H
  19. #define SVIPFLAG ADMIN_LEVEL_G
  20. #define MAX 32
  21.  
  22. new rundy=0, weapon_id, bool:g_Vip[33], inter_admin_voice[MAX+1], vipvoice[MAX+1], AdminVoice, skoki[33];
  23. new const menuvipCommand[][]={"say /vips","say_team /vips","say /vipy","say_team /vipy", "say /svips","say_team /svips","say /svipy","say_team /svipy"};
  24. new const opisCommand[][]={"say /vip","say_team /vip","say vip","say_team vip"};
  25. new const opissCommand[][]={"say /svip","say_team /svip","say svip","say_team svip"};
  26.  
  27. public plugin_init() {
  28. register_plugin(PLUGIN, VERSION, AUTHOR)
  29. RegisterHam(Ham_Spawn, "player", "Spawn", 1);
  30. register_forward(FM_CmdStart, "CmdStartPre");
  31. register_forward(FM_Voice_SetClientListening, "Voice_SetClientListening");
  32. register_event("HLTV", "event_new_round", "a", "1=0", "2=0");
  33. register_logevent("GameCommencing", 2, "1=Game_Commencing");
  34. register_message(get_user_msgid("SayText"),"handleSayText");
  35.  
  36. register_clcmd("say_team", "VipChat");
  37. register_clcmd("+adminvoice", "AdminVoiceOn");
  38. register_clcmd("-adminvoice", "AdminVoiceOff");
  39. register_clcmd("+interadminvoice", "InterAdminVoiceOn");
  40. register_clcmd("-interadminvoice", "InterAdminVoiceOff");
  41. register_clcmd("+vipvoice", "InterVipVoiceOn");
  42. register_clcmd("-vipvoice", "InterVipVoiceOff");
  43.  
  44. for(new i;i<sizeof opisCommand;i++) register_clcmd(opisCommand[i], "menu_vips_opis");
  45. for(new i;i<sizeof opissCommand;i++) register_clcmd(opissCommand[i], "menu_vips_opis");
  46. for(new i;i<sizeof menuvipCommand;i++) register_clcmd(menuvipCommand[i], "MenuList");
  47. }
  48. public plugin_natives()
  49. {
  50. register_native("VipMotd", "menu_vips_opis", 1);
  51. register_native("SvipMotd", "menu_vips_opis", 1);
  52. register_native("MenuList", "MenuList", 1);
  53. }
  54. public client_putinserver(id)
  55. {
  56. if(is_user_connected(id) && (get_user_vip(id) == 2 || get_user_vip(id)==1))
  57. {
  58. g_Vip[id]=true;
  59. new name[32]; get_user_name(id, name, 31);
  60. set_hudmessage(0, 212, 220, 0.36, 0.15, 2, 1.0, 3.0, 0.1, 0.2, 5.0)
  61. show_hudmessage(0, "%s (%s)^x01 wbil na serwer!^n^nPrzywitajmy go bardzo serdecznie!", get_user_vip(id)==1 ? "VIP" : "SVIP",name)
  62. }
  63. }
  64. public client_authorized(id)
  65. {
  66. if(get_user_vip(id) == 2)
  67. g_Vip[id]=true;
  68. else if(get_user_vip(id) == 1)
  69. g_Vip[id]=true;
  70. }
  71. public client_disconnect(id)
  72. {
  73. new name[32]; get_user_name(id, name, 31);
  74. if(get_user_vip(id)==2 || get_user_vip(id)==1)
  75. {
  76. set_hudmessage(0, 212, 220, 0.36, 0.2, 2, 1.0, 3.0, 0.1, 0.2, 5.0)
  77. show_hudmessage(0, "Wychodzi %s: (%s)^n^nMam nadzieje ze sie pozegnaliscie! :D", get_user_vip(id)==1 ? "VIP" : "SUPER VIP", name)
  78. }
  79. }
  80. public event_new_round(){
  81. ++rundy;
  82. }
  83. public GameCommencing(){
  84. rundy=0;
  85. }
  86. public Spawn(id)
  87. {
  88. if(!is_user_alive(id))
  89. return;
  90. if(!get_user_vip(id))
  91. return;
  92. switch(get_user_vip(id))
  93. {
  94. case 1:
  95. {
  96. //set_user_health(id, get_user_health(id)+15);
  97. cs_set_user_armor(id, 100, CS_ARMOR_KEVLAR)
  98. }
  99. case 2:
  100. {
  101. //set_user_health(id, get_user_health(id)+30);
  102. cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM)
  103. }
  104. }
  105. if(get_user_team(id)==2){
  106. give_item(id, "item_thighpack");
  107. }
  108. new henum=(user_has_weapon(id,CSW_HEGRENADE)?cs_get_user_bpammo(id,CSW_HEGRENADE):0);
  109. if(!henum && henum<1){
  110. give_item(id, "weapon_hegrenade");
  111. ++henum;
  112. }
  113. new fbnum=(user_has_weapon(id,CSW_FLASHBANG)?cs_get_user_bpammo(id,CSW_FLASHBANG):0);
  114. if(!fbnum && fbnum<2){
  115. give_item(id, "weapon_flashbang");
  116. ++fbnum;
  117. }
  118. cs_set_user_bpammo(id, CSW_FLASHBANG, min(2, fbnum+2));
  119. new sgnum=(user_has_weapon(id,CSW_SMOKEGRENADE)?cs_get_user_bpammo(id,CSW_SMOKEGRENADE):0);
  120. if(!sgnum && sgnum<1){
  121. give_item(id, "weapon_smokegrenade");
  122. ++sgnum;
  123. }
  124. vip_menu(id);
  125. }
  126. public CmdStartPre(id, uc_handle){
  127. if(get_user_vip(id)==2){
  128. if(is_user_alive(id)){
  129. CmdStartPreVip(id, uc_handle);
  130. }
  131. }
  132. }
  133. public CmdStartPreVip(id, uc_handle){
  134. new flags = pev(id, pev_flags);
  135. if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id]>0){
  136. --skoki[id];
  137. new Float:velocity[3];
  138. pev(id, pev_velocity,velocity);
  139. velocity[2] = random_float(265.0,285.0);
  140. set_pev(id,pev_velocity,velocity);
  141. } else if(flags & FL_ONGROUND && skoki[id]!=-1){
  142. skoki[id] = 1;
  143. }
  144. }
  145. public DeathMsg(){
  146. new killer=read_data(1);
  147. new victim=read_data(2);
  148. if(is_user_alive(killer) && g_Vip[killer] && get_user_team(killer) != get_user_team(victim)){
  149. DeathMsgVip(killer,victim,read_data(3));
  150. }
  151. }
  152. public DeathMsgVip(kid,vid,hs){
  153. if(get_user_vip(kid)==1){
  154. set_user_health(kid, min(get_user_health(kid)+(hs?10:5),150));
  155. cs_set_user_money(kid, cs_get_user_money(kid)+(hs?300:150));
  156. }else if(get_user_vip(kid)==2){
  157. set_user_health(kid, min(get_user_health(kid)+(hs?15:10),150));
  158. cs_set_user_money(kid, cs_get_user_money(kid)+(hs?500:250));
  159. }
  160. }
  161. public MenuList(id)
  162. {
  163. new menu = menu_create("\wLista \yVIP & SVIP \rOnline:", "Lista_Handler")
  164. new iPlayers[32], iNum, szName[64], ItemName[64];
  165. get_players(iPlayers, iNum)
  166.  
  167. for(new i=0; i<iNum; i++)
  168. {
  169. if(!is_user_connected(iPlayers[i])) continue;
  170. if(is_user_hltv(iPlayers[i])) continue;
  171. if(!get_user_vip(iPlayers[i])) continue;
  172. get_user_name(iPlayers[i],szName,charsmax(szName))
  173. formatex(ItemName, 63, "\y%s \r[\y%s\r]", szName, get_user_vip(iPlayers[i])==2?"SVIP":"VIP")
  174. menu_additem(menu, ItemName);
  175. }
  176. if(!ItemName[0])
  177. {
  178. ColorChat(id, GREEN, "[VIP && SVIP Online]^x01 Brak");
  179. return PLUGIN_HANDLED;
  180. }
  181. menu_display(id,menu);
  182. return PLUGIN_HANDLED;
  183. }
  184. public Lista_Handler(id, menu, item)
  185. {
  186. if(item==MENU_EXIT)
  187. {
  188. menu_destroy(menu)
  189. return;
  190. }
  191. menu_display(id, menu)
  192. }
  193. public vip_menu(id){
  194. new title[74];
  195. formatex(title,73, "\w[\r>\w] Menu \y%s:", get_user_vip(id)==1 ? "VIP" : "SVIP"); //by n1k1cz
  196. new menu=menu_create(title, "menu_handler");
  197. new nieaktywna=menu_makecallback("nieaktywna_func");
  198. menu_additem(menu,"\w[\r>\w] AK47 + deagle");
  199. menu_additem(menu,"\w[\r>\w] M4A1 + deagle");
  200. menu_additem(menu,"\w[\r>\w] AWP + deagle");
  201. if(get_user_vip(id)==2) menu_additem(menu,"\w[\r>\w] Krowa + deagle");
  202. else menu_additem(menu,"\w[\r>\w] Krowa + deagle \w[\ySVIP\w]", "",0,nieaktywna);
  203. if(get_user_vip(id)==2) menu_additem(menu,"\w[\r>\w] XM1014 + deagle");
  204. else menu_additem(menu,"\w[\r>\w] XM1014 + deagle \w[\ySVIP\w]", "",0,nieaktywna);
  205. if(rundy>=3){
  206. menu_setprop(menu,MPROP_EXITNAME,"\r[\wX\r]");
  207. menu_setprop(menu,MPROP_NUMBER_COLOR,"\r");
  208. menu_display(id, menu);
  209. }else{
  210. menu_destroy(menu);
  211. }
  212. }
  213. public menu_handler(id, menu, item){
  214. if(is_user_alive(id)){
  215. if(rundy>=3){
  216. if(item==0){
  217. StripWeapons(id, Secondary);
  218. give_item(id, "weapon_deagle");
  219. give_item(id, "ammo_50ae");
  220. weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
  221. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  222. cs_set_user_bpammo(id, CSW_DEAGLE, 35);
  223. StripWeapons(id, Primary);
  224. give_item(id, "weapon_ak47");
  225. give_item(id, "ammo_762nato");
  226. weapon_id=find_ent_by_owner(-1, "weapon_ak47", id);
  227. if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
  228. cs_set_user_bpammo(id, CSW_AK47, 90);
  229. }
  230. if(item==1){
  231. StripWeapons(id, Secondary);
  232. give_item(id, "weapon_deagle");
  233. give_item(id, "ammo_50ae");
  234. weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
  235. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  236. cs_set_user_bpammo(id, CSW_DEAGLE, 35);
  237. StripWeapons(id, Primary);
  238. give_item(id, "weapon_m4a1");
  239. give_item(id, "ammo_556nato");
  240. weapon_id=find_ent_by_owner(-1, "weapon_m4a1", id);
  241. if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
  242. cs_set_user_bpammo(id, CSW_M4A1, 90);
  243. }
  244. if(item==2){
  245. StripWeapons(id, Secondary);
  246. give_item(id, "weapon_deagle");
  247. give_item(id, "ammo_50ae");
  248. weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
  249. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  250. cs_set_user_bpammo(id, CSW_DEAGLE, 35);
  251. StripWeapons(id, Primary);
  252. give_item(id, "weapon_awp");
  253. give_item(id, "ammo_338magnum");
  254. weapon_id=find_ent_by_owner(-1, "weapon_awp", id);
  255. if(weapon_id)cs_set_weapon_ammo(weapon_id, 10);
  256. cs_set_user_bpammo(id, CSW_AWP, 30);
  257. }
  258. if(item==3){
  259. StripWeapons(id, Secondary);
  260. give_item(id, "weapon_deagle");
  261. give_item(id, "ammo_50ae");
  262. weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
  263. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  264. cs_set_user_bpammo(id, CSW_DEAGLE, 35);
  265. StripWeapons(id, Primary);
  266. give_item(id, "weapon_m249");
  267. give_item(id, "ammo_556natobox");
  268. weapon_id=find_ent_by_owner(-1, "weapon_m249", id);
  269. if(weapon_id)cs_set_weapon_ammo(weapon_id, 100);
  270. cs_set_user_bpammo(id, CSW_M249, 200);
  271. }
  272. if(item==4){
  273. StripWeapons(id, Secondary);
  274. give_item(id, "weapon_deagle");
  275. give_item(id, "ammo_50ae");
  276. weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
  277. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  278. cs_set_user_bpammo(id, CSW_DEAGLE, 35);
  279. StripWeapons(id, Primary);
  280. give_item(id, "weapon_xm1014");
  281. give_item(id, "ammo_buckshot");
  282. weapon_id=find_ent_by_owner(-1, "weapon_xm1014", id);
  283. if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
  284. cs_set_user_bpammo(id, CSW_XM1014, 32);
  285. }
  286. }
  287. }
  288. menu_destroy(menu);
  289. return PLUGIN_HANDLED;
  290. }
  291. public menu_vips_opis(id)
  292. {
  293. new menu = menu_create("\d===========^n\w[\r>\w] \yMenu \rVIP/SVIP:^n\d===========", "wybieranie") //by n1k1cz
  294.  
  295. menu_additem(menu, "\w[\r>\w] Opis \rVIP \y(MOTD)", "0")
  296. menu_additem(menu, "\w[\r>\w] Opis \rVIP \y(MENU)", "1")
  297. menu_additem(menu, "\w[\r>\w] Opis \rSVIP \y(MOTD)", "2")
  298. menu_additem(menu, "\w[\r>\w] Opis \rSVIP \y(MENU)", "3")
  299.  
  300. menu_setprop(menu, MPROP_BACKNAME, "\y<<<");
  301. menu_setprop(menu, MPROP_NEXTNAME, "\y>>>");
  302. menu_setprop(menu, MPROP_EXITNAME, "\r[\wX\r]");
  303. menu_display(id, menu, 0)
  304. }
  305. public wybieranie(id, menu, item)
  306. {
  307. if (item == MENU_EXIT)
  308. {
  309. menu_destroy(menu)
  310. return PLUGIN_HANDLED
  311. }
  312. new data[6], iName[64]
  313. new acces, callback
  314. menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)
  315. new key = str_to_num(data)
  316. switch(key)
  317. {
  318. case 0:opis_vip_motd(id);
  319. case 1:opis_vip(id);
  320. case 2:opis_svip_motd(id);
  321. case 3:opis_svip(id);
  322. }
  323. menu_destroy(menu)
  324. return PLUGIN_HANDLED
  325. }
  326. public opis_vip_motd(id)
  327. show_motd(id, "vip.txt","*VIP*");
  328. public opis_svip_motd(id)
  329. show_motd(id, "svip.txt","*SVIP*");
  330. public opis_vip(id) //by n1k1cz
  331. {
  332. show_menu(id, 1023, "\w[\r>\w] Co posiada \rVIP\w?:^n\
  333. \w[\r>\w] Dodatkowe \yhp/$$$ \wza \rzabojstwo!^n\
  334. \w[\r>\w] Prywatny czat \yu*^n\
  335. \w[\r>\w] Status \yVIP \ww tabeli punktow i prefix przed nickiem^n\
  336. \w[\r>\w] x2 Szybsze nabijanie monet^n\
  337. \w[\r>\w] Prywatny kanal rozmow vipvoice^n\
  338. \w[\r>\w] Pieniadze za \rprzezycie \wi \rpodlozenie/rozbrojenie \wpaki^n\
  339. \w[\r>\w] Przywitanie gdy wchodzi na serwer^n\
  340. \w[\r>\w] Menu broni od 3 rundy:^n\
  341. \w[\r>\w] ~\rM4A1 \y+ \rDeagle^n\
  342. \w[\r>\w] ~\rAK47 \y+ \rDeagle^n\
  343. \w[\r>\w] ~\rAWP \y+ \rDeagle^n\
  344. \w[\r>\w] Free granaty i defuse kit^n^n\d[Kliknij przycisk od 1 do 0 aby zamknac]", -1, "Co posiada VIP?");
  345. return PLUGIN_HANDLED;
  346. }
  347. public opis_svip(id) //by n1k1cz
  348. {
  349. show_menu(id, 1023, "\w[\r>\w] Co posiada \rSVIP\w?:^n\
  350. \w[\r>\w] Dodatkowe \yhp/$$$ \wza \rzabojstwo!^n\
  351. \w[\r>\w] Status \yVIP \ww tabeli punktow i prefix przed nickiem^n\
  352. \w[\r>\w] Dodatkowy \yskok, prywatny czat \yu*^n\
  353. \w[\r>\w] x3 Szybsze nabijanie monet^n\
  354. \w[\r>\w] Prywatny kanal rozmow vipvoice^n\
  355. \w[\r>\w] Pieniadze za \rprzezycie \wi \rpodlozenie/rozbrojenie \wpaki^n\
  356. \w[\r>\w] Przywitanie gdy wchodzi na serwer^n^n\
  357. \w[\r>\w] Menu broni od 3 rundy:^n\
  358. \w[\r>\w] ~\rM4A1 \y+ \rDeagle^n\
  359. \w[\r>\w] ~\rAK47 \y+ \rDeagle^n\
  360. \w[\r>\w] ~\rAWP \y+ \rDeagle^n\
  361. \w[\r>\w] ~\rKrowa \y+ \rDeagle^n\
  362. \w[\r>\w] ~\rXM1014 \y+ \rDeagle^n\
  363. \w[\r>\w] Free granaty i defuse kit^n^n\d[Kliknij przycisk od 1 do 0 aby zamknac]", -1, "Co posiada VIP?");
  364. return PLUGIN_HANDLED;
  365. }
  366. public AdminVoiceOn(id)
  367. {
  368. if(!(get_user_flags(id) & ADMIN_CHAT))
  369. return PLUGIN_HANDLED;
  370.  
  371. if(AdminVoice)
  372. return PLUGIN_HANDLED;
  373.  
  374. AdminVoice = id;
  375. new name[32]; get_user_name(id, name, 31);
  376. client_print_color(0,0,"^x03[DD2]^x01 Cisza! ^x03%s ^x01przemawia.", name);
  377. client_cmd(id, "+voicerecord");
  378. return PLUGIN_HANDLED;
  379. }
  380.  
  381. public AdminVoiceOff(id)
  382. {
  383. if(!(get_user_flags(id) & ADMIN_CHAT))
  384. return PLUGIN_HANDLED;
  385.  
  386. if(AdminVoice != id)
  387. {
  388. client_cmd(id, "-voicerecord");
  389. return PLUGIN_HANDLED;
  390. }
  391. client_cmd(id, "-voicerecord");
  392. AdminVoice = 0;
  393. return PLUGIN_HANDLED;
  394. }
  395.  
  396. public InterVipVoiceOn(id)
  397. {
  398. if(!get_user_vip(id))
  399. return PLUGIN_HANDLED;
  400.  
  401. vipvoice[id] = true;
  402. client_cmd(id, "+voicerecord");
  403.  
  404. for(new i = 1; i < 33; i++) {
  405. if(!is_user_connected(i) || !get_user_vip(id)) {
  406. continue;
  407. }
  408. }
  409.  
  410. return PLUGIN_HANDLED;
  411. }
  412.  
  413. public InterVipVoiceOff(id)
  414. {
  415. if(!get_user_vip(id))
  416. return PLUGIN_HANDLED;
  417.  
  418. vipvoice[id] = false;
  419. client_cmd(id, "-voicerecord");
  420.  
  421. return PLUGIN_HANDLED;
  422. }
  423.  
  424. public InterAdminVoiceOn(id)
  425. {
  426. if(!(get_user_flags(id) & ADMIN_CHAT))
  427. return PLUGIN_HANDLED;
  428.  
  429. inter_admin_voice[id] = true;
  430. client_cmd(id, "+voicerecord");
  431.  
  432. for(new i = 1; i < 33; i++) {
  433. if(!is_user_connected(i) || !(get_user_flags(i) & ADMIN_CHAT)) {
  434. continue;
  435. }
  436. new name[32]; get_user_name(id, name, 31);
  437. client_print_color(i,i,"^x04[DD2]^x03 %s^x01 mówi do adminów.",name);
  438. }
  439.  
  440. return PLUGIN_HANDLED;
  441. }
  442.  
  443. public InterAdminVoiceOff(id)
  444. {
  445. if(!(get_user_flags(id) & ADMIN_CHAT))
  446. return PLUGIN_HANDLED;
  447.  
  448. inter_admin_voice[id] = false;
  449. client_cmd(id, "-voicerecord");
  450.  
  451. return PLUGIN_HANDLED;
  452. }
  453. public Voice_SetClientListening(odbiorca, nadawca, bool:listen)
  454. {
  455. if(AdminVoice)
  456. {
  457. if(AdminVoice == nadawca)
  458. {
  459. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true);
  460. forward_return(FMV_CELL, true);
  461. return FMRES_SUPERCEDE;
  462. }
  463. else if(get_user_team(nadawca) == 1)
  464. {
  465. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false);
  466. forward_return(FMV_CELL, false);
  467. return FMRES_SUPERCEDE;
  468. }
  469. }
  470.  
  471. if(vipvoice[nadawca]) {
  472. if(get_user_team(odbiorca) == get_user_team(nadawca)) {
  473. if(get_user_flags(odbiorca) & ADMIN_LEVEL_H) {
  474. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true);
  475. forward_return(FMV_CELL, true);
  476. return FMRES_SUPERCEDE;
  477. }
  478. }
  479.  
  480. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false);
  481. forward_return(FMV_CELL, false);
  482. return FMRES_SUPERCEDE;
  483. }
  484.  
  485. if(inter_admin_voice[nadawca]) {
  486. if(get_user_flags(odbiorca) & ADMIN_CHAT) {
  487. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true);
  488. forward_return(FMV_CELL, true);
  489. return FMRES_SUPERCEDE;
  490. }
  491. }
  492.  
  493. if(get_user_team(nadawca) == get_user_team(odbiorca)) {
  494. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true);
  495. forward_return(FMV_CELL, true);
  496. return FMRES_SUPERCEDE;
  497. }
  498. engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true);
  499. forward_return(FMV_CELL, true);
  500. return FMRES_SUPERCEDE;
  501. }
  502. public bomb_planted(id){
  503. if(is_user_alive(id) && get_user_vip(id)==1){
  504. cs_set_user_money(id,cs_get_user_money(id) + 300);
  505. }else if(is_user_alive(id) && get_user_vip(id)==2){
  506. cs_set_user_money(id,cs_get_user_money(id) + 500);
  507. }
  508. }
  509. public bomb_defused(id){
  510. if(is_user_alive(id) && get_user_vip(id)==1){
  511. cs_set_user_money(id,cs_get_user_money(id) + 300);
  512. }else if(is_user_alive(id) && get_user_vip(id)==2){
  513. cs_set_user_money(id,cs_get_user_money(id) + 500);
  514. }
  515. }
  516. public handleSayText(msgId,msgDest,msgEnt){
  517. new id = get_msg_arg_int(1);
  518.  
  519. if(!is_user_connected(id)) return PLUGIN_CONTINUE;
  520.  
  521. new szTmp[192], szTmp2[192];
  522. get_msg_arg_string(2, szTmp, charsmax(szTmp));
  523.  
  524. new szPrefix[32];
  525.  
  526. switch(get_user_vip(id))
  527. {
  528. case 1: copy(szPrefix, 31, "^x03[^x04VIP^x03]");
  529. case 2: copy(szPrefix, 31, "^x03[^x01Super^x04VIP^x03]");
  530. default: return PLUGIN_CONTINUE;
  531. }
  532.  
  533. if(!equal(szTmp,"#Cstrike_Chat_All")){
  534. add(szTmp2, charsmax(szTmp2), "^x01");
  535. add(szTmp2, charsmax(szTmp2), szPrefix);
  536. add(szTmp2, charsmax(szTmp2), " ");
  537. add(szTmp2, charsmax(szTmp2), szTmp);
  538. }
  539. else{
  540. new szPlayerName[64];
  541. get_user_name(id, szPlayerName, charsmax(szPlayerName));
  542.  
  543. get_msg_arg_string(4, szTmp, charsmax(szTmp));
  544. set_msg_arg_string(4, "");
  545.  
  546. add(szTmp2, charsmax(szTmp2), "^x01");
  547. add(szTmp2, charsmax(szTmp2), szPrefix);
  548. add(szTmp2, charsmax(szTmp2), "^x03 ");
  549. add(szTmp2, charsmax(szTmp2), szPlayerName);
  550. add(szTmp2, charsmax(szTmp2), "^x01 : ");
  551. add(szTmp2, charsmax(szTmp2), szTmp)
  552. }
  553.  
  554. set_msg_arg_string(2, szTmp2);
  555.  
  556. return PLUGIN_CONTINUE;
  557. }
  558. public VipChat(id){
  559. if(g_Vip[id]){
  560. new g_Msg[256],
  561. g_Text[256];
  562.  
  563. read_args(g_Msg,charsmax(g_Msg));
  564. remove_quotes(g_Msg);
  565.  
  566. if(g_Msg[0] == '*' && g_Msg[1]){
  567. new g_Name[64];
  568. get_user_name(id,g_Name,charsmax(g_Name));
  569.  
  570. formatex(g_Text,charsmax(g_Text),"^x03[^x04VIP CHAT^x03] ^x03[%s]: ^x04%s", g_Name, g_Msg[1]);
  571.  
  572. for(new i=1;i<33;i++){
  573. if(is_user_connected(i) && g_Vip[i])
  574. ColorChat(i, GREEN, "%s", g_Text);
  575. }
  576. return PLUGIN_HANDLED_MAIN;
  577. }
  578. }
  579. return PLUGIN_CONTINUE;
  580. }
  581. public nieaktywna_func(id, menu, item){
  582. return ITEM_DISABLED;
  583. }
  584. stock get_user_vip(id)
  585. {
  586. if(get_user_flags(id) & VIPFLAG)
  587. return 1;
  588. else if(get_user_flags(id) & SVIPFLAG)
  589. return 2;
  590.  
  591. return 0;
  592. }
  593.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement