Był już chyba taki temat na forum ale nie mogę go nigdzie znaleźć. W jaki sposób mogę zapisać aktualnie przeglądaną stronę w menu żeby móc je później odświeżyć na tej samej stronie?
Próbowałem coś tam zrobić ale wychodziły mi dziwne bugi, czasami komenda /s nie pokrywała się z informacjami w /t albo gdy wyszedłem z menu mając je odpalone na drugiej stronie (niby powinno wyzerować strony), po wpisaniu /menu znów wracało na drugą stronę.
#include <amxmodx>
new strona[33];
public plugin_init() {
register_plugin("Test Menu", "1.0", "Anonymuss");
register_clcmd("say /menu_testowe", "test_menu");
register_clcmd("say /s", "aktualna_strona");
register_clcmd("say /t", "test");
}
public client_authorized(id)
strona[id] = 0;
public test_menu(id) {
test(id);
new menu = menu_create("Menu Testowe", "uchwyt_menu");
for(new i = 0; i <= 7; i++)
menu_additem(menu, "Odswiez");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu, strona[id]);
}
public uchwyt_menu(id, menu, item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
strona[id] = 0;
client_print_color(id, id, "Zamknales menu (strona %i)", strona[id]);
return PLUGIN_HANDLED;
}
switch(item) {
case 0..7: {
test_menu(id);
client_print_color(id, id, "Odswiezyles menu (strona %i)", strona[id]);
}
}
return PLUGIN_CONTINUE;
}
public aktualna_strona(id)
client_print_color(id, id, "Aktualna strona: %i", strona[id]);
public test(id) {
new menu, new_menu;
player_menu_info(id, menu, new_menu, strona[id]);
if(new_menu != -1)
client_print_color(id, id, "gracz %i ma wyświetlone nowe menu o indeksie %i, na stronie %i", id, new_menu, strona[id]);
}
Co robię nie tak? Jaka jest poprawna metoda?


Dodatki SourceMod













