hlmod.hu
https://hlmod.hu/

Becenév Prefix 1.0
https://hlmod.hu/viewtopic.php?f=24&t=22791
Oldal: 1 / 1

Szerző:  DecToR [ 2015.11.28. 18:15 ]
Hozzászólás témája:  Becenév Prefix 1.0

[kozep]Becenév Prefix 1.0[/kozep]
[kozep]Készítette: Levii | DecToR[/kozep]

Leírás:
Ez a Plugin a játékékmenetben használható ami azt csinálja hogy a neved elé tudsz írni saját becenevet, a /becenev és /nev -el behozod a Prefix menüt, és ott tudod szabályozni a neved előtti prefixed.

Pár érdekesség:

● Ez az 1.0-s verzió, lesznek frissítések.
● Plugin Készült: 2015.11.28

Képek:

Kép
Kép
Kép

Csatolmányok:
becenev_plugin1.0.sma [3.11 KiB]
Letöltve 12 alkalommal.
becenev_plugin1.0.sma [3.11 KiB]
Letöltve 16 alkalommal.

Szerző:  mforce [ 2015.11.28. 18:41 ]
Hozzászólás témája:  Re: Becenév Prefix 1.0

Kuka.

Indok és nagyjából javítás:
SMA Forráskód: [ Mindet kijelol ]
  1. #include < amxmodx >
  2.  
  3. #define Plugin_Neve "Becenév Prefix Plugin"
  4. #define Verzio "1.0" // Ezeket egyszer használod, akkor define tökéletes. Nem kell mindegyiknek konstans.
  5. #define Keszito "Levii @ Peace"
  6.  
  7. new beceNEV[ 33 ][ 32 ] // 32 a karakterszám, nem 33
  8.  
  9. public plugin_init() {
  10. register_plugin(Plugin_Neve,Verzio,Keszito)
  11.  
  12. register_clcmd("say /becenev","BecenevMenu")
  13. register_clcmd("say /nev","BecenevMenu")
  14. register_clcmd("say","HookSay")
  15.  
  16. register_clcmd("BECENEV_LETREHOZ","letrehozas")
  17. }
  18. public BecenevMenu( id )
  19. {
  20. new temp[ 256 ] // minek 3 tömb??? egyet készítesz, azt formázod mindig!
  21. if(!equal(beceNEV[id],"")) formatex(temp,charsmax(temp),"\yBecenevek Menü 1.0 \dBy: \rLevii^n\wAz ön beceneve\d: \r[\d%s\r]",beceNEV[ id ])
  22. else
  23. formatex(temp,charsmax(temp),"\rBecenĂ©v: ^n\yNincs Beceneved | \wVan Beceneve") // CHARSMAXOT HASZNÁLUNK!!!!!
  24. new menu = menu_create(temp,"BecenevHAndler")
  25.  
  26.  
  27. formatex(temp,charsmax(temp),"\rHozzon LĂ©tre egy Becenevet")
  28. menu_additem(menu,temp,"0",0) // NEM ELSŐ ITEM, HANEM 0! pláne nem,ha a case 0-áról indul!
  29.  
  30. formatex(temp,charsmax(temp),"\dBecenév Törlése")
  31. menu_additem(menu,temp,"1",0)
  32.  
  33. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); // Nem ártana!
  34. menu_display(id, menu, 0)
  35. return PLUGIN_HANDLED
  36. }
  37. public BecenevHAndler(id,menu,item){
  38. switch(item)
  39. {
  40. case 0: { // nincs új sor.
  41. if(equal(beceNEV[id],""))
  42. client_cmd(id,"messagemode BECENEV_LETREHOZ")
  43.  
  44. }
  45. case 1: // itt meg van. WTF?
  46. {
  47. if(equal(beceNEV[id],""))
  48. print_color(id, "!g[Becenevek 1.0]!y Neked már van Beceneved.")
  49. else
  50. {
  51. copy(beceNEV[id], charsmax(becenev), "") // inkább így
  52. print_color(id, "!g[Becenevek 1.0]!y A Beceneved Törlésre került.")
  53. // remélem itt a handlert nem gondoltad komolyan
  54. }
  55. }
  56. case MENU_EXIT:
  57. {
  58. menu_destroy(menu);
  59. return PLUGIN_HANDLED;
  60. }
  61. }
  62. menu_destroy(menu);
  63. return PLUGIN_HANDLED;
  64. }
  65.  
  66. public letrehozas(id)
  67. {
  68. read_args(beceNEV[id],charsmax(beceNEV[]))
  69. remove_quotes(beceNEV[id]);trim(beceNEV[id])
  70.  
  71. if (!beceNEV[id][0] || contain(beceNEV[id],"^"") != -1 )
  72. {
  73. client_cmd(id, "messagemode BECENEV_LETREHOZ")
  74. print_color(id, "!g[Becenevek 1.0]!y Érvénytelen Becenevet Adtál meg.")
  75. }
  76. else // Nem 2x return, hanem egy ELSE
  77. {
  78. print_color(id, "!g[Becenevek 1.0]!y A te Beceneved: !t%s",beceNEV[id])
  79. }
  80. }
  81. public HookSay(id)
  82. {
  83. static iras[ 191 ] // 192?? pár ns kliens összeomlik thx.
  84. read_args(iras, charsmax( iras ))
  85. remove_quotes( iras )
  86.  
  87. // %-hoz mi köze a pluginnak? törölve
  88.  
  89. static szNev[32];get_user_name(id, szNev, charsmax(szNev)) // charsmax megintcsak
  90.  
  91. // a connected-et ellenőrzi a print_color is! Meg amúgy is id-t ellenőrzöd, mikor mindenkinek kiiratod?
  92. print_color(0, "!g[ %s ] !t%s: !y%s",equal(beceNEV[id],"") ? "Becenév" : beceNEV[id],szNev,iras)
  93. // erre inkább nem mondok semmit
  94. // amúgy a print_color mióta írja ki saját színnel másoknak is???
  95.  
  96. return PLUGIN_HANDLED
  97. }
  98. stock print_color(const id, const input[], any:...)
  99. {
  100. new count = 1, players[32]
  101. static msg[191]
  102. vformat(msg, 190, input, 3)
  103.  
  104. replace_all(msg, 190, "!g", "^4")
  105. replace_all(msg, 190, "!y", "^1")
  106. replace_all(msg, 190, "!t", "^3")
  107.  
  108. if (id) players[0] = id; else get_players(players, count, "ch")
  109. {
  110. for (new i = 0; i < count; i++)
  111. {
  112. if (is_user_connected(players[i]))
  113. {
  114. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  115. write_byte(players[i])
  116. write_string(msg)
  117. message_end()
  118. }
  119.  
  120. }
  121. return PLUGIN_HANDLED
  122.  
  123. }
  124. }
  125. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  126. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  127. */
  128.  


++ jár az ötletért, a kivitelezés nagyon nem jó a print_color-ral mivel csak magadnak volt jó így 1személyben a teszt szerón.
Lementenéd a prefixeket, stb. még értelme is lenne.

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