hlmod.hu
https://hlmod.hu/

Nvault mentés
https://hlmod.hu/viewtopic.php?f=9&t=21710
Oldal: 1 / 1

Szerző:  Főnix [ 2015.07.26. 10:41 ]
Hozzászólás témája:  Nvault mentés

Üdv valaki elmagyarázná a nvault mentés lényegét?
Vagy írna egy részletes példát mert néztem több ilyen rang rendszerben is de nem értetem meg!

Köszönöm!

Szerző:  LyleChriss [ 2015.07.26. 11:16 ]
Hozzászólás témája:  Re: Nvault mentés

Ajjajjajj, remélem jó lesz... :D
Szóval, az nvault az amxx-nek egy mentési formája. Tapasztalatom szerint sokan nem kedvelik :D

Két funkciót kell futtatnod, a mentést, és a betöltést. Ezeket legtöbbször a le- és felcsatlakozásnál futtatják.
Most névre való mentéssel fogok példát írni, melyben az öléseket mentjük.

SMA Forráskód: [ Mindet kijelol ]
  1. public SaveData(id)
  2. {
  3. new name[32] //Létrehozol a névnek egy változót
  4.  
  5. get_user_name(id, name, 31) //Lekéred a nevet a változóba
  6.  
  7. new vaultkey[64],vaultdata[256] /*Változókat hozol létre a mentéshez. A vaultkey az azonosító, ehhez kapcsolod az adatokat a vaultdata változóban*/
  8.  
  9. format(vaultkey,63,"%s", name) //Bevisszük az azonosító változóba a nevet.
  10.  
  11. format(vaultdata,255,"%d",oles[id]) //Bevisszük az adatokat tároló változóba az öléseket
  12.  
  13. nvault_set(vault,vaultkey,vaultdata) /*A bevitt adatokat mentjük a vault fájlba. Ha még nincs ilyen azonosító csinál egyet, ha van, akkor felülírja*/
  14.  
  15. return PLUGIN_CONTINUE //Végül egy return
  16. }


SMA Forráskód: [ Mindet kijelol ]
  1. public LoadData(id)
  2. {
  3. new name[32]
  4.  
  5. get_user_name(id, name, 31)
  6.  
  7. new vaultkey[64],vaultdata[256] //Újra létrehozzuk a változókat
  8.  
  9. format(vaultkey,63,"%s", name) //Bevisszük a nevet az azonosító változóba
  10.  
  11. format(vaultdata,255,"%d",oles[id]) //Bevisszük az adatokat tároló változóba az öléseket
  12.  
  13. nvault_get(vault,vaultkey,vaultdata,255) //Lekérjük a vault fájlban lévő adatokat.
  14.  
  15. new a_o[32] //Létrehozunk egy változót a vaultba mentett értékeknek
  16.  
  17. parse(vaultdata, a_o, 31) //A változóba bevisszük a vaultból lekért értékeket
  18.  
  19. oles[id] = str_to_num(a_o) //A kiolvasott értéket beállítjuk az ölések számának
  20.  
  21. return PLUGIN_CONTINUE //Ismét egy return
  22. }


Remélem érthető volt, itt egy teljes mentés:

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include<amxmisc>
  3. #include <nvault>
  4.  
  5. new oles[33]
  6. new vault
  7.  
  8. public plugin_init()
  9. {
  10. register_plugin("Mentes", "1.0", "Blesh")
  11. vault = nvault_open("Vaultneve")
  12. }
  13.  
  14. public client_connect(id)
  15. {
  16. LoadData(id)
  17. }
  18.  
  19. public client_disconnect(id)
  20. {
  21. SaveData(id)
  22. }
  23.  
  24. public SaveData(id)
  25. {
  26. new name[32]
  27. get_user_name(id, name, 31)
  28. new vaultkey[64],vaultdata[256]
  29. format(vaultkey,63,"%s", name)
  30. format(vaultdata,255,"%d",oles[id])
  31. nvault_set(vault,vaultkey,vaultdata)
  32. return PLUGIN_CONTINUE
  33. }
  34.  
  35. public LoadData(id)
  36. {
  37. new name[32]
  38. get_user_name(id, name, 31)
  39. new vaultkey[64],vaultdata[256]
  40. format(vaultkey,63,"%s", name)
  41. format(vaultdata,255,"%d",oles[id])
  42. nvault_get(vault,vaultkey,vaultdata,255)
  43. new a_o[32]
  44. parse(vaultdata, a_o, 31)
  45. oles[id] = str_to_num(a_o)
  46. return PLUGIN_CONTINUE
  47. }

Szerző:  Főnix [ 2015.07.26. 11:30 ]
Hozzászólás témája:  Re: Nvault mentés

Tökéletes lesz kezdésnek, majd ha nem megy valami akkor írok :)
A steam-id mentés hogy van?

Szerző:  Akosch:. [ 2015.07.26. 11:40 ]
Hozzászólás témája:  Re: Nvault mentés

SMA Forráskód: [ Mindet kijelol ]
  1. new AuthID[32];
  2. get_user_authid(id, AuthID, charsmax(AuthID));
  3.  
  4. formatex(vaultkey, charsmax(vaultkey), "%s", AuthID) ;

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