hlmod.hu
https://hlmod.hu/

csdmvip
https://hlmod.hu/viewtopic.php?f=29&t=21557
Oldal: 1 / 1

Szerző:  $weeT [2015.07.17. 19:36 ]
Hozzászólás témája:  csdmvip

valaki meg csinálja nekem azt a plugint nem leszek hálátlan
1.ölésért kapjon aranyat
2.aranyért lehessen vipet venni és én is tudjak adni jogra
3. vipeknek legyen képességűk pl 180 HP gyorsabban menjenek késsel model egyedi skinek

Szerző:  Z$OL@ [2015.07.18. 14:40 ]
Hozzászólás témája:  Re: csdmvip

Nincs tesztelve!
És az users.ini-be tudsz adni neki V.I.P jogot a "t" jogal tudsz adni.
Minden körben neki kell ki választani a 150hp-t!
SMA Forráskód: [ Mindet kijelol ]
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <fun>
  6. #include <nvault>
  7. #include <colorchat>
  8. #include <hamsandwich>
  9. #include <fakemeta>
  10.  
  11. #define PLUGIN "CSDM Bolt"
  12. #define VERSION "1.0"
  13. #define AUTHOR "PoHa|R|"
  14.  
  15. #define VIP "t"
  16.  
  17. new g_vault
  18. new arany[33]
  19. new killz, killhz
  20. new VIPar, VIPido
  21. new admin
  22. new SyncHudObj
  23. new name[33][32]
  24.  
  25. new const szPrefix[] = "^4[|X.T| xClusive]"
  26.  
  27. #define ASD 17
  28. new message[192]
  29. new nev[32]
  30. new Temp[192]
  31. static color[10]
  32. new szint[33]
  33.  
  34. new CVAR_SPEED, cvar_elet
  35.  
  36. new const szamok[ASD] =
  37. {
  38. 50,
  39. 125,
  40. 250,
  41. 350,
  42. 500,
  43. 725,
  44. 975,
  45. 1200,
  46. 1500,
  47. 1850,
  48. 2200,
  49. 2650,
  50. 3200,
  51. 4000,
  52. 4500,
  53. 5200,
  54. 6000
  55. }
  56. new const rangok[ASD+1][] =
  57. {
  58. "Ujonc",
  59. "Lelkes",
  60. "Tag",
  61. "Beavatott",
  62. "Tud valamit",
  63. "Fanatikus",
  64. "Senior Tag",
  65. "Jomunkasember",
  66. "Nagyur",
  67. "Felisten",
  68. "Ostag",
  69. "Veterán",
  70. "Oskovulet",
  71. "Minden6o",
  72. "ISTEN",
  73. "Mindent Tudo",
  74. "Olyan jo, hogy a nevet se tudjatok",
  75. "Akinek a neve:Az utolso Gyilkos"
  76. }
  77.  
  78. public plugin_init() {
  79. register_plugin(PLUGIN, VERSION, AUTHOR)
  80. register_clcmd("say /menu", "menu1")
  81. register_clcmd("say", "sayhook")
  82. register_clcmd("say_team", "tshook")
  83.  
  84. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  85. RegisterHam(Ham_Spawn, "player", "jatekos_spawn", 1)
  86.  
  87. killz = register_cvar("z_kill", "10")
  88. killhz = register_cvar("hz_kill", "10")
  89. VIPar = register_cvar("vip_ar", "10000")
  90. VIPido = register_cvar("vip_ido", "40320")
  91. CVAR_SPEED = register_cvar("kes_speed","340")
  92. cvar_elet = register_cvar("vip_elet", "50")
  93.  
  94. set_task(2.9, "hud", 0, _, _, "b")
  95.  
  96. SyncHudObj = CreateHudSyncObj()
  97. register_event("ResetHUD", "resetModel", "b")
  98. register_event("CurWeapon","change","be","1=1")
  99. return PLUGIN_CONTINUE
  100. }
  101. public plugin_precache() {
  102. precache_model("models/player/xt_vip_ct/xt_vip_ct.mdl")
  103. precache_model("models/player/xt_vip_te/xt_vip_te.mdl")
  104.  
  105. return PLUGIN_CONTINUE
  106. }
  107. public resetModel(id, level, cid) {
  108. if (get_user_flags(id) & ADMIN_KICK) {
  109. new CsTeams:userTeam = cs_get_user_team(id)
  110. if (userTeam == CS_TEAM_T) {
  111. cs_set_user_model(id, "xt_vip_te")
  112. }
  113. else if(userTeam == CS_TEAM_CT) {
  114. cs_set_user_model(id, "xt_vip_ct")
  115. }
  116. else {
  117. cs_reset_user_model(id)
  118. }
  119. }
  120.  
  121. return PLUGIN_CONTINUE
  122. }
  123. public change(id) {
  124. if(get_user_flags(id)&ADMIN_LEVEL_H)
  125. {
  126. new clip, ammo
  127. new weapon = get_user_weapon(id, clip, ammo)
  128. if(weapon == CSW_KNIFE) {
  129.  
  130. {
  131. new Speed = get_pcvar_float(CVAR_SPEED)
  132.  
  133. set_user_maxspeed(id, Speed)
  134. }
  135.  
  136. }
  137.  
  138. }
  139. }
  140. public jatekos_spawn(id)
  141. {
  142. if (!is_user_alive(id))
  143. return
  144.  
  145. if(get_user_flags(id)&ADMIN_LEVEL_H)
  146. {
  147. set_task(2.0, "vip_menu", id)
  148. }
  149. }
  150. public vip_menu(id)
  151. {
  152. if(!is_user_alive(id))
  153. return PLUGIN_HANDLED
  154.  
  155. new gmenu = menu_create("\y~ \r[VIP] Menu, Valassz! \y~" , "Vip_handler")
  156. menu_additem(gmenu ,"\y150HP", "1" , 0)
  157.  
  158. menu_setprop(gmenu , MPROP_EXIT , MEXIT_ALL)
  159. menu_display(id , gmenu , 0)
  160.  
  161. return PLUGIN_CONTINUE
  162. }
  163. public Vip_handler(id, gmenu, item, player)
  164. {
  165. if (item == MENU_EXIT)
  166. {
  167. menu_destroy(gmenu)
  168. return PLUGIN_HANDLED
  169. }
  170.  
  171. new data[6], iName[64]
  172. new access, callback
  173. menu_item_getinfo(gmenu, item, access, data, 5, iName, 63, callback)
  174.  
  175. new key = str_to_num(data)
  176.  
  177. switch(key)
  178. {
  179. case 1:
  180. {
  181. set_user_health(id, get_user_health(id) + get_pcvar_num(cvar_elet))
  182. ColorChat(id, GREEN, "^4[VIP]^1 Az eleted megvaltoztatva!")
  183. }
  184. }
  185. public sayhook(id)
  186. {
  187.  
  188. read_args (message, 191)
  189. remove_quotes (message)
  190. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  191. {
  192. return PLUGIN_CONTINUE
  193. }
  194. get_user_name(id, nev, 31)
  195. if(is_user_alive(id)) {
  196. get_user_team(id, color, 9)
  197.  
  198. if(get_user_flags(id) == read_flags(VIP))
  199. formatex(Temp, 191, "^4[V.I.P]%s ^3%s^1: ^4%s", rangok[szint[id]], nev, message)
  200.  
  201. else formatex(Temp, 191, "^4[%s] ^3%s^1: %s", rangok[szint[id]], nev, message)
  202.  
  203. }
  204. else {
  205. get_user_team(id, color, 9)
  206.  
  207. if(get_user_flags(id) == read_flags(VIP))
  208. formatex(Temp, 191, "^4*Halott* [V.I.P]%s ^3%s^1: ^4%s", rangok[szint[id]], nev, message)
  209.  
  210. else formatex(Temp, 191, "^4 *Halott* [%s] ^3%s^1: %s", rangok[szint[id]], nev, message)
  211. }
  212. sendmessage(color)
  213. return PLUGIN_HANDLED
  214. }
  215. public tshook(id)
  216. {
  217. read_args (message, 191)
  218. remove_quotes (message)
  219. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  220. {
  221. return PLUGIN_CONTINUE
  222. }
  223. get_user_name(id, nev, 31)
  224. new playerTeam = get_user_team(id)
  225. new playerTeamName[19]
  226. switch (playerTeam)
  227. {
  228. case 1: {
  229. copy (playerTeamName, 11, "*Terrorista*")
  230.  
  231. }
  232. case 2: {
  233. copy (playerTeamName, 18, "*Anti-Terrorista*")
  234.  
  235. }
  236. default:
  237. copy (playerTeamName, 9, "*Nezo*")
  238. }
  239. if(is_user_alive(id))
  240. {
  241. get_user_team(id, color, 9)
  242.  
  243. if(get_user_flags(id) == read_flags(VIP))
  244. formatex(Temp, 191, "^3(%s) ^4[V.I.P]%s ^3%s^1: ^4%s",playerTeamName, rangok[szint[id]], nev, message)
  245.  
  246. else formatex(Temp, 191, "^3(%s) ^4[Játékos]%s ^3%s^1: %s",playerTeamName, rangok[szint[id]], nev, message)
  247.  
  248. }
  249. else
  250. {
  251. get_user_team(id, color, 9)
  252.  
  253. if(get_user_flags(id) == read_flags(VIP))
  254. formatex(Temp, 191, "^1*Halott* ^3(%s) ^4[V.I.P]%s ^3%s^1: ^4%s",playerTeamName, rangok[szint[id]], nev, message)
  255.  
  256. else formatex(Temp, 191, "^1*Halott* ^3(%s) ^4[Játékos]%s ^3%s^1: %s", rangok[szint[id]], nev, message)
  257. }
  258. sendtmessage(color, playerTeam)
  259. return PLUGIN_HANDLED
  260. }
  261. public sendmessage(color[])
  262. {
  263. new teamName[10]
  264. for(new player = 1; player < get_maxplayers(); player++)
  265. {
  266. get_user_team (player, teamName, 9)
  267. teamf (player, color)
  268. elkuldes(player, Temp)
  269. teamf(player, teamName)
  270. }
  271. }
  272. public sendtmessage(color[], playerTeam)
  273. {
  274. new teamName[10]
  275. for (new player = 1; player < get_maxplayers(); player++)
  276. {
  277. if(get_user_team(player) == playerTeam)
  278. {
  279. get_user_team (player, teamName, 9)
  280. elkuldes(player, Temp)
  281. teamf (player, teamName)
  282. teamf (player, color)
  283. }
  284. }
  285. }
  286. public teamf(player, team[])
  287. {
  288. message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  289. write_byte(player)
  290. write_string(team)
  291. message_end()
  292. }
  293. public elkuldes(player, Temp[])
  294. {
  295.  
  296. message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  297. write_byte( player )
  298. write_string( Temp )
  299. message_end()
  300.  
  301. }
  302. public menu1(id)
  303. {
  304. new menu2[121]
  305. new menu = menu_create("\r|X.T| xClusive \w- \yFomenu", "menu_h")
  306. menu_additem(menu, "\rBolt", "1", 0)
  307. menu_additem(menu, "\rVip vasarlas", "2", 0)
  308.  
  309. format(menu2, charsmax(menu2),"\yKovetkezo Rang:\r%s" ,rangok[szint[id]+1])
  310. menu_additem(menu,menu2,"3",0)
  311.  
  312. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  313.  
  314. menu_display(id, menu, 0)
  315. }
  316. public menu_h(id, menu, item)
  317. {
  318. if( item == MENU_EXIT )
  319. {
  320. menu_destroy(menu);
  321. return PLUGIN_HANDLED;
  322. }
  323. new data[9], access, callback, szName[64]
  324. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  325. new key = str_to_num(data)
  326.  
  327. switch(key)
  328. {
  329. case 1:
  330. {
  331. bolt_menu(id)
  332. }
  333. case 2:
  334. {
  335. vip_menu(id)
  336. }
  337. case 3:
  338. {
  339. menu1(id)
  340. }
  341. }
  342. return PLUGIN_HANDLED
  343. }
  344.  
  345. public vip_menu(id)
  346. {
  347. new menu = menu_create("\r|X.T| xClusive \w- \y Vip vasarlas", "vip_menu_h")
  348. menu_additem(menu, "\rVip vasarlas^n\y(%d Arany/honap)", "0", get_pcvar_num(VIPar))
  349.  
  350. menu_setprop(menu, MPROP_EXITNAME, "Megse");
  351.  
  352. menu_display(id, menu, 0)
  353. }
  354. public vip_menu_h(id, menu, item)
  355. {
  356. if( item == MENU_EXIT )
  357. {
  358. menu_destroy(menu);
  359. return PLUGIN_HANDLED;
  360. }
  361. new data[9], access, callback, szName[64]
  362. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  363. new key = str_to_num(data)
  364.  
  365. switch(key)
  366. {
  367. case 0:
  368. {
  369. if(arany[id] >= get_pcvar_num(VIPar)){
  370. if(!get_user_flags(id)&ADMIN_LEVEL_H)
  371. {
  372. set_user_flags(id, read_flags(VIP))
  373. set_task(get_pcvar_num(VIPido), "NoMoreVIP", id)
  374. }
  375. arany[id] = arany[id]-get_pcvar_num(VIPar)
  376. ColorChat(id, GREEN,"%s ^1%L", szPrefix, "VIP-t vettel!")
  377. }
  378. else
  379. {
  380. ColorChat(id, GREEN,"%s ^1%L", szPrefix, "Nincs elég aranyad!")
  381. }
  382. }
  383. }
  384. return PLUGIN_HANDLED
  385. }
  386. }
  387. public bolt_menu(id)
  388. {
  389. new menu = menu_create("\r|X.T| xClusive \w- \yBolt", "bolt_menu_h")
  390.  
  391.  
  392. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  393.  
  394. menu_display(id, menu, 0)
  395. }
  396. public bolt_menu_h(id, menu, item)
  397. {
  398. if( item == MENU_EXIT )
  399. {
  400. menu_destroy(menu);
  401. return PLUGIN_HANDLED;
  402. }
  403. new data[9], access, callback, szName[64]
  404. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  405. new key = str_to_num(data)
  406.  
  407. switch(key)
  408. {
  409. case 1:
  410. {
  411. }
  412. }
  413. return PLUGIN_HANDLED
  414. }
  415. public fw_player_killed(victim, attacker, shouldgib)
  416. {
  417. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  418. return PLUGIN_CONTINUE;
  419.  
  420. if(get_pdata_int(victim, 75) == HIT_HEAD)
  421. {
  422. arany[attacker] += get_pcvar_num(killhz)
  423. }
  424. else
  425. {
  426. arany[attacker] += get_pcvar_num(killz)
  427.  
  428. }
  429. return PLUGIN_CONTINUE
  430. }
  431. public mentes(id)
  432. {
  433. new vaultkey[64],vaultdata[256]
  434.  
  435. format(vaultkey,63,"%s-ARANY", name[id])
  436. format(vaultdata,255,"%d", arany[id])
  437.  
  438. nvault_set(g_vault,vaultkey,vaultdata)
  439. return PLUGIN_CONTINUE
  440. }
  441. public betoltes(id)
  442. {
  443. new vaultkey[64],vaultdata[256]
  444.  
  445. format(vaultkey,63,"%s-ARANY", name[id])
  446.  
  447. nvault_get(g_vault,vaultkey,vaultdata,255)
  448.  
  449. arany[id] = str_to_num(vaultdata)
  450. return PLUGIN_CONTINUE;
  451. }
  452. public client_disconnect(id)
  453. {
  454. mentes(id);
  455. remove_task(id);
  456. arany[id] = 0;
  457. }
  458. public client_connect(id)
  459. {
  460. get_user_name(id, name[id], 31)
  461. betoltes(id);
  462. }
  463. public hud()
  464. {
  465. admin = 0;
  466. new players[32], pnum, tempid
  467. get_players(players, pnum, "c")
  468.  
  469. for( new i; i<pnum; i++ )
  470. {
  471. tempid = players[i]
  472. if(get_user_flags(tempid) & ADMIN_LEVEL_H)
  473. {
  474. admin++;
  475. }
  476.  
  477. }
  478. for( new i; i<pnum; i++ )
  479. {
  480. tempid = players[i]
  481. set_hudmessage(0, 170, 255, 0.02, 0.2, 0, 1.0, 3.0);
  482. ShowSyncHudMsg(tempid, SyncHudObj, "Arany: %d^nJelenlevo Vipek: %d",arany[tempid],admin)
  483. }
  484. }
  485.  

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/