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

Problem z nvault


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

#1 grs4

    Profesjonalista

  • Zbanowany

Reputacja: -1
Nowy

  • Postów:167
  • Lokalizacja:Wojkowice
Offline

Napisano 23.09.2011 13:33

Witam mam problem z odczytam danych z nvault i zapisem

Mam tak :

public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-cry", nazwa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#%i#", doswiadczenie_gracza[id], poziom_gracza[id], zdrowie_gracza[id], obrazenia_gracza[id], nowe_obrazenia_gracza[id], szybkosc_gracza[id], nowa_szybkosc_gracza[id], dod_kasa_gracza[id], nowa_dod_kasa_gracza[id], niewidzialnosc_gracza[id], nowa_niewidzialnosc_gracza[id], skoki_gracza[id], nowe_skoki_gracza[id], long_jump_gracza[id], nowy_long_jump_gracza[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 doswiadczeniegracza[32], poziomgracza[32], zdrowiegracza[32], obrazeniagracza[32], noweobrazeniagracza[32], szybkoscgracza[32], nowaszybkoscgracza[32], dodkasagracza[32], nowadodkasagracza[32], niewidzialnoscgracza[32], nowaniewidzialnoscgracza[32], skokigracza[32], noweskokigracza[32], longjumpgracza[32], nowylongjumpgracza[32]

parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, zdrowiegracza, 31, obrazeniagracza, 31, noweobrazeniagracza, 31, szybkoscgracza, 31, nowaszybkoscgracza, 31, dodkasagracza, 31, nowadodkasagracza, 31, niewidzialnoscgracza, 31, nowaniewidzialnoscgracza, 31, skokigracza, 31, noweskokigracza, 31, longjumpgracza, 31, nowylongjumpgracza, 31);

doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza);
zdrowie_gracza[id] = str_to_num(zdrowiegracza);
obrazenia_gracza[id] = str_to_num(obrazeniagracza);
nowe_obrazenia_gracza[id] = str_to_num(noweobrazeniagracza);
szybkosc_gracza[id] = str_to_num(szybkoscgracza);
nowa_szybkosc_gracza[id] = str_to_num(nowaszybkoscgracza);
dod_kasa_gracza[id] = str_to_num(dodkasagracza);
nowa_dod_kasa_gracza[id] = str_to_num(nowadodkasagracza);
niewidzialnosc_gracza[id] = str_to_num(niewidzialnoscgracza);
nowa_niewidzialnosc_gracza[id] = str_to_num(nowaniewidzialnoscgracza);
skoki_gracza[id] = str_to_num(skokigracza);
nowe_skoki_gracza[id] = str_to_num(noweskokigracza);
long_jump_gracza[id] = str_to_num(longjumpgracza);
nowy_long_jump_gracza[id] = str_to_num(nowylongjumpgracza);
}



xD wiem troche duzo

ale problem twki w tym ze :

Nie wczytuje danych

a zapisac zapisuje ale jest problem

:
Zapisuje wszystkich (podbotow) oprocz mnie

i nie wczytuje

dalem WczutajDane(id) w kazdym miejscu i po kolei ale i tak nie dziala

proszę

Jak Zrobic zeby Zapisywalo i odczytywalo dane bez problemu??

#2 ParadisO

    Wszechmogący

  • Power User

Reputacja: 128
Zaawansowany

  • Postów:689
  • Lokalizacja:Częstochowa
Offline

Napisano 23.09.2011 15:10

dodaj funkcje
public client_connect(id){
WczytajDane(id)
}

i
public client_disconnect(id){
ZapiszDane(id)
}

  • +
  • -
  • 0

#3 grs4

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: -1
Nowy

  • Postów:167
  • Lokalizacja:Wojkowice
Offline

Napisano 23.09.2011 15:34

Nie dziala, nie wiem czy dobrze napisalem

#4 ParadisO

    Wszechmogący

  • Power User

Reputacja: 128
Zaawansowany

  • Postów:689
  • Lokalizacja:Częstochowa
Offline

Napisano 23.09.2011 15:48

to masz jeszcze to
http://amxx.pl/topic...roche-o-nvault/
  • +
  • -
  • 0

#5 grs4

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: -1
Nowy

  • Postów:167
  • Lokalizacja:Wojkowice
Offline

Napisano 23.09.2011 15:49

mam kolejny problem z hud
set_hudmessage(255, 255, 0, 0.03, 0.209, 0, 6.0, 1.0)
ShowSyncHudMsg(id, SyncHudObj, "[HP: %i ]^n[Poziom: %d]^n[Doswiadczenie: %d / %d]", get_user_health(id),
poziom_gracza[id], doswiadczenie_gracza[id], poziom[poziom_gracza[id]])
return PLUGIN_CONTINUE;


pokazuje tylko pierwszenu graczowi i nikomu wiecej

Użytkownik grs4 edytował ten post 23.09.2011 19:11


#6 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 23.09.2011 23:15

Przy kompilacji nie wyskakują żadne błędy? I ogólnie to chyba będzie lepiej tak
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
formatex(vaultkey,63,"%s-cry", nazwa_gracza[id]);
formatex(vaultdata,255,"%i %i %i %i %i %i %i %i %i %i %i %i %i %i %i", doswiadczenie_gracza[id], poziom_gracza[id], zdrowie_gracza[id], obrazenia_gracza[id], nowe_obrazenia_gracza[id], szybkosc_gracza[id], nowa_szybkosc_gracza[id], dod_kasa_gracza[id], nowa_dod_kasa_gracza[id], niewidzialnosc_gracza[id], nowa_niewidzialnosc_gracza[id], skoki_gracza[id], nowe_skoki_gracza[id], long_jump_gracza[id], nowy_long_jump_gracza[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}

public WczytajDane(id)
{
new vaultkey[64],vaultdata[256];
formatex(vaultkey,63,"%s-cry", nazwa_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);

new doswiadczeniegracza[16], poziomgracza[16], zdrowiegracza[16], obrazeniagracza[16], noweobrazeniagracza[16], szybkoscgracza[16], nowaszybkoscgracza[16], dodkasagracza[16], nowadodkasagracza[16], niewidzialnoscgracza[16], nowaniewidzialnoscgracza[16], skokigracza[16], noweskokigracza[16], longjumpgracza[16], nowylongjumpgracza[16];

parse(vaultdata, doswiadczeniegracza, 15, poziomgracza, 15, zdrowiegracza, 15, obrazeniagracza, 15, noweobrazeniagracza, 15, szybkoscgracza, 15, nowaszybkoscgracza, 15, dodkasagracza, 15, nowadodkasagracza, 15, niewidzialnoscgracza, 15, nowaniewidzialnoscgracza, 15, skokigracza, 15, noweskokigracza, 15, longjumpgracza, 15, nowylongjumpgracza, 15);

doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza);
zdrowie_gracza[id] = str_to_num(zdrowiegracza);
obrazenia_gracza[id] = str_to_num(obrazeniagracza);
nowe_obrazenia_gracza[id] = str_to_num(noweobrazeniagracza);
szybkosc_gracza[id] = str_to_num(szybkoscgracza);
nowa_szybkosc_gracza[id] = str_to_num(nowaszybkoscgracza);
dod_kasa_gracza[id] = str_to_num(dodkasagracza);
nowa_dod_kasa_gracza[id] = str_to_num(nowadodkasagracza);
niewidzialnosc_gracza[id] = str_to_num(niewidzialnoscgracza);
nowa_niewidzialnosc_gracza[id] = str_to_num(nowaniewidzialnoscgracza);
skoki_gracza[id] = str_to_num(skokigracza);
nowe_skoki_gracza[id] = str_to_num(noweskokigracza);
long_jump_gracza[id] = str_to_num(longjumpgracza);
nowy_long_jump_gracza[id] = str_to_num(nowylongjumpgracza);
}

Można by jeszcze dla poszczególnych statystyk tworzyć mniejsze bądź większe tablice, bo przecież chyba nie masz u siebie na serwerze piętnastocyfrowego lvlu...?
Co do huda to pokaż jak to wyświetlasz temu pierwszemu graczowi, to się zobaczy co źle robisz.
  • +
  • -
  • 1

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#7 grs4

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: -1
Nowy

  • Postów:167
  • Lokalizacja:Wojkowice
Offline

Napisano 24.09.2011 07:08

Zapis dziala bo zrobilem test z komendami /zapisz i /wczytaj

Zapisalo ale wczytywalo 0 lvl
usunalem 1 liczbe 31 i dzialo :)

teraz tak jak pisalem mam problem z hud u graczy

Pokazuje tylko pierszemu graczowi na serwerze
ten hud :
set_hudmessage(255, 255, 0, 0.03, 0.209, 0, 6.0, 1.0)
ShowSyncHudMsg(id, SyncHudObj, "[HP: %i ]^n[Poziom: %d]^n[Doswiadczenie: %d / %d]", get_user_health(id),
poziom_gracza[id], doswiadczenie_gracza[id], poziom[poziom_gracza[id]])
return PLUGIN_CONTINUE;


a dokladniej


public PokazHUD(id)
{
if(!is_user_alive(id))
{
new target = entity_get_int(id, EV_INT_iuser2);

if(target == 0)
{
return PLUGIN_CONTINUE;
}

set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj2, "HP: %d^nPoziom: %d^nDoswiadczenie: %d / %d^n^nZdrowie Gracza: %d (Dod. %d hp)^nObrazenia Gracza: %d (Dod. %d obr)^nSzybkosc: %d (Dod. %d szyb.)^n^nSuper Skille:^nPieniadze: %d (Zwieksza kase o $%d)^nNiewidzialnosc: %d (Premia %d)^nSkoki: %d (Moze skoczyc %d raz/y w powietrzu)^nLongJump: %d (Dodatkowa sila wyrzutu %d)", get_user_health(target),
poziom_gracza[target], doswiadczenie_gracza[target], poziom[poziom_gracza[target]], zdrowie_gracza[target], max_zdrowie_gracza[target],
obrazenia_gracza[target], nowe_obrazenia_gracza[target], szybkosc_gracza[target], nowa_szybkosc_gracza[target], dod_kasa_gracza[target], nowa_dod_kasa_gracza[target], niewidzialnosc_gracza[target], nowa_niewidzialnosc_gracza[target], skoki_gracza[target], skoki_gracza[target], long_jump_gracza[target], nowy_long_jump_gracza[target]);

return PLUGIN_CONTINUE;
}

set_hudmessage(255, 255, 0, 0.0, 0.19, 0, 6.0, 1.0)
show_hudmessage(id, "[HP: %i ]^n[Poziom: %d]^n[Doswiadczenie: %d / %d]", get_user_health(id),
poziom_gracza[id], doswiadczenie_gracza[id], poziom[poziom_gracza[id]])

return PLUGIN_CONTINUE;
}



i w plugin init
set_task(0.1, "PokazHUD", 1, _, _, "b")

Użytkownik grs4 edytował ten post 24.09.2011 08:11


#8 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 24.09.2011 10:55

Skoro taska dajesz w plugin_init to musisz wykorzystać tutaj pętle.
plugin_init
set_task(1.0, "PokazHUD", _, _, _, "b");

i teraz
public PokazHUD() {
new target;
for(new i=1; i<=32; i++) {
if(is_user_connected(i) && !is_user_bot(i)) {
if(is_user_alive(i)) {
set_hudmessage(255, 255, 0, 0.0, 0.19, 0, 1.0, 1.0);
show_hudmessage(i, "[HP: %i]^n[Poziom: %d]^n[Doswiadczenie: %d / %d]", get_user_health(id), poziom_gracza[id], doswiadczenie_gracza[id], poziom[poziom_gracza[id]]);
}
else {
target = entity_get_int(i, EV_INT_iuser2);

if(target) {
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(i, SyncHudObj2, "HP: %d^nPoziom: %d^nDoswiadczenie: %d / %d^n^nZdrowie Gracza: %d (Dod. %d hp)^nObrazenia Gracza: %d (Dod. %d obr)^nSzybkosc: %d (Dod. %d szyb.)^n^nSuper Skille:^nPieniadze: %d (Zwieksza kase o $%d)^nNiewidzialnosc: %d (Premia %d)^nSkoki: %d (Moze skoczyc %d raz/y w powietrzu)^nLongJump: %d (Dodatkowa sila wyrzutu %d)", get_user_health(target),
poziom_gracza[target], doswiadczenie_gracza[target], poziom[poziom_gracza[target]], zdrowie_gracza[target], max_zdrowie_gracza[target],
obrazenia_gracza[target], nowe_obrazenia_gracza[target], szybkosc_gracza[target], nowa_szybkosc_gracza[target], dod_kasa_gracza[target], nowa_dod_kasa_gracza[target], niewidzialnosc_gracza[target], nowa_niewidzialnosc_gracza[target], skoki_gracza[target], skoki_gracza[target], long_jump_gracza[target], nowy_long_jump_gracza[target]);
}
}
}
}
}

  • +
  • -
  • 1

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#9 grs4

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: -1
Nowy

  • Postów:167
  • Lokalizacja:Wojkowice
Offline

Napisano 24.09.2011 14:55

Dziala wielkie dzięki, teamt do zamknieica

#10 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 489
  • Lokalizacja:AMXX.PL
Offline

Napisano 24.09.2011 14:57

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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