Wywoływanie funkcji dla danego gracza po u...
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ść?
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
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