←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Pytanie dotyczące menu

  • +
  • -
1stADXionC - zdjęcie 1stADXionC 13.06.2016

Witam, stworzyłem menu i chce z niego wywalić opcje "Exit"

public OpisRuny(id, runa, wartosc)
{
    hud_znika[id]=1;
    
    new opis_runy[MAX_WIELKOSC_OPISU];
    
    new losowa_wartosc[15];
    if(wartosc > -1)
        num_to_str(wartosc, losowa_wartosc, 14);
    else
        format(losowa_wartosc, charsmax(losowa_wartosc), "%i-%i", min_wartosci_runy[runa], max_wartosci_runy[runa]);
    
    format(opis_runy, charsmax(opis_runy), opisy_runy[runa]);
    replace_all(opis_runy, charsmax(opis_runy), "LW", losowa_wartosc);
    
    new czasjaki,minuty,godziny    
    czasjaki = wytrzymalosc_runy[id]
    godziny = czasjaki/3600
    minuty=  (wytrzymalosc_runy[id]-godziny*3600)/60
    
    new Time[128]
    if (godziny>= 1)
    {
        format(Time, charsmax(Time), "%d godzin. ",godziny)
    }
    if (minuty>= 1)
    {
        format(Time, charsmax(Time), "%d minut. ", minuty)
    }
    
    new tytul[128], ulepszanie[64], przedluzanie[64], wyjscie[64];
    
    format(tytul, charsmax(tytul), "\yRuna:\w %s^n\yCzas Do Konca:\w %s^n\yPoziom rozwoju:\w 1^n\ySpecyfikacja:\w %s", nazwy_runy[runa], Time, opis_runy);
    
    format(ulepszanie, charsmax(ulepszanie), "\wUlepsz rune\r [\y 150 Zlota\r ]");
    format(przedluzanie, charsmax(przedluzanie), "\wPrzedluz dzialanie\r [\y 60 Zlota\r ]");
    format(wyjscie, charsmax(wyjscie), "\wWyjdz");
    
    new menu = menu_create(tytul, "runa_handle");
    
    menu_additem(menu, ulepszanie);
    menu_additem(menu, przedluzanie);
    menu_addblank(menu, 2);
    menu_additem(menu, wyjscie);
    
    menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
    
    menu_display(id, menu);
}

Załączone miniatury

  • acab.png
Odpowiedz

  • +
  • -
Linux' - zdjęcie Linux' 14.06.2016

Typ sposobem, tworzonego menu tego nie dokonasz. Musisz stworzyc menu tzn, starym sposobem. Wiecej o tym tu: https://amxx.pl/topi...tworzenie-menu/

Odpowiedz

  • +
  • -
1stADXionC - zdjęcie 1stADXionC 14.06.2016

Mam problemy podczas kompilacji:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

Error: Argument type mismatch (argument 4) on line 616
Warning: Loose indentation on line 617

1 Error.
Could not locate output file C:\Users\1stADXionC\Desktop\AleLulaaaa\cod\scripting\cod_silnik.amx (compile failed).
public OpisRuny(id, runa, wartosc)
{
    hud_znika[id]=1;
    
    new opis_runy[MAX_WIELKOSC_OPISU];
    
    new losowa_wartosc[15];
    if(wartosc > -1)
        num_to_str(wartosc, losowa_wartosc, 14);
    else
        format(losowa_wartosc, charsmax(losowa_wartosc), "%i-%i", min_wartosci_runy[runa], max_wartosci_runy[runa]);
    
    format(opis_runy, charsmax(opis_runy), opisy_runy[runa]);
    replace_all(opis_runy, charsmax(opis_runy), "LW", losowa_wartosc);
    
    new czasjaki,minuty,godziny    
    czasjaki = wytrzymalosc_runy[id]
    godziny = czasjaki/3600
    minuty=  (wytrzymalosc_runy[id]-godziny*3600)/60
    
    new Time[128]
    if (godziny>= 1)
    {
        format(Time, charsmax(Time), "%d godzin. ",godziny)
    }
    if (minuty>= 1)
    {
        format(Time, charsmax(Time), "%d minut. ", minuty)
    }
    
    show_menu(id, MYMENU_KEYS, "\yRuna:\w %s^n\yCzas Do Konca:\w %s^n\yPoziom rozwoju:\w 1^n\ySpecyfikacja:\w %s^nw1. \wUlepsz rune\r [\y 150 Zlota\r ]^n^t2. \wPrzedluz dzialanie\r [\y 60 Zlota\r ]", nazwy_runy[runa], Time, opis_runy, -1, "opisruny");
         return PLUGIN_HANDLED;
}

Użytkownik 1stADXionC edytował ten post 14.06.2016 12:59
Odpowiedz

  • +
  • -
Robiin - zdjęcie Robiin 14.06.2016

Warning: Loose indentation on line 617

Oznacza złą tabulację (czyli "spacja" w złym miejscu)


Error: Argument type mismatch (argument 4) on line 616

a tutaj podaj która to linijka 616, bo będzie w ten sposób łatwiej? ._.

Error: Argument type mismatch (argument 4) on line 616
Odpowiedz

  • +
  • -
1stADXionC - zdjęcie 1stADXionC 14.06.2016

show_menu(id, MYMENU_KEYS, "\yRuna:\w %s^n\yCzas Do Konca:\w %s^n\yPoziom rozwoju:\w 1^n\ySpecyfikacja:\w %s^nw1. \wUlepsz rune\r [\y 150 Zlota\r ]^n^t2. \wPrzedluz dzialanie\r [\y 60 Zlota\r ]", nazwy_runy[runa], Time, opis_runy, -1, "opisruny");
         
Odpowiedz

  • +
  • -
Amaroq - zdjęcie Amaroq 14.06.2016

Typ sposobem, tworzonego menu tego nie dokonasz

W nowym menu można to zrobić w bardzo prosty sposób.

menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
Odpowiedz

  • +
  • -
1stADXionC - zdjęcie 1stADXionC 14.06.2016

 

Typ sposobem, tworzonego menu tego nie dokonasz

W nowym menu można to zrobić w bardzo prosty sposób.

menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);

Dzięki działa!

Lecz gdy, wybieram opcje "1", "2", "3" nic się nie dzieje.

public OpisRuny(id, runa, wartosc)
{
    hud_znika[id]=1;
    
    new opis_runy[MAX_WIELKOSC_OPISU];
    
    new losowa_wartosc[15];
    if(wartosc > -1)
        num_to_str(wartosc, losowa_wartosc, 14);
    else
        format(losowa_wartosc, charsmax(losowa_wartosc), "%i-%i", min_wartosci_runy[runa], max_wartosci_runy[runa]);
    
    format(opis_runy, charsmax(opis_runy), opisy_runy[runa]);
    replace_all(opis_runy, charsmax(opis_runy), "LW", losowa_wartosc);
    
    new czasjaki,minuty,godziny    
    czasjaki = wytrzymalosc_runy[id]
    godziny = czasjaki/3600
    minuty=  (wytrzymalosc_runy[id]-godziny*3600)/60
    
    new Time[128]
    if (godziny>= 1)
    {
        format(Time, charsmax(Time), "%d godzin. ",godziny)
    }
    if (minuty>= 1)
    {
        format(Time, charsmax(Time), "%d minut. ", minuty)
    }
    
    new tytul[128], ulepszanie[64], przedluzanie[64], wyjscie[64];
    
    format(tytul, charsmax(tytul), "\yRuna:\w %s^n\yCzas Do Konca:\w %s^n\yPoziom rozwoju:\w 1^n\ySpecyfikacja:\w %s", nazwy_runy[runa], Time, opis_runy);
    
    format(ulepszanie, charsmax(ulepszanie), "\wUlepsz rune\r [\y 150 Zlota\r ]");
    format(przedluzanie, charsmax(przedluzanie), "\wPrzedluz dzialanie\r [\y 60 Zlota\r ]");
    format(wyjscie, charsmax(wyjscie), "\wWyjdz");
    
    new menu = menu_create(tytul, "runa_handle");
    
    menu_additem(menu, ulepszanie);
    menu_additem(menu, przedluzanie);
    menu_addblank(menu, 2);
    menu_additem(menu, wyjscie);
    
    menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
    menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
    
    menu_display(id, menu);
}

public runa_handle(id, menu, item)
{
    hud_znika[id]=0;
    if(item == MENU_EXIT)
    {
        menu_destroy(menu);
        return PLUGIN_CONTINUE;
    }
    
    switch(item)
    {
        case 0:
        {
            KomendaOpisRuny(id)
        }
        case 1:
        {
            KomendaOpisRuny(id);
        }
        case 2:
        {
            KomendaOpisRuny(id);
        }
    }
    
    return PLUGIN_HANDLED;
}
Odpowiedz

  • +
  • -
Asiap - zdjęcie Asiap 14.06.2016

Typ sposobem, tworzonego menu tego nie dokonasz. Musisz stworzyc menu tzn, starym sposobem. Wiecej o tym tu: https://amxx.pl/topi...tworzenie-menu/

bzdura

menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
Odpowiedz

  • +
  • -
1stADXionC - zdjęcie 1stADXionC 15.06.2016

 

Typ sposobem, tworzonego menu tego nie dokonasz. Musisz stworzyc menu tzn, starym sposobem. Wiecej o tym tu: https://amxx.pl/topi...tworzenie-menu/

bzdura

menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);

"Exit" został już usunięty, lecz nie dziala klawisz "1", "2", "3".

Odpowiedz