diff --git a/Engine.Core/BehaviourCacher.cs b/Engine.Core/BehaviourCollector.cs similarity index 86% rename from Engine.Core/BehaviourCacher.cs rename to Engine.Core/BehaviourCollector.cs index 57b6ba4..597ba73 100644 --- a/Engine.Core/BehaviourCacher.cs +++ b/Engine.Core/BehaviourCollector.cs @@ -6,13 +6,13 @@ using Syntriax.Engine.Core.Abstract; namespace Syntriax.Engine.Core; -public class BehaviourCacher : IAssignableGameManager, IEnumerable +public class BehaviourCollector : IAssignableGameManager, IEnumerable { public Action? OnUnassigned { get; set; } = null; public Action? OnGameManagerAssigned { get; set; } = null; - public Action, T>? OnCached { get; set; } = null; - public Action, T>? OnUncached { get; set; } = null; + public Action, T>? OnCollected { get; set; } = null; + public Action, T>? OnRemoved { get; set; } = null; private readonly List _behaviours = new(32); @@ -21,8 +21,8 @@ public class BehaviourCacher : IAssignableGameManager, IEnumerable public T this[Index index] => _behaviours[index]; - public BehaviourCacher() { } - public BehaviourCacher(IGameManager gameManager) => Assign(gameManager); + public BehaviourCollector() { } + public BehaviourCollector(IGameManager gameManager) => Assign(gameManager); private void OnGameObjectRegistered(IGameManager manager, IGameObject gameObject) { @@ -42,7 +42,7 @@ public class BehaviourCacher : IAssignableGameManager, IEnumerable return; _behaviours.Add(tBehaviour); - OnCached?.Invoke(this, tBehaviour); + OnCollected?.Invoke(this, tBehaviour); } private void OnBehaviourRemoved(IBehaviourController controller, IBehaviour behaviour) @@ -53,7 +53,7 @@ public class BehaviourCacher : IAssignableGameManager, IEnumerable if (!_behaviours.Remove(tBehaviour)) return; - OnUncached?.Invoke(this, tBehaviour); + OnRemoved?.Invoke(this, tBehaviour); } public bool Assign(IGameManager gameManager) diff --git a/Engine.Physics2D/PhysicsEngine2DCacher.cs b/Engine.Physics2D/PhysicsEngine2DCollector.cs similarity index 77% rename from Engine.Physics2D/PhysicsEngine2DCacher.cs rename to Engine.Physics2D/PhysicsEngine2DCollector.cs index 06d306f..fbab5c7 100644 --- a/Engine.Physics2D/PhysicsEngine2DCacher.cs +++ b/Engine.Physics2D/PhysicsEngine2DCollector.cs @@ -6,7 +6,7 @@ using Syntriax.Engine.Physics2D.Abstract; namespace Syntriax.Engine.Physics2D; -public class PhysicsEngine2DCacher : IPhysicsEngine2D, IAssignableGameManager +public class PhysicsEngine2DCollector : IPhysicsEngine2D, IAssignableGameManager { public Action? OnUnassigned { get; set; } = null; public Action? OnGameManagerAssigned { get; set; } = null; @@ -17,8 +17,8 @@ public class PhysicsEngine2DCacher : IPhysicsEngine2D, IAssignableGameManager protected readonly ICollisionDetector2D collisionDetector = null!; protected readonly ICollisionResolver2D collisionResolver = null!; - protected BehaviourCacher rigidBodyCacher = new(); - protected BehaviourCacher colliderCacher = new(); + protected BehaviourCollector rigidBodyCollector = new(); + protected BehaviourCollector colliderCollector = new(); public int IterationPerStep { get => _iterationPerStep; set => _iterationPerStep = value < 1 ? 1 : value; } @@ -31,23 +31,23 @@ public class PhysicsEngine2DCacher : IPhysicsEngine2D, IAssignableGameManager for (int iterationIndex = 0; iterationIndex < IterationPerStep; iterationIndex++) { // Can Parallel - foreach (var rigidBody in rigidBodyCacher) + foreach (var rigidBody in rigidBodyCollector) StepRigidBody(rigidBody, intervalDeltaTime); // Can Parallel - foreach (var collider in colliderCacher) + foreach (var collider in colliderCollector) collider.Recalculate(); // Can Parallel - for (int x = 0; x < colliderCacher.Behaviours.Count; x++) + for (int x = 0; x < colliderCollector.Behaviours.Count; x++) { - ICollider2D? colliderX = colliderCacher.Behaviours[x]; + ICollider2D? colliderX = colliderCollector.Behaviours[x]; if (!colliderX.IsActive) return; - for (int y = x + 1; y < colliderCacher.Behaviours.Count; y++) + for (int y = x + 1; y < colliderCollector.Behaviours.Count; y++) { - ICollider2D? colliderY = colliderCacher.Behaviours[y]; + ICollider2D? colliderY = colliderCollector.Behaviours[y]; if (!colliderY.IsActive) return; @@ -100,8 +100,8 @@ public class PhysicsEngine2DCacher : IPhysicsEngine2D, IAssignableGameManager if (GameManager is not null) return false; - colliderCacher.Assign(gameManager); - rigidBodyCacher.Assign(gameManager); + colliderCollector.Assign(gameManager); + rigidBodyCollector.Assign(gameManager); GameManager = gameManager; OnGameManagerAssigned?.Invoke(this); @@ -114,35 +114,35 @@ public class PhysicsEngine2DCacher : IPhysicsEngine2D, IAssignableGameManager if (GameManager is null) return false; - colliderCacher.Unassign(); - rigidBodyCacher.Unassign(); + colliderCollector.Unassign(); + rigidBodyCollector.Unassign(); GameManager = null!; OnUnassigned?.Invoke(this); return true; } - public PhysicsEngine2DCacher() + public PhysicsEngine2DCollector() { collisionDetector = new CollisionDetector2D(); collisionResolver = new CollisionResolver2D(); } - public PhysicsEngine2DCacher(IGameManager gameManager) + public PhysicsEngine2DCollector(IGameManager gameManager) { Assign(gameManager); collisionDetector = new CollisionDetector2D(); collisionResolver = new CollisionResolver2D(); } - public PhysicsEngine2DCacher(IGameManager gameManager, ICollisionDetector2D collisionDetector, ICollisionResolver2D collisionResolver) + public PhysicsEngine2DCollector(IGameManager gameManager, ICollisionDetector2D collisionDetector, ICollisionResolver2D collisionResolver) { Assign(gameManager); this.collisionDetector = collisionDetector; this.collisionResolver = collisionResolver; } - public PhysicsEngine2DCacher(ICollisionDetector2D collisionDetector, ICollisionResolver2D collisionResolver) + public PhysicsEngine2DCollector(ICollisionDetector2D collisionDetector, ICollisionResolver2D collisionResolver) { this.collisionDetector = collisionDetector; this.collisionResolver = collisionResolver;