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

nvault + menu


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

#1 Stachuu :D ??

    Wszechobecny

  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 24.09.2011 23:20

siemka mam pytanie

załóżmy ze mamy przypisane do nazw graczy ich fragi w pliku nvalut

czy jest sposób aby dodać do menu (menu_additem) każdego gracza i po wybraniu go wyskoczyło by info ile on zdobył fragów ( pytanie czysto teoretyczne )

Użytkownik Stachu123 edytował ten post 24.09.2011 23:21

  • +
  • -
  • 0

#2 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 25.09.2011 04:10

Jest sposób, a chyba nawet dwa.
  • +
  • -
  • 0

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


#3 Fili:P

    Godlike

  • Power User

Reputacja: 754
Guru

  • Postów:1 679
  • Imię:Darek
  • Lokalizacja:Warszawa
Offline

Napisano 25.09.2011 05:48

Zastanawiam się czy to info, miałoby być w menu czy w say-u.
  • +
  • -
  • 0

#4 Stachuu :D ??

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 25.09.2011 12:15

Jest sposób, a chyba nawet dwa.


powiedział co wiedział <_<

@up .
  • +
  • -
  • 0

#5 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 25.09.2011 13:20

każdego gracza - czyli wszystkich online czy tych też offline? jak tych offline to nvault_util trzeba chyba użyć.

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#6 Whisper

    Zaawansowany

  • Użytkownik

Reputacja: 28
Życzliwy

  • Postów:80
  • Imię:Marcin
  • Lokalizacja:Polska
Offline

Napisano 25.09.2011 13:25


public PlayersMenu(id)
{
new menu = menu_create("\wWybierz gracza:", "PlayersMenuHandler");

new players[32], pnum, tempid;

new szName[32], szTempid[10];

get_players(players, pnum);

for( new i; i<pnum; i++ )
{
tempid = players[i];

get_user_name(tempid, szName, charsmax(szName));
num_to_str(tempid, szTempid, charsmax(szTempid));
menu_additem(menu, szName, szTempid, 0);

}
menu_display(id, menu, 0);
}
public PlayersMenuHandler(id, PlayersMenu , item)
{
if( item == MENU_EXIT )
{
menu_destroy(PlayersMenu);
return PLUGIN_HANDLED;
}

new data[6], szName[64];
new access, callback;
menu_item_getinfo(PlayersMenu, item, access, data,charsmax(data), szName,charsmax(szName), callback);

new tempid = str_to_num(data);

ColorChat(id, GREEN, "Gracz %s posiada %d fragow.", szName, nazwa_twojej_tablicy[tempid]);

return PLUGIN_CONTINUE;
}

Użytkownik Whisper edytował ten post 25.09.2011 13:26

  • +
  • -
  • 0

Dołączona grafika


#7 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 25.09.2011 13:41

Jest sposób, a chyba nawet dwa.


powiedział co wiedział <_<

@up .

Pytałeś czy jest sposób i że pytanie czysto teoretyczne, to odpowiedziałem. Następnym razem precyzuj bardziej pytania to uniknie się takich sytuacji. Są dwa sposoby, bo można przy wejściu gracza wczytać jego fragi z vault, a potem wszystko robić na zmiennej do której przypisało się ilość fragów, albo można za każdym razem wczytywać vault i zwracać ilość fragów poprzez return.
  • +
  • -
  • 0

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


#8 Stachuu :D ??

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 25.09.2011 17:22

@up sebul sory za niesprecyzowanie

Funfel napisał dobrze chodzi mi o wszystkie wpisy z pliku

Wersja whispera tyczy sie jedynie graczy online


//////////////////////////

Moze inaczej

Zakładamy ze w pliku valut mamy 100 wpisów graczy.

Teraz jak zrobić menu aby wyświetliło wszystkich graczy (100)
  • +
  • -
  • 0

#9 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 25.09.2011 17:27

musisz użyć nvaut_util, wywnioskować z niej ile jest wszystkich wpisów i za pomocą arrayów musisz dodawać przez additem każdemu wpisowi. (posiadam taki kod + rozbudowanie po kliknięciu ale niestety nie mogę go udostępnić bo prywaciak)

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#10 Stachuu :D ??

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 25.09.2011 19:34

ok dzięki all juz mam tylko jeszcze jedno

public menu(id)
{
      new iVaultHandle = nvault_util_open( szTestVault );
   
    new key[128]
    new MyMenu=menu_create("Info","info");
   
    new iPos , szKey[ 32 ] , szVal[ 64 ] , iTimeStamp;
    new iCount = nvault_util_count (iVaultHandle)
   
    for ( new iCurrent = 1 , n=1; iCurrent <= iCount ; iCurrent++ )
    {
        iPos = nvault_util_read( iVaultHandle , iPos , szKey , charsmax( szKey ) , szVal , charsmax( szVal ) , iTimeStamp );
        formatex(key, 127, "%s",szKey);
        oddaj_id[n++] = iCurrent;
        menu_additem(MyMenu, key, _, _,  _);
    }
    menu_setprop(MyMenu,MPROP_EXITNAME,"Wyjscie");
   
    menu_setprop(MyMenu,MPROP_BACKNAME,"Wroc")
    menu_setprop(MyMenu,MPROP_NEXTNAME,"Nastepne")
   
    //zawsze pokaż opcję wyjścia
    menu_setprop(MyMenu,MPROP_EXIT,MEXIT_ALL);
   
    menu_setprop(MyMenu,MPROP_PERPAGE,7)
   
    menu_display(id, MyMenu);
}

do pliku danego pliku zapisuje

format(vaultkey,63,"%s-GIL",AuthID)

i przy wybieraniu w menu widać

1.nick_gracza1-GIL
2.nick_gracza2-GIL

etc.

da się jakoś usunąć "-GIL"
  • +
  • -
  • 0

#11 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 25.09.2011 20:03

for ( new iCurrent = 1 , n=1; iCurrent <= iCount ; iCurrent++ )
{
iPos = nvault_util_read( iVaultHandle , iPos , szKey , charsmax( szKey ) , szVal , charsmax( szVal ) , iTimeStamp );
formatex(key, 127, "%s",szKey);
replace_all(key, 127, "-GIL", "");
oddaj_id[n++] = iCurrent;
menu_additem(MyMenu, key, _, _, _);
}

Albo zamiast tego replace_all, to można też tak
key[strlen(key)-4] = 0;

też powinno działać.

I nie wiem, czy nie lepiej będzie jak plik vault będziesz wczytywał na początku mapy i dane zapisywał do dynamicznej, czy zwykłej tablicy.

Użytkownik sebul edytował ten post 25.09.2011 20:08

  • +
  • -
  • 1

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


#12 Stachuu :D ??

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 237
Wszechwidzący

  • Postów:476
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Karsznice
Offline

Napisano 25.09.2011 21:27

ok zrobione można zamknąć

Użytkownik Stachu123 edytował ten post 25.09.2011 21:27

  • +
  • -
  • 0

#13 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

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

Napisano 25.09.2011 22:08

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: To zamykamy.

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