Cześć! Chciałbym, aby ktoś mi podał funkcję, która będzie sprawdzać czy czas rundy wynosi 0:00 (lub dowolnie inny czas), jeśli tak to ma coś tam wykonać.
Pozdro
Refresh
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
[ROZWIĄZANE] Pobieranie czasu rundy
Temat rozp. daniosik, 06.02.2012 18:06
6 odpowiedzi w tym temacie
#1
Napisano 06.02.2012 18:06
#2
Napisano 07.02.2012 00:11
proszę gdy czas osiągnie wartość 00:00 wtedy powinno na say wypisać Czas Rundy == 00:00
#include <amxmodx>
#include <engine>
new GetTime;
public plugin_init()
{
register_plugin("RoundTime==00:00", "1", "[H]ARDBO[T]")
GetTime = get_cvar_pointer("mp_roundtime");
}
public client_PreThink()
{
if(get_pcvar_num(GetTime) == 0)
{
client_print(0, print_chat, "Czas Rundy == 00:00");
return false;
}
return true;
}
#3
Napisano 07.02.2012 00:29
nie ma to jak 100x na sekunde sprawdzać czy aby czasem nie wybila juz nasza sekunda
pozatym mp_roundtime przechowuje chyba czas trwania rundy a nie czas do konca
pozatym mp_roundtime przechowuje chyba czas trwania rundy a nie czas do konca
Manual ponad wszystko, konsola ponad manual :&
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka
GG:6022845 (nie pomagam za free osobom ponizej rangi MoD)
#4
Napisano 07.02.2012 09:22
Niestety hard, ale nie działa.
#5
Napisano 07.02.2012 12:23
by R3X
Half-Life 1 Game Events - AlliedModders Wiki
Wysyłane jest osobno do każdego raz (a nie co sekundę) i nie masz pewności, że to początek rundy.
Musisz użyć set_task(1.0, ...) z flagą "b", na początku zapisywać w zmiennej globalnej czas, coś takiego (nie testowałem)
by diablix
Half-Life 1 Game Events - AlliedModders Wiki
register_event("RoundTime", "eventRoundTime", "b");
public eventRoundTime(id){
}
Wysyłane jest osobno do każdego raz (a nie co sekundę) i nie masz pewności, że to początek rundy.
Musisz użyć set_task(1.0, ...) z flagą "b", na początku zapisywać w zmiennej globalnej czas, coś takiego (nie testowałem)
#define TASKID 146
new gRoundStart;
public plugin_init(){
register_logevent("eventStartRound", 2, "1=Round_Start");
register_logevent("eventEndRound", 2, "1=Round_End");
}
public eventStartRound(){
gRoundStart = get_systime();
set_task(1.0, "eventTimerTick", TASKID, _, _, "b")
}
public eventEndRound(){
if(task_exists( TASKID ))
remove_task(TASKID );
}
public eventTimerTick(){
new iRoundTime = get_systime() - gRoundStart;
//iRoundTime - tyle sekund minęło od początku rundy
}
by diablix
#include <amxmodx>
#define VERSION "0.1"
public plugin_init(){
register_plugin("Czas Rundy", VERSION, "diablix");
register_event("RoundTime", "eventRoundTime", "bc");
}
public eventRoundTime(){
new iTimer = read_data(1), iNum;
new iPlayers[32];
new Float:flCvarTime = (get_cvar_float("mp_roundtime") * 60.0);
set_hudmessage(100, 72, 12, 0.01, 0.16, 0, 0.1, 0.1, 0.1, 0.1, 3);
get_players(iPlayers, iNum);
for(new i = 0 ; i < iNum ; i ++)
ShowSyncHudMsg(i, CreateHudSyncObj(), "Czas do końca rundy: %d", floatround(flCvarTime - iTimer));
}
Użytkownik FetaGreen edytował ten post 07.02.2012 12:24
#6
Napisano 07.02.2012 18:20
Dziękuje FetaGreen za pomoc. Można zamknąć.
#7
Napisano 07.02.2012 22:16
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych