hlmod.hu
https://hlmod.hu/

Rang rendszer
https://hlmod.hu/viewtopic.php?f=9&t=22896
Oldal: 1 / 1

Szerző:  Preciko [ 2015.12.05. 11:18 ]
Hozzászólás témája:  Rang rendszer

Sziasztok, nekem van egy rangrendszer pluginom amit, meg kellene csinálni színesre..
mert egyszerűen nem színes amit felrakott Demo..
Prefix is sárga, csak azt nem mutatom, mert hirdetés lenne..
előre is köszönöm
ColorChat, vagy print_color is jó csak színes legyen :D

Csatolmányok:
hlmod.png
hlmod.png [ 24.29 KiB | Megtekintve 1322 alkalommal ]
amxmodx-15982-hlmod.husrangok.sma [4.74 KiB]
Letöltve 88 alkalommal.

Szerző:  DecToR [ 2015.12.05. 11:21 ]
Hozzászólás témája:  Re: Rang rendszer

Preciko írta:
Sziasztok, nekem van egy rangrendszer pluginom amit, meg kellene csinálni színesre..
mert egyszerűen nem színes amit felrakott Demo..
Prefix is sárga, csak azt nem mutatom, mert hirdetés lenne..
előre is köszönöm
ColorChat, vagy print_color is jó csak színes legyen :D


Tessék:
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. #include <amxmodx>
  3. #include <amxmisc>
  4. #include <nvault>
  5.  
  6. #define PLUGIN "HLMOD.Hus Rangok"
  7. #define VERSION "1.0"
  8. #define AUTHOR "ExTraaaa and qKKKJ;>"
  9.  
  10. new message[192]
  11. new nev[32]
  12. new Temp[192]
  13. static color[10]
  14. new g_vault
  15. new olesek[33]
  16. new szint[33]
  17.  
  18.  
  19. #define ASD 15
  20.  
  21. //Ha az ASD értéke 15 akkor a szamoknal 15 szám a rangoknál 16 szöveg
  22.  
  23. new const szamok[ASD] = {
  24. 100,
  25. 200,
  26. 300,
  27. 500,
  28. 750,
  29. 1000,
  30. 1500,
  31. 2000,
  32. 2500,
  33. 3000,
  34. 3500,
  35. 4000,
  36. 5000,
  37. 8000,
  38. 10000
  39.  
  40. }
  41.  
  42. new const rangok[ASD+1][] = {
  43. "Silver I",
  44. "Silver II",
  45. "Silver III",
  46. "Silver IV",
  47. "Silver Elite",
  48. "Silver Elite Master",
  49. "Gold Nova I",
  50. "Gold Nova II",
  51. "Gold Nova III",
  52. "Gold Nova Master",
  53. "Master Guardian I",
  54. "Master Guardian II",
  55. "Master Guardian Elite",
  56. "Distinguished Master Guardian",
  57. "Legendary Eagle",
  58. "Legendary Eagle Master"
  59.  
  60. }
  61.  
  62. public plugin_init()
  63. {
  64. register_plugin(PLUGIN, VERSION, AUTHOR)
  65. register_clcmd("say /rang", "hud")
  66. register_clcmd("say", "sayhook")
  67. register_clcmd("say_team", "tshook")
  68. register_event("DeathMsg", "halal", "a")
  69. g_vault = nvault_open("namerang")
  70.  
  71. }
  72. public hud(id)
  73. {
  74. if(szint[id] != ASD+1)
  75. {
  76.  
  77. print_color(id, "!tPrefix: !g%s ^n !tÖlések: !g%d ^n!tKell még: !g%d.",rangok[szint[id]], olesek[id],szamok[szint[id]]-olesek[id])
  78. }
  79. else {
  80.  
  81. client_print(id, print_chat, "Prefix: %s^nÖlések: %d^nKell még: 0",rangok[szint[id]], olesek[id])
  82. }
  83.  
  84. }
  85. public sayhook(id)
  86. {
  87.  
  88. read_args (message, 191)
  89. remove_quotes (message)
  90. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  91. {
  92. return PLUGIN_CONTINUE
  93. }
  94. get_user_name(id, nev, 31)
  95. if(is_user_alive(id)) {
  96. get_user_team(id, color, 9)
  97. formatex(Temp, 191, "^x04[%s] ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  98.  
  99. }
  100. else {
  101. get_user_team(id, color, 9)
  102. formatex(Temp, 191, "^x04*Halott* [%s] ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  103. }
  104. sendmessage(color)
  105. return PLUGIN_HANDLED
  106. }
  107. public tshook(id)
  108. {
  109. read_args (message, 191)
  110. remove_quotes (message)
  111. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  112. {
  113. return PLUGIN_CONTINUE
  114. }
  115. get_user_name(id, nev, 31)
  116. new playerTeam = get_user_team(id)
  117. new playerTeamName[19]
  118. switch (playerTeam)
  119. {
  120. case 1: {
  121. copy (playerTeamName, 11, "*Terrorista*")
  122.  
  123. }
  124. case 2: {
  125. copy (playerTeamName, 18, "*Anti-Terrorista*")
  126.  
  127. }
  128. default:
  129. copy (playerTeamName, 9, "*Néző*")
  130. }
  131. if(is_user_alive(id))
  132. {
  133. get_user_team(id, color, 9)
  134. formatex(Temp, 191, "^x03(%s) ^x04[%s] ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  135.  
  136. }
  137. else
  138. {
  139. get_user_team(id, color, 9)
  140. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04[%s] ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  141. }
  142. sendtmessage(color, playerTeam)
  143. return PLUGIN_HANDLED
  144. }
  145. public sendmessage(color[])
  146. {
  147. new teamName[10]
  148. for(new player = 1; player < get_maxplayers(); player++)
  149. {
  150. get_user_team (player, teamName, 9)
  151. teamf (player, color)
  152. elkuldes(player, Temp)
  153. teamf(player, teamName)
  154. }
  155. }
  156. public sendtmessage(color[], playerTeam)
  157. {
  158. new teamName[10]
  159. for (new player = 1; player < get_maxplayers(); player++)
  160. {
  161. if(get_user_team(player) == playerTeam)
  162. {
  163. get_user_team (player, teamName, 9)
  164. elkuldes(player, Temp)
  165. teamf (player, teamName)
  166. teamf (player, color)
  167. }
  168. }
  169. }
  170. public teamf(player, team[])
  171. {
  172. message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  173. write_byte(player)
  174. write_string(team)
  175. message_end()
  176. }
  177. public elkuldes(player, Temp[])
  178. {
  179.  
  180. message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  181. write_byte( player )
  182. write_string( Temp )
  183. message_end()
  184.  
  185. }
  186.  
  187. public client_connect(id)
  188. {
  189. LoadData(id)
  190. }
  191. public client_disconnect(id) SaveData(id)
  192.  
  193. public SaveData(id)
  194. {
  195. new name[32]
  196. get_user_name(id, name, 31)
  197.  
  198. new vaultkey[64],vaultdata[256]
  199. format(vaultkey,63,"%s-rang", name)
  200. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  201.  
  202.  
  203. nvault_set(g_vault,vaultkey,vaultdata)
  204. return PLUGIN_CONTINUE
  205. }
  206. public LoadData(id)
  207. {
  208. new name[32]
  209. get_user_name(id, name, 31)
  210. new vaultkey[64],vaultdata[256]
  211.  
  212. format(vaultkey,63,"%s-rang", name)
  213. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  214.  
  215. nvault_get(g_vault,vaultkey,vaultdata,255)
  216. replace_all(vaultdata, 255, "#", " ")
  217. new oles[32], level[32]
  218. parse(vaultdata, oles, 31, level, 31)
  219. olesek[id] = str_to_num(oles)
  220. szint[id] = str_to_num(level)
  221. return PLUGIN_CONTINUE
  222. }
  223. public halal()
  224. {
  225. new killer = read_data(1)
  226. new victim = read_data(2)
  227.  
  228. if(killer != victim)
  229. olesek[killer]++
  230.  
  231. while(olesek[killer] >= szamok[szint[killer]])
  232. {
  233. szint[killer]++
  234. }
  235. }
  236. stock print_color(const id, const input[], any:...)
  237. {
  238. new count = 1, players[32]
  239. static msg[191]
  240. vformat(msg, 190, input, 3)
  241.  
  242. replace_all(msg, 190, "!g", "^4")
  243. replace_all(msg, 190, "!y", "^1")
  244. replace_all(msg, 190, "!t", "^3")
  245.  
  246. if (id) players[0] = id; else get_players(players, count, "ch")
  247. {
  248. for (new i = 0; i < count; i++)
  249. {
  250. if (is_user_connected(players[i]))
  251. {
  252. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  253. write_byte(players[i])
  254. write_string(msg)
  255. message_end()
  256. }
  257. }
  258. }
  259. return PLUGIN_HANDLED
  260. }

Szerző:  Preciko [ 2015.12.05. 11:34 ]
Hozzászólás témája:  Re: Rang rendszer

DecToR írta:
Preciko írta:
Sziasztok, nekem van egy rangrendszer pluginom amit, meg kellene csinálni színesre..
mert egyszerűen nem színes amit felrakott Demo..
Prefix is sárga, csak azt nem mutatom, mert hirdetés lenne..
előre is köszönöm
ColorChat, vagy print_color is jó csak színes legyen :D


Tessék:
SMA Forráskód: [ Mindet kijelol ] #include <amxmodx>#include <amxmisc>#include <nvault> #define PLUGIN "HLMOD.Hus Rangok"#define VERSION "1.0"#define AUTHOR "ExTraaaa and qKKKJ;>" new message[192]new nev[32]new Temp[192]static color[10]new g_vaultnew olesek[33]new szint[33]  #define ASD 15 //Ha az ASD Ă©rtĂ©ke 15 akkor a szamoknal 15 szám a rangoknál 16 szöveg new const szamok[ASD] = { 100, 200, 300, 500, 750, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 5000, 8000, 10000 } new const rangok[ASD+1][] = { "Silver I", "Silver II", "Silver III", "Silver IV", "Silver Elite", "Silver Elite Master", "Gold Nova I", "Gold Nova II", "Gold Nova III", "Gold Nova Master", "Master Guardian I", "Master Guardian II", "Master Guardian Elite", "Distinguished Master Guardian", "Legendary Eagle", "Legendary Eagle Master" } public plugin_init(){ register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /rang", "hud") register_clcmd("say", "sayhook") register_clcmd("say_team", "tshook") register_event("DeathMsg", "halal", "a") g_vault = nvault_open("namerang") }public hud(id){ if(szint[id] != ASD+1) {  print_color(id, "!tPrefix: !g%s ^n !tĂ–lĂ©sek: !g%d ^n!tKell mĂ©g: !g%d.",rangok[szint[id]], olesek[id],szamok[szint[id]]-olesek[id]) } else {  client_print(id, print_chat, "Prefix: %s^nĂ–lĂ©sek: %d^nKell mĂ©g: 0",rangok[szint[id]], olesek[id]) } }public sayhook(id){  read_args (message, 191) remove_quotes (message) if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) { return PLUGIN_CONTINUE } get_user_name(id, nev, 31) if(is_user_alive(id)) { get_user_team(id, color, 9) formatex(Temp, 191, "^x04[%s] ^x03%s^x01: %s", rangok[szint[id]], nev, message)  } else { get_user_team(id, color, 9) formatex(Temp, 191, "^x04*Halott* [%s] ^x03%s^x01: %s", rangok[szint[id]], nev, message) } sendmessage(color) return PLUGIN_HANDLED}public tshook(id){ read_args (message, 191) remove_quotes (message) if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) { return PLUGIN_CONTINUE } get_user_name(id, nev, 31) new playerTeam = get_user_team(id) new playerTeamName[19] switch (playerTeam) { case 1: { copy (playerTeamName, 11, "*Terrorista*")  } case 2: { copy (playerTeamName, 18, "*Anti-Terrorista*")  } default: copy (playerTeamName, 9, "*NĂ©zĹ‘*") } if(is_user_alive(id)) { get_user_team(id, color, 9) formatex(Temp, 191, "^x03(%s) ^x04[%s] ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)  } else { get_user_team(id, color, 9) formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04[%s] ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message) } sendtmessage(color, playerTeam) return PLUGIN_HANDLED}public sendmessage(color[]){ new teamName[10] for(new player = 1; player < get_maxplayers(); player++) { get_user_team (player, teamName, 9) teamf (player, color) elkuldes(player, Temp) teamf(player, teamName) }}public sendtmessage(color[], playerTeam){ new teamName[10] for (new player = 1; player < get_maxplayers(); player++) { if(get_user_team(player) == playerTeam) { get_user_team (player, teamName, 9) elkuldes(player, Temp) teamf (player, teamName) teamf (player, color) } }}public teamf(player, team[]){ message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player) write_byte(player) write_string(team) message_end()}public elkuldes(player, Temp[]){  message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player) write_byte( player ) write_string( Temp ) message_end() } public client_connect(id){ LoadData(id)}public client_disconnect(id) SaveData(id) public SaveData(id){ new name[32] get_user_name(id, name, 31)  new vaultkey[64],vaultdata[256] format(vaultkey,63,"%s-rang", name) format(vaultdata,255,"%i#%i#",olesek[id],szint[id])   nvault_set(g_vault,vaultkey,vaultdata) return PLUGIN_CONTINUE}public LoadData(id){ new name[32] get_user_name(id, name, 31) new vaultkey[64],vaultdata[256]  format(vaultkey,63,"%s-rang", name) format(vaultdata,255,"%i#%i#",olesek[id],szint[id])  nvault_get(g_vault,vaultkey,vaultdata,255) replace_all(vaultdata, 255, "#", " ") new oles[32], level[32] parse(vaultdata, oles, 31, level, 31) olesek[id] = str_to_num(oles) szint[id] = str_to_num(level) return PLUGIN_CONTINUE}public halal(){ new killer = read_data(1) new victim = read_data(2)  if(killer != victim) olesek[killer]++  while(olesek[killer] >= szamok[szint[killer]]) { szint[killer]++ }}stock print_color(const id, const input[], any:...){ new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3)  replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!t", "^3")   if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]) write_string(msg) message_end() } }} return PLUGIN_HANDLED}


Ki tudnád nekem úgy alakítani hogy:

prefix nem kell!

!gRangod: !tSilver I !n| !gÖlések: !tyj
!gKövetkező Rangod: !tSilver II !n| !gA következő szinthez kell még: !tyj

de így 2 sorba

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