diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index b78beeed815..78c99f47903 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -85,3 +85,17 @@ SUBSYSTEM_DEF(weather) ///Returns an active storm by its type /datum/controller/subsystem/weather/proc/get_weather_by_type(type) return locate(type) in processing + +/** + * Calls end() on all current weather effects that are currently processing in the weather subsystem. + */ +/client/proc/stop_weather() + set category = "Debug" + set name = "Stop All Active Weather" + + log_admin("[key_name(src)] stopped all currently active weather.") + message_admins("[key_name_admin(src)] stopped all currently active weather.") + for(var/datum/weather/current_weather as anything in SSweather.processing) + if(current_weather in SSweather.processing) + current_weather.end() + BLACKBOX_LOG_ADMIN_VERB("Stop All Active Weather") diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index d21bca74850..2268cc09573 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -258,7 +258,7 @@ GLOBAL_PROTECT(admin_verbs_debug) /client/proc/validate_puzzgrids, /client/proc/GeneratePipeSpritesheet, /client/proc/view_runtimes, - + /client/proc/stop_weather, /client/proc/reload_interactions, /*NOVA EDIT ADDITION*/ /client/proc/test_area_spawner, /*AUTOMAPPER - NOVA EDIT ADDITION*/ /client/proc/toggle_liquid_debug, /*NOVA EDIT ADDITION*/