refactor: monogame 2D camera now use engine events
This commit is contained in:
@@ -7,9 +7,9 @@ namespace Engine.Integration.MonoGame;
|
||||
|
||||
public class MonoGameCamera2D : BehaviourBase, ICamera2D, IFirstFrameUpdate, IPreDraw
|
||||
{
|
||||
public event MatrixTransformChangedArguments? OnMatrixTransformChanged = null;
|
||||
public event ViewportChangedArguments? OnViewportChanged = null;
|
||||
public event ZoomChangedArguments? OnZoomChanged = null;
|
||||
public Event<MonoGameCamera2D> OnMatrixTransformChanged { get; } = new();
|
||||
public Event<MonoGameCamera2D> OnViewportChanged { get; } = new();
|
||||
public Event<MonoGameCamera2D> OnZoomChanged { get; } = new();
|
||||
|
||||
private Matrix _matrixTransform = Matrix.Identity;
|
||||
|
||||
@@ -28,7 +28,7 @@ public class MonoGameCamera2D : BehaviourBase, ICamera2D, IFirstFrameUpdate, IPr
|
||||
return;
|
||||
|
||||
_matrixTransform = value;
|
||||
OnMatrixTransformChanged?.Invoke(this);
|
||||
OnMatrixTransformChanged.Invoke(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ public class MonoGameCamera2D : BehaviourBase, ICamera2D, IFirstFrameUpdate, IPr
|
||||
return;
|
||||
|
||||
_viewport = value;
|
||||
OnViewportChanged?.Invoke(this);
|
||||
OnViewportChanged.Invoke(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ public class MonoGameCamera2D : BehaviourBase, ICamera2D, IFirstFrameUpdate, IPr
|
||||
return;
|
||||
|
||||
_zoom = newValue;
|
||||
OnZoomChanged?.Invoke(this);
|
||||
OnZoomChanged.Invoke(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,8 +102,4 @@ public class MonoGameCamera2D : BehaviourBase, ICamera2D, IFirstFrameUpdate, IPr
|
||||
|
||||
protected sealed override void InitializeInternal() => Transform = BehaviourController.GetRequiredBehaviour<ITransform2D>();
|
||||
protected sealed override void FinalizeInternal() => Transform = null!;
|
||||
|
||||
public delegate void MatrixTransformChangedArguments(MonoGameCamera2D sender);
|
||||
public delegate void ViewportChangedArguments(MonoGameCamera2D sender);
|
||||
public delegate void ZoomChangedArguments(MonoGameCamera2D sender);
|
||||
}
|
||||
|
Reference in New Issue
Block a user