hlmod.hu
https://hlmod.hu/

Hibák javítása.
https://hlmod.hu/viewtopic.php?f=10&t=16009
Oldal: 1 / 2

Szerző:  K3PT3L3N [ 2014.05.24. 20:12 ]
Hozzászólás témája:  Hibák javítása.

Hello, ismét valamilyen szinten sikerült összeraknom ezt a plugint, de elég sok hiba van benne.
Ha valaki ráérne, ezeket a hibákat fixálni megköszönném:d
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <nvault>
  4.  
  5. #define IN_JUMP (1<<1)
  6.  
  7. new PlayerXP[33],PlayerLevel[33]
  8. new XP_Jump,SaveXP
  9. new g_vault
  10.  
  11. new const LEVELS[5] = {
  12. 0,
  13. 1000,
  14. 3000,
  15. 7000,
  16. 15000
  17. }
  18.  
  19. public plugin_init()
  20. {
  21. register_plugin("KTXP", "1.0", "none")
  22.  
  23. SaveXP = register_cvar("SaveXP","1")
  24.  
  25. XP_Jump = register_cvar("XP_per_jump","1")
  26.  
  27. g_vault = nvault_open("ktxpmod")
  28.  
  29. register_clcmd("say /xp", "ShowChat")
  30. register_clcmd("say_team /xp", "ShowChat")
  31. }
  32.  
  33. {
  34.  
  35. new jumper = read_data( 1 )
  36.  
  37. if(get_user_button(id) & IN_JUMP)
  38. PlayerXP[jumper] += get_pcvar_num(XP_per_jump)
  39.  
  40. while(PlayerXP[jumper] >= LEVELS[PlayerLevel[jumper]])
  41. {
  42. client_print(attacker, print_chat, "[KTXP] Uj Szinted: %i", PlayerLevel[jumper])
  43.  
  44. PlayerLevel[jumper] += 1
  45. }
  46.  
  47. ShowChat(jumper)
  48. }
  49.  
  50. public ShowHud(id)
  51. {
  52. client_print(jumper, print_chat, "Szinted: %i|XP-d: %i",PlayerLevel[id],PlayerXP[id])
  53. }
  54.  
  55. public client_connect(id)
  56. {
  57. if(get_pcvar_num(SaveXP) == 1)
  58. {
  59. LoadData(id)
  60. }
  61. }
  62.  
  63. public client_disconnect(id)
  64. {
  65. if(get_pcvar_num(SaveXP) == 1)
  66. {
  67. SaveData(id)
  68. }
  69. }
  70.  
  71. public SaveData(id)
  72. {
  73. new name[32]
  74. get_user_name(id, name, 31)
  75.  
  76. new vaultkey[64],vaultdata[256]
  77. format(vaultkey,63,"%sKTXP3", name)
  78. format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
  79.  
  80. nvault_set(g_vault,vaultkey,vaultdata)
  81. return PLUGIN_CONTINUE
  82. }
  83.  
  84. public LoadData(id)
  85. {
  86. new name[32]
  87. get_user_name(id, name, 31)
  88. new vaultkey[64],vaultdata[256]
  89. format(vaultkey,63,"%sKTXP3", name)
  90. format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
  91. nvault_get(g_vault,vaultkey,vaultdata,255)
  92. replace_all(vaultdata, 255, "#", " ")
  93. new playerxp[32], playerlevel[32]
  94. parse(vaultdata, playerxp, 31, playerlevel, 31)
  95. PlayerXP[id] = str_to_num(playerxp)
  96. PlayerLevel[id] = str_to_num(playerlevel)
  97. return PLUGIN_CONTINUE
  98. }

Szerző:  fear_ezmegmi [ 2014.05.24. 22:33 ]
Hozzászólás témája:  Re: Hibák javítása.

Mik a pontos hibák?

Szerző:  K3PT3L3N [ 2014.05.24. 23:28 ]
Hozzászólás témája:  Re: Hibák javítása.

/tmp/textHBdZTC.sma(33) : error 055: start of function body without function header
/tmp/textHBdZTC.sma(35 -- 37) : error 008: must be a constant expression; assumed zero
/tmp/textHBdZTC.sma(40) : error 010: invalid function or declaration
/tmp/textHBdZTC.sma(44) : error 010: invalid function or declaration
/tmp/textHBdZTC.sma(98) : warning 203: symbol is never used: "LEVELS"
/tmp/textHBdZTC.sma(98) : warning 203: symbol is never used: "ShowChat"
/tmp/textHBdZTC.sma(98) : warning 204: symbol is assigned a value that is never used: "XP_Jump"

4 Errors.
Could not locate output file /home/groups/amxmodx/public_html/websc3/textHBdZTC.amx (compile failed).

Ezeket dobta az amxmodx.org compilere

Szerző:  CrB [ 2014.05.25. 11:31 ]
Hozzászólás témája:  Re: Hibák javítása.

tessék teszteld le elég sok hiba volt benne :D
UI: Tiéd volt a képtelen kz?
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <nvault>
  4. #include <engine>
  5. #define IN_JUMP (1<<1)
  6.  
  7. new PlayerXP[33],PlayerLevel[33]
  8. new XP_Jump,SaveXP
  9. new g_vault
  10.  
  11. new const LEVELS[5] = {
  12. 0,
  13. 1000,
  14. 3000,
  15. 7000,
  16. 15000
  17. }
  18.  
  19. public plugin_init()
  20. {
  21. register_plugin("KTXP", "1.0", "none")
  22.  
  23. SaveXP = register_cvar("SaveXP","1")
  24.  
  25. XP_Jump = register_cvar("XP_per_jump","1")
  26.  
  27. g_vault = nvault_open("ktxpmod")
  28.  
  29. register_clcmd("say /xp", "ShowChat")
  30. register_clcmd("say_team /xp", "ShowChat")
  31. }
  32. public client_PreThink(id)
  33. {
  34.  
  35.  
  36. if(get_user_button(id) & IN_JUMP)
  37. PlayerXP[id] += get_pcvar_num(XP_Jump)
  38.  
  39. while(PlayerXP[id] >= LEVELS[PlayerLevel[id]])
  40. {
  41. client_print(id, print_chat, "[KTXP] Uj Szinted: %i", PlayerLevel[id])
  42.  
  43. PlayerLevel[id] += 1
  44. }
  45.  
  46.  
  47. }
  48.  
  49. public ShowChat(id)
  50. {
  51. client_print(id, print_chat, "Szinted: %i|XP-d: %i",PlayerLevel[id],PlayerXP[id])
  52. }
  53.  
  54. public client_connect(id)
  55. {
  56. if(get_pcvar_num(SaveXP) == 1)
  57. {
  58. LoadData(id)
  59. }
  60. }
  61.  
  62. public client_disconnect(id)
  63. {
  64. if(get_pcvar_num(SaveXP) == 1)
  65. {
  66. SaveData(id)
  67. }
  68. }
  69.  
  70. public SaveData(id)
  71. {
  72. new name[32]
  73. get_user_name(id, name, 31)
  74.  
  75. new vaultkey[64],vaultdata[256]
  76. format(vaultkey,63,"%sKTXP3", name)
  77. format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
  78.  
  79. nvault_set(g_vault,vaultkey,vaultdata)
  80. return PLUGIN_CONTINUE
  81. }
  82.  
  83. public LoadData(id)
  84. {
  85. new name[32]
  86. get_user_name(id, name, 31)
  87. new vaultkey[64],vaultdata[256]
  88. format(vaultkey,63,"%sKTXP3", name)
  89. format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
  90. nvault_get(g_vault,vaultkey,vaultdata,255)
  91. replace_all(vaultdata, 255, "#", " ")
  92. new playerxp[32], playerlevel[32]
  93. parse(vaultdata, playerxp, 31, playerlevel, 31)
  94. PlayerXP[id] = str_to_num(playerxp)
  95. PlayerLevel[id] = str_to_num(playerlevel)
  96. return PLUGIN_CONTINUE
  97. }

Szerző:  K3PT3L3N [ 2014.05.25. 16:44 ]
Hozzászólás témája:  Re: Hibák javítása.

Igen, még létezik is, csak ugye ipcím változás :(
Ezzel a pluginnal akarom kicsit feldobni :D

Edit: Kipróbáltam a plugint, nonstop írja chatben, hogy szinted meg xpd, de olyan szinten, hogy ha chatbe írsz instant eltünik, mert olyan sokszor írja, illetve ha folyton nyomod az ugrást csak úgy pörgeti az xpket.

Szerintem van ez a rész, hogy:
SMA Forráskód: [ Mindet kijelol ]
  1. public ShowChat(id)
  2. {
  3. client_print(id, print_chat, "Szinted: %i|XP-d: %i",PlayerLevel[id],PlayerXP[id])
  4. }


Magától lefut anélkül, hogy lekérdeznénk /xp -vel.

Szerző:  CrB [ 2014.05.25. 19:08 ]
Hozzászólás témája:  Re: Hibák javítása.

a chat es dolgot javítottam elsőbe. az ugrással nem tudok mit csinálni máshogy nem lehet lekérni :D

Szerző:  fear_ezmegmi [ 2014.05.25. 19:40 ]
Hozzászólás témája:  Re: Hibák javítása.

crazyboy írta:
a chat es dolgot javítottam elsőbe. az ugrással nem tudok mit csinálni máshogy nem lehet lekérni :D

Flood timer?

Szerző:  K3PT3L3N [ 2014.05.25. 20:48 ]
Hozzászólás témája:  Re: Hibák javítása.

crazyboy írta:
a chat es dolgot javítottam elsőbe. az ugrással nem tudok mit csinálni máshogy nem lehet lekérni :D


Mármint updatelted ? amúgy az xp dolog végülis nemzavar anynira, de ez hogy mindent floodol a chat, az annyira nem.

Szerk: nem akarok új hsz-t ezért ide írom igen elsőt frissítettem.

Szerző:  fear_ezmegmi [ 2014.05.25. 23:40 ]
Hozzászólás témája:  Re: Hibák javítása.

flood ellen:
Illetve szerintem elég egy if nem kell a while
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. new g_floodtime[33];
  3.  
  4. public client_PreThink(id)
  5. {
  6.  
  7. if(!g_floodtime[id])
  8. {
  9. if(get_user_button(id) & IN_JUMP)
  10. {
  11. PlayerXP[id] += get_pcvar_num(XP_Jump)
  12. g_floodtime[id] = 1;
  13. set_task(1.0, "floodtimer", id);
  14. }
  15. }
  16.  
  17.  
  18. if(PlayerXP[id] >= LEVELS[PlayerLevel[id]])
  19. {
  20.  
  21. PlayerLevel[id]++;
  22. client_print(id, print_chat, "[KTXP] Uj Szinted: %i", PlayerLevel[id])
  23. }
  24.  
  25.  
  26. }
  27.  
  28. public floodtimer(id)
  29. {
  30. g_floodtime[id] = 0;
  31. }

Szerző:  CrB [ 2014.05.26. 05:56 ]
Hozzászólás témája:  Re: Hibák javítása.

ez így működhet de akkor egyszerűbb lenne kivenni a prethinket és taskal megoldani :D

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