Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Nie zapisuje się PKT do nVault


  • Zamknięty Temat jest zamknięty
5 odpowiedzi w tym temacie

#1 NiFreZ

    Zaawansowany

  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:116
  • Imię:tom
  • Lokalizacja:ASd
Offline

Napisano 03.01.2011 18:57

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

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 ?
  • +
  • -
  • 0

#2 cedriK

    Profesjonalista

  • Zbanowany

Reputacja: -2
Nowy

  • Postów:173
  • Lokalizacja:Hogwart
Offline

Napisano 03.01.2011 19:34

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



#3 AmD

    aemde

  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 03.01.2011 19:42

Pierwsza sprawa jeśli chcesz sprawdzić wartości pliku vault korzystaj z nVaultEditor...
Kolejna,
format(vaultdata,255,"%i#%i#",player_punktyep[id])
po co 2x %i skoro masz jedną tablice?
  • +
  • -
  • 0

#4 NiFreZ

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:116
  • Imię:tom
  • Lokalizacja:ASd
Offline

Napisano 03.01.2011 19:44

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

  • +
  • -
  • 0

#5 AmD

    aemde

  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 03.01.2011 20:22

Name zapisuje linie wyżej...

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

  • +
  • -
  • 0

#6 NiFreZ

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:116
  • Imię:tom
  • Lokalizacja:ASd
Offline

Napisano 03.01.2011 22:31

Inaczej zrobilem i dziala ;]
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych