Сообщение виводит только когда игрок входит на сервер последующи смены карты сообщение не будит
#pragma semicolon 1 #include <sourcemod> ConVar CvarTimMes; bool g_bRoundOve; public OnPluginStart() { CvarTimMes = CreateConVar("sm_time_messeg", "35", "", FCVAR_NONE); HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy); HookEvent("round_end", Event_RoundEnd, EventHookMode_PostNoCopy); } public Event_RoundStart(Event event, const char[] name, bool dontBroadcast) { g_bRoundOve = false; } public Event_RoundEnd(Event event, const char[] name, bool dontBroadcast) { g_bRoundOve = true; } public OnClientPostAdminCheck(client) { if(!IsValidNow() && IsFakeClient(client)) { return; } float CvarTimeMes = CvarTimMes.FloatValue; if(CvarTimeMes) { CreateTimer(CvarTimeMes, TimeMesseg, client); } } bool IsValidNow() { if(g_bRoundOve) { return false; } return true; } public Action:TimeMesseg(Handle timer, any client) { if(client && IsClientInGame(client) && GetClientTeam(client) == 2) { PrintToChat(client, "сообщение"); } }
Смысла нету это ставить, сообщение и не нужно на следующем раунде. Alex выше написал, которое будет при спавне игрока, хотя квар отличная идея. И синтаксис в таком случае, лучше поменнять.
Сообщение отредактировал valedar: 14 Август 2022 - 19:14