refactor: IHierarchyObject Nullable IGameManager to Non-Nullable
Since in a typical use case of these classes they are already in the hierarchy and it bloats the behaviour code with lots of null checks
This commit is contained in:
@@ -17,9 +17,9 @@ public abstract class HierarchyObjectBase : IHierarchyObject
|
||||
private string _name = nameof(HierarchyObjectBase);
|
||||
private bool _initialized = false;
|
||||
private IStateEnable _stateEnable = null!;
|
||||
private IGameManager? _gameManager = null;
|
||||
private IGameManager _gameManager = null!;
|
||||
|
||||
public IGameManager? GameManager => _gameManager;
|
||||
public IGameManager GameManager => _gameManager;
|
||||
|
||||
public bool IsInHierarchy => _gameManager is not null;
|
||||
|
||||
@@ -134,7 +134,7 @@ public abstract class HierarchyObjectBase : IHierarchyObject
|
||||
if (!IsInHierarchy || _gameManager is not IGameManager gameManager)
|
||||
return false;
|
||||
|
||||
_gameManager = null;
|
||||
_gameManager = null!;
|
||||
OnExitingHierarchy(gameManager);
|
||||
OnExitedHierarchy?.Invoke(this, gameManager);
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user