From ed25a025cf229fadcbb369cdf9045cbac7d76832 Mon Sep 17 00:00:00 2001 From: Sachin <31343375+Cruze03@users.noreply.github.com> Date: Sat, 30 Dec 2023 03:51:47 +0530 Subject: [PATCH] 0.3 version Fixes map not being changed --- WorkshopDefaultMap.cs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/WorkshopDefaultMap.cs b/WorkshopDefaultMap.cs index c96e1aa..ab76a1b 100644 --- a/WorkshopDefaultMap.cs +++ b/WorkshopDefaultMap.cs @@ -7,7 +7,7 @@ namespace WorkshopDefaultMap; public class WorkshopDefaultMap : BasePlugin { public override string ModuleName => "Workshop Collection Default Map"; - public override string ModuleVersion => "0.2"; + public override string ModuleVersion => "0.3"; public override string ModuleAuthor => "Cruze"; public override string ModuleDescription => "Sets default map after server restart"; @@ -17,6 +17,8 @@ public class WorkshopDefaultMap : BasePlugin private bool g_bChangeMap = true; + public CounterStrikeSharp.API.Modules.Timers.Timer? g_Timer = null; + public override void Load(bool hotReload) { base.Load(hotReload); @@ -33,21 +35,29 @@ public override void Load(bool hotReload) Log($"MapName found: {MapName}"); RegisterListener(OnMapStart); + + if(hotReload) + { + OnMapStart(Server.MapName); + } } private void OnMapStart(string mapName) { if (!g_bChangeMap || string.IsNullOrEmpty(MapName)) return; - AddTimer(7.0f, () => ChangeMap(), TimerFlags.STOP_ON_MAPCHANGE); + if(g_Timer != null) + g_Timer.Kill(); + + g_Timer = AddTimer(7.0f, () => ChangeMap()); Log($"Changing map to {MapName}..."); } private void ChangeMap() { + g_Timer = null; if (!g_bChangeMap || string.IsNullOrEmpty(MapName)) { - LogError($"[ChangeMap] Error. {g_bChangeMap} & \"{MapName}\""); return; }