←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Funkcja wait

  • +
  • -
Acetone - zdjęcie Acetone 22.04.2013

Siema, czy istnieje funkcja WAIT(czas) ?
Tak aby było coś takiego:

public func_adminunpredator(id,level,cid)
{
set_cvar_num("mp_autoteambalance",0)
wait
set_cvar_num("mp_roundtime",9)
set_cvar_num("mp_startmoney",16000)
set_cvar_num("sv_restart",1)
set_cvar_float("mp_buytime",0.2)
set_cvar_num("mp_freezetime",0)
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 22.04.2013

Może to Cię zainteresuje? http://amxx.pl/topic...unkcje-czasowe/
Odpowiedz

GT Team - zdjęcie GT Team 22.04.2013

Nie, temat był już wałkowany nawet przezemnie wait(Float:czas) nie jest możliwy do zrobienia, gdyż stary silnik half lifa nie pozwala na takie bajery.
Odpowiedz

Gość_21977_* 24.04.2013

Zamiast kodu

// kod A
wait(10.0);
// kod B

możesz użyć, jak wspomniał speedkill , funkcji set_task:

// kod A
set_task(10.0, "B");

gdzie po wybranym czasie wywoła się reszta kodu, w tym wypadku //B

public B(){
	// kod B
}

Załączam też stock dla funkcji wait, która jednak zwiesi serwer na czas określony w jej parametrze,

innymi słowy, kod za wait() wykona się po określonym czasie, jednak kosztem chwilowej zwiechy serwera:

/*
	wait(ticks)
	Hangs server for ticks miliseconds
*/
stock wait(ticks){
	for(
		new tick=-2148;
		ticks;
	){
		if(
			tick!=(
				tick=tickcount()
			)
		){
			--ticks;
		}
	}
}

Jeśli ma to się wykonać np. z parametrem dla ok. 20ms po skończonej rundzie, to możesz śmiało użyć.

W przeciwnym wypadku zdecydowanie odradzam.

Odpowiedz