Przy połączeniu gracza ustawia tylko taski, i zmienne, dopiero po wczytaniu klasy
wykonuje się WczytajDane(id), mam jeszcze zapis i wczytywanie, że każda klasa ma oddzielny lvl, i to działa, więc wtf ;D
Zapis zależy od #define
// zapis na kazda klase oddzielnie
#if defined ZAPIS
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cry", nazwa_gracza[id], klasa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#", doswiadczenie_gracz[id], doswiadczenie_graczam[id], poziom_gracza[id], poziom_graczam[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}
public WczytajDane(id, klasa)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cry", nazwa_gracza[id], klasa);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new doswiadczeniegracz[32], doswiadczeniegraczam[32], poziomgracza[32], poziomgraczam[31];
parse(vaultdata, doswiadczeniegracz, 31,doswiadczeniegraczam, 31,poziomgracza, 31,poziomgraczam, 31);
doswiadczenie_gracz[id] = str_to_num(doswiadczeniegracz);
doswiadczenie_graczam[id] = str_to_num(doswiadczeniegraczam);
poziom_gracza[id] = str_to_num(poziomgracza);
poziom_graczam[id] = str_to_num(poziomgraczam);
}
#else
//zapis, ze kazda klasa ma ten sam lvl
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-cry#", nazwa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#", doswiadczenie_gracz[id], doswiadczenie_graczam[id], poziom_gracza[id], poziom_graczam[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}
public WczytajDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-cry#", nazwa_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new doswiadczeniegracz[32], doswiadczeniegraczam[32], poziomgracza[32], poziomgraczam[31];
parse(vaultdata, doswiadczeniegracz, 31,doswiadczeniegraczam, 31,poziomgracza, 31,poziomgraczam, 31);
doswiadczenie_gracz[id] = str_to_num(doswiadczeniegracz);
doswiadczenie_graczam[id] = str_to_num(doswiadczeniegraczam);
poziom_gracza[id] = str_to_num(poziomgracza);
poziom_graczam[id] = str_to_num(poziomgraczam);
}
#endif
Próbowałem, też zrobić tak, że zapisując robie tak nick-1-cry
1- to numer klasy
i potem wczytuje przy kazdej klasie klase nr. 1, ale coś też nie działało ;(
[Mógłbym komuś wysłać moda na
PW, bo i tak w tym miesiącu zamierzam go tu opublikować]