←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

nVault - Wczytywanie danych graczy offline.

  • +
  • -
Whisper - zdjęcie Whisper 12.12.2011

Jak wczytać z nvault dane graczy offline? Potrzebuję tego do zrobienia czegoś w rodzaju rankingu. Chcę aby wczytywało wszystkie dane (z jednej wybranej tablicy, nie z całej bazy), a potem pokazywało 15 graczy, którzy mają najwięcej tego co wczytam... (Z tym sobie raczej poradzę). Prosiłbym o przykładowy kod lub jakiś tutorial bo nie mogę znaleźć ;/
Odpowiedz

  • +
  • -
Fili:P - zdjęcie Fili:P 12.12.2011

Tutorialu na amxx nie widziałem, może na alien jest, więc nakierowuje cię na moduł/bibliotekę nvault_util.
Mała dopiska łap: http://forums.allied...ad.php?t=139584
Użytkownik Fili:P edytował ten post 12.12.2011 16:49
Odpowiedz

  • +
  • -
Stachuu :D ?? - zdjęcie Stachuu :D ?? 12.12.2011

może ci się przyda
new key[128]

new iPos , szKey[ 32 ] , szVal[ 64 ] , iTimeStamp;
iVaultHandle = nvault_util_open("xxx")  //// twoj plik
new iCount = nvault_util_count (iVaultHandle)// pobiera ilość wpisów


for ( new iCurrent = 0 ; iCurrent <= iCount ; iCurrent++ )
{
    iPos = nvault_util_read( iVaultHandle , iPos , szKey , charsmax( szKey ) , szVal , charsmax( szVal ) , iTimeStamp );
    //////pobierasz szVal
    new a[10]
    parse(szVal, a); /// jakas liczba twoja zmienna
  
    formatex(key, 127, "%s",szKey);////to jest nick
    //key[strlen(key)-4] = 0;  to dodaj jesli masz np nazwagracza-xxx (%s-xxx)
   
    // masz teraz nick oraz jego np. zabicia. Z sortowaniem musisz poradzić sobie sam
}
Odpowiedz

  • +
  • -
Whisper - zdjęcie Whisper 12.12.2011

No dobrze ale jak użyję nV_util to muszę robić nową funkcję z zapisem (tzn przerabiać ją pod util), czy po prostu funkcja z nvault_util otworzy tą bazę co mam z nVault? Zielarz. a jak w tym wybrać co chcę pobrać? Powiedzmy mam tak:


format(vaultdata, 255, "%i#%i#, tablica1[id], tablica2[id])


I jak pobrać dane dokładnie z tablica2?
Odpowiedz

  • +
  • -
Stachuu :D ?? - zdjęcie Stachuu :D ?? 12.12.2011

new a[4],b[15],a1,b1
	parse(szVal, a, 3, b,14);

a1 = str_to_num(a)
	b1 = str_to_num(<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />

////lub jesli string

new nazwa[128]
copy(nazwa, 31, a);


kolejność musi się zgadzać

co do 1.

Możesz w 1 pluginie zapisywać zwykłym nvault a w 2 otwierać poprzez util (util aktualizuje co mapę,próbowałem wczytywać bezpośrednio ale i tak bez zmian)
Użytkownik Zielarz. edytował ten post 12.12.2011 17:24
Odpowiedz