←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CS:S
Pobranie czasu rundy i ilosci graczy na se...

Zablokowany

  • +
  • -
Linux' - zdjęcie Linux' 24.12.2014

Jak mogę pobrać czas rundy i aktualną ilość graczy na serwerze?

 

Np mam taki kod

if(get_playersnum() >= 20 && halflife_time()-czas >= 30)
{
	czas = floatround(halflife_time());
	// funkcja
}

funkcja wykonuje się po 30 sekundach od rozpoczecia rundy, jak to przerobic na sourcemoda?

Odpowiedz

  • +
  • -
MAGNET - zdjęcie MAGNET 24.12.2014

for(new i=0;i<40;i++)
{
if(IsClientInGame(i)) zmienna++
}
Odpowiedz

  • +
  • -
Linux' - zdjęcie Linux' 24.12.2014

for(new i=0;i<40;i++)
{
if(IsClientInGame(i)) zmienna++
}

 

Magnet chyba tematy ci się pomylily :P. Przecież to nie odpowiada temu co wysłałem w pierwszym poście. :crazy:

 

 

@@Magnet

 

Myślalem o pętli ale powiedz mi jak to się ma do kodu wyciągnietego z amx_ip

{ 
	new ipek[22], imie[32];
	new ilee = 0;
	new Players[32], ile;
	get_players(Players, ile);
	PrintToConsole(client, "IP graczy grajacych na serwerze:");
	for(new i=0; i < ile; i++)
	{
		GetClientIP(Players[i], ipek, 21, 1);
		GetClientName(Players[i], imie, 31);
		PrintToConsole(client, "%d) %s - %s", (i+1), imie, ipek);
		ilee = i+1;
	}

	PrintToConsole(client, "Wszystkich graczy: %d", ilee);
	return Plugin_Continue;
}

get_players(Players, ile);

Odpowiedz

  • +
  • -
MAGNET - zdjęcie MAGNET 24.12.2014


Przecież to nie odpowiada temu co wysłałem w pierwszym poście :&.

 

Co do pobrania czasu rundy - nie wiem. Na szybko tylko pomyślałem o sposobie pobrania liczby graczy pętlą 0dj.gif

Odpowiedz

  • +
  • -
MAGNET - zdjęcie MAGNET 08.01.2015

Nie możesz po freezetimie ustawic taska,który będzie odliczal ile czasu minęło?
Odpowiedz

  • +
  • -
Linux' - zdjęcie Linux' 08.01.2015

Nie możesz po freezetimie ustawic taska,który będzie odliczal ile czasu minęło?

 

Nie bo takie rozwiązanie problemu mnie nie satysfakcjonuje :). Juz sobie poradziłem, można zamknąć.

for(new client = 1, max = GetMaxClients(); client <= max; ++ client)
{
	if(IsClientInGame(client) && IsPlayerAlive(client))
	{
		if(client >= 20 && GetGameTime()-czas1[client] >= 30)
		{
			czas1[client] = RoundFloat(GetGameTime());
			// funkcja
		}
	}
}
Odpowiedz

  • +
  • -
radim - zdjęcie radim 08.01.2015

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany