protected override void Unload() { if (DestructionProcessing.processing) { if (DestructionProcessing.originalCaller != null) { UnturnedChat.Say(DestructionProcessing.originalCaller, Translate("wreckingball_reload_abort"), Color.yellow); } Logger.LogWarning(Translate("wreckingball_reload_abort")); DestructionProcessing.Abort(WreckType.Wreck); } if (DestructionProcessing.cleanupProcessingBuildables || DestructionProcessing.cleanupProcessingFiles) { DestructionProcessing.Abort(WreckType.Cleanup); } ElementData = null; Level.onPostLevelLoaded -= _PostLevelLoaded; }
protected override void Load() { Instance = this; Instance.Configuration.Instance.LoadDefaults(); ElementData = new ElementDataManager(); if (Instance.Configuration.Instance.DestructionRate <= 0) { Instance.Configuration.Instance.DestructionRate = 1; Logger.LogWarning("Error: DestructionRate config value must be above 0."); } if (Instance.Configuration.Instance.DestructionsPerInterval < 1) { Instance.Configuration.Instance.DestructionsPerInterval = 1; Logger.LogWarning("Error: DestructionsPerInterval config value must be at or above 1."); } if (Instance.Configuration.Instance.EnableCleanup) { CheckCleanup(); } Instance.Configuration.Save(); debug = Instance.Configuration.Instance.Debug; // Register plugin dependency check. Level.onPostLevelLoaded += _PostLevelLoaded; }