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

Zapis nvault


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 Blondyna

    Wszechwidzący

  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:246
  • Imię:Rafał
  • Lokalizacja:RTC
Offline

Napisano 26.11.2012 16:03

Cześć, czy dało by radę aby zamiast tego:

public zapisz_gildia_nick(id)
{
    new AuthID[35]
    
    get_user_name(id,AuthID,34)
    
    new vaultkey[64],vaultdata[256]
    format(vaultkey,63,"%s-GIL",AuthID);
    format(vaultdata,255,"^"%s^"",nazwa_gildi[id])
    nvault_set(g_gil_spr,vaultkey,vaultdata);
    
    new vaultkey1[64]
    format(vaultkey1,63,"%s-GIL",AuthID);
    nvault_remove(g_wplaty,vaultkey1);
    
    ColorChat(id,GREEN,"[*%s*]^x01 Przypisano nick do gildi",nazwa_gildi[id])
    
    return PLUGIN_CONTINUE
}
public nick_gildia(id)
{
    new AuthID[35]
    
    get_user_name(id,AuthID,34)
    
    new vaultkey[64],vaultdata[256]
    format(vaultkey,63,"%s-GIL",AuthID)
    nvault_get(g_gil_spr,vaultkey,vaultdata,255);
    
    new ng[32]
    parse(vaultdata,ng , 31)
    
    copy(nazwa_gildi[id], 31, ng);
    
    if(!equali(nazwa_gildi[id],"")){
        wczytaj_gildia(id)
    }else nazwa_gildi[id] = "Brak"
    
    return PLUGIN_CONTINUE
}
public zapis_gildia(id,mode)
{
    if(mode == 1){
        get_user_name(id,nazwa_zalozycial[id],32)
        ilosc_czlonkow[id]=1
        gildia_lvl[id]=1
    }    
    
    new vaultkey[64],vaultdata[256];
    format(vaultkey,63,"%s-GTB",nazwa_gildi[id]);
    format(vaultdata,255,"%i %i %i ^"%s^" %i %i %i %i %i %i %i %i",gildia_lvl[id],gildia_exp[id],ilosc_czlonkow[id],nazwa_zalozycial[id],g_dmg[id],g_def[id],g_hp[id],g_spid[id],g_pkt[id],g_kam[id],g_drop[id],g_woj[id])
    nvault_set(g_gildia,vaultkey,vaultdata);
}

public wczytaj_gildia(id)
{
    new vaultkey[64],vaultdata[256];
    format(vaultkey,63,"%s-GTB",nazwa_gildi[id]);
    nvault_get(g_gildia,vaultkey,vaultdata,255)
    
    new nz[32],gl[32],ge[32],ic[32],gd[32],gde[32],gh[32],gs[32],pkt[32],gh1[32],gs1[32],pkt1[32]
    
    parse(vaultdata, gl, 31, ge ,31, ic ,31, nz ,31, gd ,31, gde ,31, gh ,31, gs ,31, pkt ,31, gh1 ,31, gs1 ,31, pkt1 ,31)
    
    gildia_lvl[id] = str_to_num(gl);
    gildia_exp[id] = str_to_num(ge);
    ilosc_czlonkow[id] = str_to_num(ic);
    g_dmg[id] = str_to_num(gd);
    g_def[id] = str_to_num(gde);
    g_hp[id] = str_to_num(gh);
    g_spid[id] = str_to_num(gs);
    g_pkt[id] = str_to_num(pkt);
    g_kam[id] = str_to_num(gh1);
    g_drop[id] = str_to_num(gs1);
    g_woj[id] = str_to_num(pkt1);
    
    switch(g_spid[id]){
        case 20 :g_spid[id]=35
            case 40:g_spid[id]=70
            case 60:g_spid[id]=105
            case 80:g_spid[id]=140
        }
    copy(nazwa_zalozycial[id], 31, nz);
}

public wczytaj_wplata(id)
{
    new AuthID[35]
    
    get_user_name(id,AuthID,34)
    new vaultkey[64],vaultdata[256]
    format(vaultkey,63,"%s-GIL",AuthID)
    nvault_get(g_wplaty,vaultkey,vaultdata,255);
    new nz[32]
    
    parse(vaultdata, nz, 31)
    
    wplata[id] = str_to_num(nz);
}
public zapisz_wplata(id)
{
    new AuthID[35]
    
    get_user_name(id,AuthID,34)
    new vaultkey[64],vaultdata[256]
    format(vaultkey,63,"%s-GIL",AuthID)
    format(vaultdata,255,"%i",wplata[id])
    nvault_set(g_wplaty,vaultkey,vaultdata);
}

Zapisywało wszystko w jednym pliku ?
  • +
  • -
  • 0

#2 K!113r

    Teraz to chyba Sławek kek

  • Power User

Reputacja: 387
Wszechpomocny

  • Postów:868
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 26.11.2012 16:26

*
Popularny

Odpowiedź brzmi: tak.
dasiek (26.11.2012 16:40):
Profesjonalna odpowiedź!

  • +
  • -
  • 8

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować


#3 Blondyna

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:246
  • Imię:Rafał
  • Lokalizacja:RTC
Offline

Napisano 26.11.2012 16:52

Dzięki :)
Wykonał byś teraz to ;?
  • +
  • -
  • 0

#4 d0naciak

    Godlike

  • Power User

Reputacja: 1 029
Hero

  • Postów:2 414
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 26.11.2012 18:10

Odpowiedź brzmi: http://amxx.pl/topic...roche-o-nvault/
  • +
  • -
  • 2

#5 Blondyna

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 11
Początkujący

  • Postów:246
  • Imię:Rafał
  • Lokalizacja:RTC
Offline

Napisano 26.11.2012 18:34

Dużo ten tutek nie pomógł, sprawdź czy dobrze to robię.

public zapisz(id)
{
	    new AuthID[35]
	    
	    get_user_name(id,AuthID,34)
	    
        if(mode == 1){
		    get_user_name(id,nazwa_zalozycial[id],32)
		    ilosc_czlonkow[id]=1
		    gildia_lvl[id]=1
	    }
        
	    new vaultkey[64],vaultdata[256]
	    format(vaultkey,63,"%s-GIL",AuthID);
	    format(vaultdata,255,"^"%s^"",nazwa_gildi[id], wplata[id], gildia_lvl[id],gildia_exp[id],ilosc_czlonkow[id],nazwa_zalozycial[id],g_dmg[id],g_def[id],g_hp[id],g_spid[id],g_pkt[id],g_drop[id]))
	    nvault_set(g_gil_spr,vaultkey,vaultdata);
	    
	    new vaultkey1[64]
	    format(vaultkey1,63,"%s-GIL",AuthID);
	    nvault_remove(gildie,vaultkey1);
	    
	    ColorChat(id,GREEN,"[*%s*]^x01 Przypisano nick do gildi",nazwa_gildi[id])
	    
	    return PLUGIN_CONTINUE
}

  • +
  • -
  • 0

#6 K!113r

    Teraz to chyba Sławek kek

  • Power User

Reputacja: 387
Wszechpomocny

  • Postów:868
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 26.11.2012 18:47

nein nein nein, ja bym tutaj zaproponował coś takiego http://amxx.pl/dokum...ja/f1366/format
i tam masz taką piękną tabelkę i powinieneś wyciągnąć wnioski że powinno być więcej instrukcji formatujących, bo podajesz jakiś string (nazwa gildii) reszte chcesz władować tylko nie napisałeś gdzie?
dopisz dla kolejnych zmiennych "miejsce" ich wstawienia w wynikowym stringu czyli np. %i %i

Ja przeważnie stosowałem separatory "#" i potem sobie zamieniałem, nie wiem czy nie będziesz mieć problemów z nazwą gildii gdy ktoś w niej użyje spacji, ja bym albo zastrzegł że w nazwie nie może być spacji (przy tym sposobie zapisu który stosujesz lub zakaz innego znaku którego używasz do separacji, blokowałbym to przy tworzeniu gildii) lub zamieniać przy tworzeniu gildii spację w nazwie na jakiś znak specjalny który jest bardzo rzadko stosowany. Nie jestem pewien czy w dotychczasowym zapisie byłyby błędy z odczytem, ale strzeżonego Pan Bóg strzeże.
  • +
  • -
  • 1

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować


#7 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 26.11.2012 21:55

Ja przeważnie stosowałem separatory "#" i potem sobie zamieniałem, nie wiem czy nie będziesz mieć problemów z nazwą gildii gdy ktoś w niej użyje spacji

Jak nazwa jest zapisana tak
^"%s^"
to spacja w niczym nie przeszkadza, jedynie jeśli ktoś w nazwie da " to wtedy mogą być problemy, a nawet na 100% będą.
  • +
  • -
  • 1

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


#8 K!113r

    Teraz to chyba Sławek kek

  • Power User

Reputacja: 387
Wszechpomocny

  • Postów:868
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 26.11.2012 22:15

@sebul

nie zagłębiałem się zbytnio w sposób zapisu (nie żebym się usprawiedliwiał), ale fakt faktem pozostaje aby zablokować możliwość stosowania tych znaków przy jakimś tam tworzeniu gildii.
  • +
  • -
  • 0

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować





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

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