Problem w tym że zrobiłeś jeden mały błąd:
public eDeath(id)
{
//new attacker = read_data( 1 );
if(PlayerXP[id] >= LEVELS[PlayerLevel[id]])
PlayerLevel[id] += 1;
SkillPoints[id] += 1;
ColorChat(id, GREEN,"[%s]^x01: Gratuluje, wbiles poziom ! Twoj Poziom to :^x03 %d^x01, posiadasz :^x03 %d^x01 punktow skilli.",prefix,PlayerLevel[id],SkillPoints[id]);
ColorChat(id, GREEN,"[%s]^x01: Punkty Skilli Mozesz Wykorzystac Wpisujac w say ^x03/xp^x01",prefix);
}
jak masz ten kod to po if jest zawsze wykonywana jedna instrukcja czyli w tym wypadku jak warunek jest spełniony do zwiększasz komuś "PlayerLevel[id] += 1;" i dodajesz pkt +wyświetlasz info, jak warunek jest nie spełniony to dodajesz pkt i wyświetlasz info(mam nadzieję że już widzisz na czym polega błąd).
Żeby działało musisz zrobić tak:
public eDeath(id)
{
//new attacker = read_data( 1 );
if(PlayerXP[id] >= LEVELS[PlayerLevel[id]]){
PlayerLevel[id] += 1;
SkillPoints[id] += 1;
ColorChat(id, GREEN,"[%s]^x01: Gratuluje, wbiles poziom ! Twoj Poziom to :^x03 %d^x01, posiadasz :^x03 %d^x01 punktow skilli.",prefix,PlayerLevel[id],SkillPoints[id]);
ColorChat(id, GREEN,"[%s]^x01: Punkty Skilli Mozesz Wykorzystac Wpisujac w say ^x03/xp^x01",prefix);
}
}
lub tak:
public eDeath(id)
{
//new attacker = read_data( 1 );
if(PlayerXP[id] < LEVELS[PlayerLevel[id]])
return PLUGIN_CONTINUE
PlayerLevel[id] += 1;
SkillPoints[id] += 1;
ColorChat(id, GREEN,"[%s]^x01: Gratuluje, wbiles poziom ! Twoj Poziom to :^x03 %d^x01, posiadasz :^x03 %d^x01 punktow skilli.",prefix,PlayerLevel[id],SkillPoints[id]);
ColorChat(id, GREEN,"[%s]^x01: Punkty Skilli Mozesz Wykorzystac Wpisujac w say ^x03/xp^x01",prefix);
}
A co do 2 po śmierci zmieniasz userowi grawitacje na standardową? Bo może tak ciągle odejmujesz czy coś w tym stylu.
Najlepiej sprawdź ile razy Ci się wywołuje i na jaki poziom ustawia.
if(!is_user_alive(id) && get_user_gravity(id)!=1){
return HAM_IGNORED;
}
Ten warunek możesz jeszcze zmienić na taki, wtedy gdy grawitacja jest różna od standardowej to po prostu już komuś nie zmieni, bo znaczy to że była już zmieniana.
Edited by Aik, 02.11.2010 22:38.