[ROZWIĄZANE] Problem z komendą /daj
Bll
26.02.2013
Witam, mam problem z tą komendą, używałem tego kodu:
Komenda działa do pierwszego oddania itemu, przy każdej kolejnej próbie przez resztę mapy wyskakuje "musisz poczekac 1 runde",
jeśli ktoś wie co jest nie tak z tym kodem to proszę o poprawienie.
new oddaj_id[33]; new bool:dostal_przedmiot[33]; public OddajPrzedmiot(id) { new menu = menu_create("Oddaj przedmiot", "OddajPrzedmiot_Handle"); new cb = menu_makecallback("OddajPrzedmiot_Callback"); new numer_przedmiotu; for(new i=0; i<=32; i++) { if(!is_user_connected(i)) continue; oddaj_id[numer_przedmiotu++] = i; menu_additem(menu, nazwa_gracza[i], "0", 0, cb); } menu_display(id, menu); } public OddajPrzedmiot_Handle(id, menu, item) { if(!is_user_connected(oddaj_id[item])) { client_print(id, print_chat, "Nie odnaleziono zadanego gracza."); return PLUGIN_CONTINUE; } if(dostal_przedmiot[id]) { client_print(id, print_chat, "Musisz poczekac 1 runde."); return PLUGIN_CONTINUE; } if(!informacje_przedmiotu_gracza[id][0]) { client_print(id, print_chat, "Nie masz zadnego przedmiotu."); return PLUGIN_CONTINUE; } if(informacje_przedmiotu_gracza[oddaj_id[item]][0]) { client_print(id, print_chat, "Ten gracz ma juz przedmiot."); return PLUGIN_CONTINUE; } dostal_przedmiot[oddaj_id[item]] = true; DajPrzedmiot(oddaj_id[item], informacje_przedmiotu_gracza[id][0]); informacje_przedmiotu_gracza[oddaj_id[item]][1] = informacje_przedmiotu_gracza[id][1]; client_print(id, print_chat, "Przekazales %s graczowi %s.",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[oddaj_id[item]]); client_print(oddaj_id[item], print_chat, "Dostales %s od gracza %s.",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[id]); UsunPrzedmiot(id); return PLUGIN_CONTINUE; } public OddajPrzedmiot_Callback(id, menu, item) { if(oddaj_id[item] == id) return ITEM_DISABLED; return ITEM_ENABLED; }
Komenda działa do pierwszego oddania itemu, przy każdej kolejnej próbie przez resztę mapy wyskakuje "musisz poczekac 1 runde",
jeśli ktoś wie co jest nie tak z tym kodem to proszę o poprawienie.
szelbi
26.02.2013
Do funkcji plugin_init() dodaj
Na koniec kodu wklej to
Powinno działać, ale nie testowałem, więc jak coś to pisz.
Użytkownik norbi1952 edytował ten post 26.02.2013 17:28
register_logevent("nowa_runda", 2, "0=World triggered", "1=Round_Start")
Na koniec kodu wklej to
public nowa_runda() { for(new i=1; i<=32; i++) { if(is_user_connected(id)) { dostal_przedmiot[id] = false; } } }
Powinno działać, ale nie testowałem, więc jak coś to pisz.
Użytkownik norbi1952 edytował ten post 26.02.2013 17:28
Jamdzam
26.02.2013
usun to
tez mialem z tym problem ale poradzilem sobie ja pamietam powiedzialem dobrze mozesz dawac tyle razu itemy ile chcesz bo usuwasz warunek czy gracz dostal przedmiot
if(dostal_przedmiot[id])
{
client_print(id, print_chat, "Musisz poczekac 1 runde.");
return PLUGIN_CONTINUE;
}
tez mialem z tym problem ale poradzilem sobie ja pamietam powiedzialem dobrze mozesz dawac tyle razu itemy ile chcesz bo usuwasz warunek czy gracz dostal przedmiot
dasiek
26.02.2013
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL