Nie zapisuje się PKT do nVault
NiFreZ
03.01.2011
TLVn
To co jedynie jest w nVault to to co powyżej.
Nic Więcej ; / nie zapisuje się chyba to co powinno.
Zrobiłem tak
do plugin_init
w Clinet_disconnect
w client_connect
gdzieś daleko
Możecie mi wskazać błąd ?
To co jedynie jest w nVault to to co powyżej.
Nic Więcej ; / nie zapisuje się chyba to co powinno.
Zrobiłem tak
new player_punktyep[33]
do plugin_init
TypZapisu = register_cvar("amx_save_type", "2") // 1 - SteamID // 2 - Nick
g_vault = nvault_open("punktyep")
gSyncMessage = CreateHudSyncObj()
w Clinet_disconnect
Zapisz(id)
player_punktyep[id] = 0
w client_connect
Wczytaj(id)
PokazInformacje(id)
gdzieś daleko
public Zapisz(id)
{
new name[35]
if(TypZapisu == 1)
get_user_authid(id,name,34)
else if(TypZapisu == 2)
get_user_name(id,name,34)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-Mod",name)
format(vaultdata,255,"%i#%i#",player_punktyep[id])
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public Wczytaj(id)
{
new name[35]
if(TypZapisu == 1)
get_user_authid(id,name,34)
else if(TypZapisu == 2)
get_user_name(id,name,34)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-Mod",name)
format(vaultdata,255,"%i#%i#",player_punktyep[id])
nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata, 255, "#", " ")
new punktyeps[32]
parse(vaultdata, punktyeps, 31)
player_punktyep[id] = str_to_num(punktyeps)
return PLUGIN_CONTINUE
}
public PokazInformacje(id)
{
set_task(0.1, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE
set_hudmessage(255, 0, 0, 0.01, 0.31, 0, 6.0, 12.0)
ShowSyncHudMsg(id, gSyncMessage, "[EvoPoints: %s]", player_punktyep[id]);
return PLUGIN_CONTINUE;
}
Możecie mi wskazać błąd ?
cedriK 03.01.2011
19:33:46
wersja "mondra": register_cvar zwraca pointer do cvaru a nie jego wartosc, trzeba ja jeszcze pobrac.
wersja doityourself: zamiast if(TypZapisu == 1) to dajesz if(get_pcvar_num(TypZapisu) == 1) analogicznie zmien w pozostalych, do tego najlepiej to pobrac w raz w plugin init tak samo jak nick/sid pobierac tylko raz w client_connect
AmD
03.01.2011
Pierwsza sprawa jeśli chcesz sprawdzić wartości pliku vault korzystaj z nVaultEditor...
Kolejna,
Kolejna,
format(vaultdata,255,"%i#%i#",player_punktyep[id])po co 2x %i skoro masz jedną tablice?
NiFreZ
03.01.2011
do tego najlepiej to pobrac w raz w plugin init tak samo jak nick/sid pobierac tylko raz w client_connect
Tzn ?
Pierwsza sprawa jeśli chcesz sprawdzić wartości pliku vault korzystaj z nVaultEditor...
i tak nie zapisuje .. to jest najwazniejsze
///
format(vaultdata,255,"%i#%i#",player_punktyep[id])
Tzn że zapisuje tylko punkty a nie Pkt i Name ?..
Użytkownik FreZ edytował ten post 03.01.2011 19:50
Tzn ?
Pierwsza sprawa jeśli chcesz sprawdzić wartości pliku vault korzystaj z nVaultEditor...
i tak nie zapisuje .. to jest najwazniejsze
///
format(vaultdata,255,"%i#%i#",player_punktyep[id])
Tzn że zapisuje tylko punkty a nie Pkt i Name ?..
Użytkownik FreZ edytował ten post 03.01.2011 19:50
AmD
03.01.2011
Name zapisuje linie wyżej...
zrób nową funkcję publiczną:
oraz
Wczytaj(id) daj do:
kolejna sprawa:
to ma wyglądać tak:
i dla folderu data chmody 777
i jak coś daj Logi...
Użytkownik AmD edytował ten post 03.01.2011 20:22
zrób nową funkcję publiczną:
public plugin_end( )
nvault_close(g_Vault)
oraz
Wczytaj(id) daj do:
public client_putinserver(id)a z connect usuń.
kolejna sprawa:
format(vaultkey,63,"%s-Mod",name)możesz zrobić tak:
format(vaultkey,63,"%s",name)
to ma wyglądać tak:
format(vaultdata,255,"%i",player_punktyep[id])
i dla folderu data chmody 777
i jak coś daj Logi...
Użytkownik AmD edytował ten post 03.01.2011 20:22