Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-02-12, 18:46


_marianek_







Wiek: 28
Na forum: 5157 dni
Posty: 47
Nick w MP: MKey

Piwa: 140

Respekt: 50

Ostrzeżeń: 20%
Cze??, a wi?c nie wiem jak doda? freez jak gracz wybierze skin... A wi?c mam gRandomPlayerSpawns i kilka ustawionych spawn na mapie a teraz jak doda? do tego Freeza tak ?eby trwa? 5 sek ? za pomoc piwo.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 18:58


WiX







Wiek: 28
Na forum: 5241 dni
Posty: 48
Nick w MP: thedamiano

Piwa: 21

Respekt: 64

Najlepiej przez timer.
W OnPlayerSpawn
Kod:


TogglePlayerControllable(playerid,0);


Potem tworzysz timer, a wi?c na g?rze mapy/skryptu
Kod:


new freezetimer;


Potem gdzie? na dole mapy/skryptu
Kod:


forward freezetimer(playerid);
public freezetimer(playerid)
{
TogglePlayerControllable(playerid,1);
return 1;
}

I na ko?cu w OnPlayerSpawn dopisujesz najlepiej dla og?lnego ?adu pod TogglePlayerControllable
Kod:


freezetimer= SetTimer("freezetimer", 5000, false);


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 19:05


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

Spos?b WiX'a jest dobry, ale mog? poleci? lepszy.

Na g?rze:
Kod:

new UnfreezeTime[MAX_PLAYERS];


W OnPlayerSpawn:
Kod:

TogglePlayerControllable(playerid, false);
UnfreezeTime[playerid] = gettime()+5; //To 5 to czas po jakim ma zosta? odmro?ony.


I w OnPlayerUpdate:
Kod:

if(gettime() >= UnfreezeTime[playerid])
TogglePlayerControllable(playerid, true);


Mo?e ten ci?gle wykonuj?cy si? warunek nie nale?y do najlepszych, ale z tego co wspomina? Y_Less na forum SA-MP'a, spos?b dzia?ania timer?w jest gorszy.

Pozdrawiam

@EDIT
_FasteR_, chcesz niszczy? timer w funkcji, kt?r? wywo?a tylko raz (argument nr. 3 w SetTimer ustawiony na false)?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:14


_marianek_







Wiek: 28
Na forum: 5157 dni
Posty: 47
Nick w MP: MKey

Piwa: 140

Respekt: 50

Ostrzeżeń: 20%
Quis,

Zrobi?em tak jak napisa?e? ale nie mog? chodzi? spaw dzia?a tak jak mia? dzia?a? 5 sek ale chodzi? nie mog? to wygl?da tak jakby mnie przerywa?o i nie mog? kucn?? bo od razu wstaje ;/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:18


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

_marianek_ napisał/a:

jak doda? freez jak gracz wybierze skin

"freez" czyli zamro?enie gracza. Przerywa, bo tak wygl?da zamro?enie w SA-MPie. Chyba to w?a?nie chcia?e??

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:24


_marianek_







Wiek: 28
Na forum: 5157 dni
Posty: 47
Nick w MP: MKey

Piwa: 140

Respekt: 50

Ostrzeżeń: 20%
tak kt?ry trwa 5 sek a nie ?e ca?y czas jest.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:25


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

Poka? gdzie wklei?e? ten kod:
Kod:

if(gettime() >= UnfreezeTime[playerid])
TogglePlayerControllable(playerid, true);


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:31


_marianek_







Wiek: 28
Na forum: 5157 dni
Posty: 47
Nick w MP: MKey

Piwa: 140

Respekt: 50

Ostrzeżeń: 20%
Kod:

public OnPlayerUpdate(playerid)
{
if(gettime() >= UnfreezeTime[playerid])
TogglePlayerControllable(playerid, true);
return 1;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 20:52


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

Sprawdzi?em ten kod dla pewno?ci i u mnie dzia?a bezproblemowo.
Na pewno wszystko dobrze wklei?e??


Lub spr?buj da? tak w OnPlayerUpdate:
Kod:

if(gettime() >= UnfreezeTime[playerid] && UnfreezeTime[playerid] != 0){
TogglePlayerControllable(playerid, true);
UnfreezeTime[playerid] = 0;
}


@EDIT
Albo i nie, m?j b??d, wybacz. U?yj kodu powy?ej i b?dzie dobrze.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-02-12, 21:10


Combacior







Wiek: 29
Na forum: 5795 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
"Quis" napisał/a:

w OnPlayerUpdate


Jeste? pewien, ?e lepiej u?ywa? co 40 ms OnPlayerUpdate ni? zwyk?ego timera dla gracza wykonany tylko jeden raz? Po co ma sprawdza? czas gracza co 40 ms, skoro wystarczy doda? zwyk?y timer, kt?ry odmrozi gracza po 5 sek?

Postaw piwo autorowi tego posta
 

 
Tagi: spawn...
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku