From d40132370ddf374dbfd33049d5125af5b299c631 Mon Sep 17 00:00:00 2001 From: Syntriax Date: Mon, 21 Nov 2022 22:18:47 +0300 Subject: [PATCH] Error Handling --- FactoryBase.cs | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/FactoryBase.cs b/FactoryBase.cs index 984a94c..cc26a2a 100644 --- a/FactoryBase.cs +++ b/FactoryBase.cs @@ -16,12 +16,20 @@ namespace Syntriax.Modules.Factory if (IsInitialized) return; - OnFactoryInitialize(); - IsInitialized = true; - OnInitialized?.Invoke(this); - OnStateChanged?.Invoke(this); + try + { + OnFactoryInitialize(); + + OnInitialized?.Invoke(this); + OnStateChanged?.Invoke(this); + } + catch (System.Exception e) + { + Debug.LogError(e); + Reset(); + } } public void Reset() @@ -29,12 +37,19 @@ namespace Syntriax.Modules.Factory if (!IsInitialized) return; - OnFactoryReset(); - IsInitialized = false; - OnReset?.Invoke(this); - OnStateChanged?.Invoke(this); + try + { + OnFactoryReset(); + + OnReset?.Invoke(this); + OnStateChanged?.Invoke(this); + } + catch (System.Exception e) + { + Debug.LogError(e); + } } ///