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
 

Bll - zdjęcie

Bll

Rejestracja: 26.02.2013
Aktualnie: Nieaktywny
Poza forum Ostatnio: 04.03.2013 18:56
-----

Moje tematy

[ROZWIĄZANE] Problem z komendą /daj

26.02.2013 17:15

Witam, mam problem z tą komendą, używałem tego kodu:
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.