←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Wywoływanie funkcji dla danego gracza po u...

  • +
  • -
Waleq - zdjęcie Waleq 02.02.2012


public god_moc(id)
if(is_user_alive(id && uzyl_god[id]==0)){
new tempname[52];
get_user_name(id, tempname, 52);
client_print(0, print_center, "Gracz %s uzyl mocy niesmiertelnosci (5 sekund)", tempname);
set_user_godmode(id, 1);
uzyl_god[id]=1;
set_task(5.0, "smiertelnosc", _, "id", _, "a" , 1);
}
public smiertelnosc(id){
set_user_godmode(id, 0);
new tempname[52];
get_user_name(id, tempname, 52);
client_print(0, print_center, "Gracz %s nie jest juz niesmiertelny", tempname);
}


Mam taki fragment kodu. Niestety task nie działa (nigdy nie potrafiłem robić tasków). Mam pytanie do was. Jak zrobić, aby po 5 sekundach od aktywacji funkcji god_moc wykonała się funkcja smiertelność?
Odpowiedz

  • +
  • -
Drzanas - zdjęcie Drzanas 02.02.2012

set_task(5.0, "smiertelnosc");
?
Odpowiedz

ogury - zdjęcie ogury 02.02.2012

public god_moc(id)

         if(is_user_alive(id && uzyl_god[id]==0)){

            new tempname[52];

            get_user_name(id, tempname, 52);

            client_print(0, print_center, "Gracz %s uzyl mocy niesmiertelnosci (5 sekund)", tempname);

            set_user_godmode(id, 1);

            uzyl_god[id]=1;

            set_task(5.0, "smiertelnosc");

        }

public smiertelnosc(id){

    set_user_godmode(id, 0);

    new tempname[52];

    get_user_name(id, tempname, 52);

    client_print(0, print_center, "Gracz %s nie jest juz niesmiertelny", tempname);

}


Użytkownik besztan edytował ten post 02.02.2012 14:19
Odpowiedz

  • +
  • -
Waleq - zdjęcie Waleq 03.02.2012

Niestety to też nie działa, bo próbowałem już wcześniej i w ten sposób :)
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 03.02.2012

new test_czas[33]
new uzyl_god[33]

public PUBLIC(id) {
if (is_user_alive(id) && test_czas[id] == 0 && uzyl_god[id] == 0) {
set_user_godmode(id, 1);
uzyl_god = 1
test_czas[id] = floatround(halflife_time())
}
if (is_user_alive(id) && floatround(halflife_time())-test_czas[id] >= 5.0 && uzyl_god[id] == 1) {
set_user_godmode(id, 0);
}
}


W nowej rundzie zeruj obie 2 zmienne, a public musi być często odświeżany, np w CurWeapon, Damage, Prethink najlepiej.

Elo
Odpowiedz