Problem z menu.
wizu
21.09.2008
Witam. Chciałem sobie napisać plugin, który działałby mniej więcej na takiej zasadzie:
-Po 15 sekundach od rozpoczęcia mapy wyświetla wszystkim dane menu
-Potem w zależności jaki wariant wybrali gracze, na początku każdej rundy wyświetla się wszystkim dany tekst na środku ekranu
Napisałem coś takiego, jednak nie wyświetla menu
Podejrzewam, ze to będzie coś z zasięgiem zmiennych. Zawsze wyskakuje "Tak!!". Dzięki za każdą pomoc.
-Po 15 sekundach od rozpoczęcia mapy wyświetla wszystkim dane menu
-Potem w zależności jaki wariant wybrali gracze, na początku każdej rundy wyświetla się wszystkim dany tekst na środku ekranu
Napisałem coś takiego, jednak nie wyświetla menu
#include <amxmod> #include <amxmisc> new za, przeciw public plugin_init() { register_plugin("menu","0.1","wizu") register_menucmd(register_menuid("Menu"),1023,"actionMenu") register_event("HLTV", "wyswietl", "a", "1=0", "2=0") set_task(30.0,"showMenu") set_task(50.0,"wyswietl") } public actionMenu(id,key){ switch(key){ case 3: { za = za + 1 } case 4: { przeciw = przeciw +1 } } } public showMenu(){ new menuBody[512] format(menuBody,511,"Tak, czy nie??^n^n^n3. Tak^n4. Nie") show_menu(0,((1<<2)|(1<<3)),menuBody, 15) return PLUGIN_CONTINUE } public wyswietl() { if (za >= przeciw) { set_hudmessage(255, 255, 255, 0.5, 0.5) show_hudmessage(0, "Tak!!") }else { show_hudmessage(0, "Nie!!") set_hudmessage(255, 255, 255, 0.5, 0.5) } }
Podejrzewam, ze to będzie coś z zasięgiem zmiennych. Zawsze wyskakuje "Tak!!". Dzięki za każdą pomoc.
Seba 21.09.2008
Nie chce mi sie patrzeć w kod i analizować go,ale
przeciw += 1 jak już
przeciw = przeciw +1;o
przeciw += 1 jak już
Seba 21.09.2008
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #define PLUGIN "Nowy Plugin" #define VERSION "1.0" #define AUTHOR "Sn!ff3r" new taknie[3] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) set_task(120.0, "start_vote") // Add your code here... } public start_vote() { new menu = menu_create("w ***** tak czy nie?!", "menu_handler") menu_additem(menu, "wTak", "1", 0) menu_additem(menu, "wNie", "2", 0) menu_addblank(menu, 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) new players[32], inum get_players(players, inum, "ch") for(new i = 0; i < inum; i++) { menu_display(players[i], menu, 0) } set_task(15.0, "finish_vote") taknie[1] = taknie[2] = 0 return PLUGIN_HANDLED } public menu_handler(id, menu, item) { if (item == MENU_EXIT) { menu_cancel(id) return PLUGIN_HANDLED } new data[6], name[32] new access, callback menu_item_getinfo(menu, item, access, data, 5, _, _, callback) new key = str_to_num(data) get_user_name(id, name, 31) switch (key) { case 1: { client_print (0, print_chat, "[AMXX] %s wybral tak", name) } case 2: { client_print (0, print_chat, "[AMXX] %s wybral nie", name) } } ++taknie[key] menu_cancel(id) return PLUGIN_HANDLED } public finish_vote() { if(taknie[1] > taknie[2]) { client_print(0, print_chat, "[AMXX] %d graczy zaglosowalo na tak", taknie[1]) } else if(taknie[2] > taknie[1]) { client_print(0, print_chat, "[AMXX] %d graczy zaglosowalo na nie", taknie[2]) } }ja bym tego użył, nie pakuj się w old menus