Amend Me
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
using System;
|
||||
|
||||
namespace Syntriax.Engine.Core;
|
||||
|
||||
public abstract class Behaviour : BehaviourBase, IFirstFrameUpdate,
|
||||
@@ -9,8 +7,8 @@ public abstract class Behaviour : BehaviourBase, IFirstFrameUpdate,
|
||||
protected IUniverse Universe => BehaviourController.UniverseObject.Universe;
|
||||
protected IUniverseObject UniverseObject => BehaviourController.UniverseObject;
|
||||
|
||||
private readonly Action<IUniverseObject, IUniverse> cachedEnteredUniverse = null!;
|
||||
private readonly Action<IUniverseObject, IUniverse> cachedExitedUniverse = null!;
|
||||
private readonly Event<IUniverseObject, IUniverseObject.EnteredUniverseArguments>.EventHandler cachedEnteredUniverse = null!;
|
||||
private readonly Event<IUniverseObject, IUniverseObject.ExitedUniverseArguments>.EventHandler cachedExitedUniverse = null!;
|
||||
|
||||
public Behaviour()
|
||||
{
|
||||
@@ -34,7 +32,7 @@ public abstract class Behaviour : BehaviourBase, IFirstFrameUpdate,
|
||||
OnInitialize();
|
||||
|
||||
if (UniverseObject.IsInUniverse)
|
||||
EnteredUniverse(UniverseObject, Universe);
|
||||
EnteredUniverse(UniverseObject, new(Universe));
|
||||
}
|
||||
|
||||
protected virtual void OnFinalize() { }
|
||||
@@ -46,7 +44,7 @@ public abstract class Behaviour : BehaviourBase, IFirstFrameUpdate,
|
||||
OnFinalize();
|
||||
|
||||
if (UniverseObject.IsInUniverse)
|
||||
ExitedUniverse(UniverseObject, Universe);
|
||||
ExitedUniverse(UniverseObject, new(Universe));
|
||||
}
|
||||
|
||||
protected virtual void OnFirstActiveFrame() { }
|
||||
@@ -141,8 +139,8 @@ public abstract class Behaviour : BehaviourBase, IFirstFrameUpdate,
|
||||
}
|
||||
|
||||
protected virtual void OnEnteredUniverse(IUniverse universe) { }
|
||||
protected virtual void EnteredUniverse(IUniverseObject sender, IUniverse universe) => OnEnteredUniverse(universe);
|
||||
protected virtual void EnteredUniverse(IUniverseObject sender, IUniverseObject.EnteredUniverseArguments arguments) => OnEnteredUniverse(arguments.Universe);
|
||||
|
||||
protected virtual void OnExitedUniverse(IUniverse universe) { }
|
||||
protected virtual void ExitedUniverse(IUniverseObject sender, IUniverse universe) => OnExitedUniverse(universe);
|
||||
protected virtual void ExitedUniverse(IUniverseObject sender, IUniverseObject.ExitedUniverseArguments arguments) => OnExitedUniverse(arguments.Universe);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user