←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Zegarek Dla każdego

Zablokowany

  • +
  • -
dasiek - zdjęcie dasiek 03.12.2010

Siemasz. Otóż mam problem. Napisałem "zegarek" i dla 1 gracza wszystko działa ale jak jest więcej osób to nie liczy co sekunde tylko odejmuje kilka i za szybko liczy. Chciałbym Zrobić tak, żeby po iluśtam sekundach Robi się funkcja

kod
public czas(id)
{
set_hudmessage ( 200, 100, 0, -1.0, 0.0, 0, 6.0, 1.0, 0.1, 0.2, 4 )
show_hudmessage(id, "Masz %d sekund zycia", i);
i=i-1;
spr(id);
}

public spr(id)
{
if(i>=0)
{
set_task(1.0,"czas",id, _, _, "a",1);
}
else kill(id);
}


jak można to łatwej zrobić napiszcie będe wdzięczny :)
Użytkownik CheQ edytował ten post 03.12.2010 18:06
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 03.12.2010

przy spawnie task z flaga b ustawiony na 1sekunde , kasowany przy deadzie i globalna tablica przy deadzie przypisujesz do indexu o id gracza 0 a normalnie zwiekszasz o 1 i masz git :D
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 03.12.2010

pomożesz mi to napisać? Tak do tego jak to ma wyglądać bo to co napisałeś mówi mi mniej niż więcej :P
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 03.12.2010

new czas[33]

public plugin_init() RegisterHam(Ham_Spawn,"player","spwn")

public spwn(id){

           if(task_exist(id+123){

                        remove_task(id+123)

                        czas[id]=0 

            }

            set_task(1.0,"licz",id+123,_,_,"b")

}

public licz(id){

           id-=123

          czas[id]++;

          if(is_user_alive(id)) //tutaj wyswietlanie

}
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 04.12.2010

objaśnisz co i jak? : *

bom zielony :(

jeden edit.
Jakbyś mógł to podaj to na moim przykładzie że od 30 do 0 oblicza.

Dodano 06 grudzień 2010 - 15:28:
Podbijam
Użytkownik CheQ edytował ten post 04.12.2010 10:40
Odpowiedz
Zablokowany