RegisterHam(Ham_Killed, "player", "Death", 1);
register_event("DeathMsg", "Death", "ade");
Z tego co zauważyłem register_event nie działa jak sam sie zabijesz... potwierdzi ktoś ?
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.
|
Napisano 21.08.2010 02:21
RegisterHam(Ham_Killed, "player", "Death", 1);
register_event("DeathMsg", "Death", "ade");
Napisano 21.08.2010 13:25
Death(ofiara){ new zabojca = get_user_attacker(id); // nie zawsze się zgadza :/ }
Death(){ new ofiara = read_data(2); new zabojca = read_data(1); // zasze się zgadza }jeśli gracz zginie bez globalnej informacji (np. user_silentkill() czy wybuch bomby) to śmierć gracza nie jest odnotowywana; nie jest także łapana w przypadku message_begin(MSG_ALL, get_user_msgid("DeathMsg")) -> trzeba użyć emessage_*
Napisano 21.08.2010 14:34
Napisano 21.08.2010 19:25
RegisterHam(Ham_Killed, "player", "Death1",1);
.
.
.
Death1(id){
if(!get_user_attacker(id)){
return PLUGIN_CONTINUE;
}else{
.
.
.
}
}
register_event("DeathMsg", "Death", "ade");
.
.
.
public Death()
{
new id = read_data(2);
new attacker = read_data(1);
if(!is_user_alive(attacker) || !is_user_connected(attacker))
return PLUGIN_CONTINUE;
new weapon = get_user_weapon(attacker);
new zdrowie = get_user_health(attacker);
if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
{
new nowe_doswiadczenie = 0;
nowe_doswiadczenie += doswiadczenia_za_zabojstwo;
if(klasa_gracza[id] == Rambo && klasa_gracza[attacker] != Rambo)
nowe_doswiadczenie += doswiadczenia_za_zabojstwo*2;
if(poziom_gracza[id] > poziom_gracza[attacker])
nowe_doswiadczenie += poziom_gracza[id] - poziom_gracza[attacker];
if(klasa_gracza[attacker] == Rambo || informacje_przedmiotu_gracza[attacker][0] == 15 && maxClip[weapon] != -1)
{
new nowe_zdrowie = (zdrowie+20<maksymalne_zdrowie_gracza[attacker])? zdrowie+20: maksymalne_zdrowie_gracza[attacker];
set_user_clip(attacker, maxClip[weapon]);
set_user_health(attacker, nowe_zdrowie);
}
#if defined BOTY
if(is_user_bot2(attacker) && random(9) == 0)
WyrzucPrzedmiot(id);
#endif
if(!informacje_przedmiotu_gracza[attacker][0])
DajPrzedmiot(attacker, random_num(1, sizeof nazwy_przedmiotow-1));
if(informacje_przedmiotu_gracza[attacker][0] == 14)
{
new nowe_zdrowie = (zdrowie+50<maksymalne_zdrowie_gracza[attacker])? zdrowie+50: maksymalne_zdrowie_gracza[attacker];
set_user_health(attacker, nowe_zdrowie);
}
set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_doswiadczenie);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
}
SprawdzPoziom(attacker);
if(informacje_przedmiotu_gracza[id][0] == 7 && random_num(1, informacje_przedmiotu_gracza[id][1]) == 1)
set_task(0.1, "Wskrzes", id+ZADANIE_WSKRZES);
return PLUGIN_CONTINUE;
}
Użytkownik sokojoko edytował ten post 21.08.2010 22:11
0 użytkowników, 0 gości, 0 anonimowych