hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.27. 16:25



Jelenlévő felhasználók

Jelenleg 546 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 546 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 2 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: nvault adatbázis rövidítése
HozzászólásElküldve: 2017.02.19. 14:05 
Offline
Jómunkásember

Csatlakozott: 2014.10.30. 10:18
Hozzászólások: 468
Megköszönt másnak: 235 alkalommal
Megköszönték neki: 34 alkalommal
Helló!

Az probléma az lenne hogy nvault adatbázisban az idők alatt elkoptak az adatok (nem használjuk már), és szeretném a nem használt adatokat kidobálni nvault-ból :)

Na itt kezdődik a probléma, hogy mégis miként olvasok be és mentek el egy új struktúrát az adatbázisban? Mert ugye nem szeretném kézzel mindenkinek kitörölgetni a dolgait az nvaultból!
A mentés nem lenne gond. A betöltés a probléma hogy mégis miként tudja majd a plugin hogy melyik struktúrát kell neki betölteni. Az újat vagy a régit ?
Ez a jelenlegi mentés/betöltés:
  1. public mentes(id)
  2. {
  3.         new AuthId[32]
  4.     get_user_authid(id, AuthId, 31)
  5.    
  6.     szamol_szint(id);
  7.    
  8.     new vaultkey[64],vaultdata[256]
  9.     format(vaultkey,63,"%s", AuthId)
  10.     format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",m4a1_oles[id],m4a1_sz[id],ak47_oles[id],ak47_sz[id],o_oles[id],awp_sz[id],deagle_oles[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id])
  11.     nvault_set(vault,vaultkey,vaultdata)
  12.    
  13.     return PLUGIN_CONTINUE
  14. }
  15.    
  16. public betoltes(id)
  17. {
  18.         new AuthId[32]
  19.     get_user_authid(id, AuthId, 31)
  20.     new vaultkey[64],vaultdata[256]
  21.     format(vaultkey,63,"%s", AuthId)
  22.     format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",m4a1_oles[id],m4a1_sz[id],ak47_oles[id],ak47_sz[id],awp_oles[id],awp_sz[id],deagle_oles[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id])
  23.     nvault_get(vault,vaultkey,vaultdata,255)
  24.     replace_all(vaultdata, 255, "#", " ")
  25.    
  26.     new m_o[32], m_s[32], a_o[32], a_s[32], aw_o[32], aw_s[32], d_o[32], d_s[32], k_o[32], k_s[32], o_o[32], r_sz[32], mp_sz[32]
  27.     parse(vaultdata, m_o, 31, m_s, 31, a_o, 31, a_s, 31, aw_o, 31, aw_s, 31, d_o, 31, d_s, 31, k_o, 31, k_s, 31, o_o, 31, r_sz, 31, mp_sz, 31)
  28.     m4a1_oles[id] = str_to_num(m_o)
  29.     m4a1_sz[id] = str_to_num(m_s)
  30.     ak47_oles[id] = str_to_num(a_o)
  31.     ak47_sz[id] = str_to_num(a_s)
  32.     awp_oles[id] = str_to_num(aw_o)
  33.     awp_sz[id] = str_to_num(aw_s)
  34.     deagle_oles[id] = str_to_num(d_o)
  35.     deagle_sz[id] = str_to_num(d_s)
  36.     kes_oles[id] = str_to_num(k_o)
  37.     kes_sz[id] = str_to_num(k_s)
  38.     o_oles[id] = str_to_num(o_o)
  39.     szint[id] = str_to_num(r_sz)
  40.     mp5_sz[id] = str_to_num(mp_sz)
  41.  
  42.     return PLUGIN_CONTINUE
  43. }


Igen túl sok adatot használok. Ugye most a kérdés, az hogy meg lehet csinálni úgy hogy ha valakinek már az új adatok vannak mentve akkor neki már az új struktúra szerint töltse be a dolgokat?
Valami jelző bit-el vagy nem is tudom. Kb így?

  1. new mentett[id] = -1
  2. public mentes(id)
  3. {
  4.         new AuthId[32]
  5.     get_user_authid(id, AuthId, 31)
  6.    
  7.     szamol_szint(id);
  8.    
  9.     new vaultkey[64],vaultdata[256]
  10.     format(vaultkey,63,"%s", AuthId)
  11.     format(vaultdata,255,"%i#%i#%i#%i#",mentett[id],m4a1_oles[id],m4a1_sz[id],ak47_oles[id])
  12.     nvault_set(vault,vaultkey,vaultdata)
  13.    
  14.     return PLUGIN_CONTINUE
  15. }
  16.  
  17. public betoltes(id)
  18. {
  19.         new AuthId[32]
  20.     get_user_authid(id, AuthId, 31)
  21.     new vaultkey[64],vaultdata[256]
  22.     format(vaultkey,63,"%s", AuthId)
  23.     nvault_get(vault,vaultkey,vaultdata,255)
  24.     replace_all(vaultdata, 255, "#", " ")    
  25. if(mentett[id] > 0) {
  26.                         format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",m4a1_oles[id],m4a1_sz[id],ak47_oles[id],ak47_sz[id],awp_oles[id],awp_sz[id],deagle_oles[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id])    
  27.                     new m_o[32], m_s[32], a_o[32], a_s[32], aw_o[32], aw_s[32], d_o[32], d_s[32], k_o[32], k_s[32], o_o[32], r_sz[32], mp_sz[32]
  28.                     parse(vaultdata, m_o, 31, m_s, 31, a_o, 31, a_s, 31, aw_o, 31, aw_s, 31, d_o, 31, d_s, 31, k_o, 31, k_s, 31, o_o, 31, r_sz, 31, mp_sz, 31)
  29.                     m4a1_oles[id] = str_to_num(m_o)
  30.                     m4a1_sz[id] = str_to_num(m_s)
  31.                     ak47_oles[id] = str_to_num(a_o)
  32.                     ak47_sz[id] = str_to_num(a_s)
  33.                     awp_oles[id] = str_to_num(aw_o)
  34.                     awp_sz[id] = str_to_num(aw_s)
  35.                     deagle_oles[id] = str_to_num(d_o)
  36.                     deagle_sz[id] = str_to_num(d_s)
  37.                     kes_oles[id] = str_to_num(k_o)
  38.                     kes_sz[id] = str_to_num(k_s)
  39.                     o_oles[id] = str_to_num(o_o)
  40.                     szint[id] = str_to_num(r_sz)
  41.                     mp5_sz[id] = str_to_num(mp_sz)
  42.  
  43.                     }
  44.                
  45.     format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",mentett[id],m4a1_oles[id],m4a1_sz[id],ak47_oles[id])                                                  
  46.     nvault_get(vault,vaultkey,vaultdata,255)
  47.     replace_all(vaultdata, 255, "#", " ")
  48.    
  49.     new men_u [32],m_o[32], m_s[32], a_o[32]
  50.     parse(vaultdata, men_u [31], m_o, 31, m_s, 31, a_o, 31)
  51.     mentett[id] = str_to_num(men_u)
  52.     m4a1_oles[id] = str_to_num(m_o)
  53.     m4a1_sz[id] = str_to_num(m_s)
  54.     ak47_oles[id] = str_to_num(a_o)
  55.  
  56.     return PLUGIN_CONTINUE
  57. }
  58. }


Tudom hogy tele van még hibával. Igazából a lényeg az lenne hogy van esetleg jobb ötlet és én csak túl akarom bonyolítani vagy hogy miként lehetne ezt megoldani?

Válaszokat előre is köszönöm!


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: nvault adatbázis rövidítése
HozzászólásElküldve: 2017.03.01. 11:28 
Offline
Jómunkásember

Csatlakozott: 2014.10.30. 10:18
Hozzászólások: 468
Megköszönt másnak: 235 alkalommal
Megköszönték neki: 34 alkalommal
Upd: Így működik is :)

Valakinek még tipp amit javítani kellene?



  1. public mentes(id)
  2. {
  3.     if(vault == INVALID_HANDLE) set_fail_state("nValut returned invalid handle");
  4.  
  5.         new AuthId[33];
  6.     get_user_authid(id, AuthId, charsmax(AuthId));
  7.     szamol_szint(id);
  8.     new vaultkey[64],vaultdata[256];
  9.     new jel[33] = -1;
  10.     format(vaultkey,63,"%s", AuthId);
  11.     format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",jel,m4a1_sz[id],ak47_sz[id],awp_sz[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  12.     nvault_set(vault,vaultkey,vaultdata);
  13.     log_amx("Mentett: %i#%i#%i#%i#%i#%i#%i#%i#%i#%i#", jel,m4a1_sz[id],ak47_sz[id],awp_sz[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  14.    
  15.     return PLUGIN_CONTINUE;
  16. }
  17.    
  18. public betoltes(id)
  19. {
  20.     if(vault == INVALID_HANDLE) set_fail_state("nValut returned invalid handle");
  21.  
  22.         new AuthId[33], jel[33];
  23.     get_user_authid(id, AuthId, charsmax(AuthId));
  24.     new vaultkey[64],vaultdata[256];
  25.     format(vaultkey,63,"%s", AuthId);
  26.    
  27.     format(vaultdata,255,"%i#",jel);
  28.     nvault_get(vault,vaultkey,vaultdata,255);
  29.     replace_all(vaultdata, 255, "#", " ");
  30.     new j_o[32];
  31.     parse(vaultdata, j_o, 31);
  32.     jel[32] = str_to_num(j_o);
  33.     log_amx("jel ertek %i", jel[32]);
  34.    
  35.     if(jel[32] == -1)
  36.     {
  37.         format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",jel[32],m4a1_sz[id],ak47_sz[id],awp_sz[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  38.         nvault_get(vault,vaultkey,vaultdata,255);
  39.         replace_all(vaultdata, 255, "#", " ");
  40.         new j_o[32], m_s[32], a_s[32],  aw_s[32], d_s[32], k_o[32], k_s[32], o_o[32], r_sz[32], mp_sz[32];
  41.         parse(vaultdata, j_o, 31,m_s, 31, a_s, 31, aw_s, 31, d_s, 31, k_o, 31, k_s, 31, o_o, 31, r_sz, 31, mp_sz, 31);
  42.         jel[32] = str_to_num(j_o);
  43.         m4a1_sz[id] = str_to_num(m_s);
  44.         ak47_sz[id] = str_to_num(a_s);
  45.         awp_sz[id] = str_to_num(aw_s);
  46.         deagle_sz[id] = str_to_num(d_s);
  47.         kes_oles[id] = str_to_num(k_o);
  48.         kes_sz[id] = str_to_num(k_s);
  49.         o_oles[id] = str_to_num(o_o);
  50.         szint[id] = str_to_num(r_sz);
  51.         mp5_sz[id] = str_to_num(mp_sz);
  52.         log_amx("uj betöltött: %i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",jel[32],m4a1_sz[id],ak47_sz[id],awp_sz[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  53.     }else
  54.         {
  55.         format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",m4a1_oles[id],m4a1_sz[id],ak47_oles[id],ak47_sz[id],awp_oles[id],awp_sz[id],deagle_oles[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  56.         nvault_get(vault,vaultkey,vaultdata,255);
  57.         replace_all(vaultdata, 255, "#", " ");
  58.         new m_o[32], m_s[32], a_o[32], a_s[32], aw_o[32], aw_s[32], d_o[32], d_s[32], k_o[32], k_s[32], o_o[32], r_sz[32], mp_sz[32];
  59.         parse(vaultdata, m_o, 31, m_s, 31, a_o, 31, a_s, 31, aw_o, 31, aw_s, 31, d_o, 31, d_s, 31, k_o, 31, k_s, 31, o_o, 31, r_sz, 31, mp_sz, 31);
  60.         m4a1_oles[id] = str_to_num(m_o);
  61.         m4a1_sz[id] = str_to_num(m_s);
  62.         ak47_oles[id] = str_to_num(a_o);
  63.         ak47_sz[id] = str_to_num(a_s);
  64.         awp_oles[id] = str_to_num(aw_o);
  65.         awp_sz[id] = str_to_num(aw_s);
  66.         deagle_oles[id] = str_to_num(d_o);
  67.         deagle_sz[id] = str_to_num(d_s);
  68.         kes_oles[id] = str_to_num(k_o);
  69.         kes_sz[id] = str_to_num(k_s);
  70.         o_oles[id] = str_to_num(o_o);
  71.         szint[id] = str_to_num(r_sz);
  72.         mp5_sz[id] = str_to_num(mp_sz);
  73.         log_amx(" regi betöltött: %i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#",m4a1_oles[id],m4a1_sz[id],ak47_oles[id],ak47_sz[id],awp_oles[id],awp_sz[id],deagle_oles[id],deagle_sz[id],kes_oles[id],kes_sz[id],o_oles[id],szint[id],mp5_sz[id]);
  74.         }
  75.  
  76.     return PLUGIN_CONTINUE;
  77. }


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 2 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 71 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole