summaryrefslogtreecommitdiff
path: root/marching/Assets/Scripts/Physics/PhysicsManager.cs
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2023-05-10 09:35:29 +0800
committerchai <215380520@qq.com>2023-05-10 09:35:29 +0800
commitcaeba98e0385edebb344e6dbd024c01801a75fc4 (patch)
tree989ad28501cee2ee47a14214c20bc7a8b9c8a71b /marching/Assets/Scripts/Physics/PhysicsManager.cs
parentfc2cfdad0d3cfb3844681855c1c45d9415f5ee8e (diff)
*misc
Diffstat (limited to 'marching/Assets/Scripts/Physics/PhysicsManager.cs')
-rw-r--r--marching/Assets/Scripts/Physics/PhysicsManager.cs81
1 files changed, 7 insertions, 74 deletions
diff --git a/marching/Assets/Scripts/Physics/PhysicsManager.cs b/marching/Assets/Scripts/Physics/PhysicsManager.cs
index bbba030..164d62b 100644
--- a/marching/Assets/Scripts/Physics/PhysicsManager.cs
+++ b/marching/Assets/Scripts/Physics/PhysicsManager.cs
@@ -13,87 +13,14 @@ public enum ColliderType
public partial class PhysicsManager : Singleton<PhysicsManager>
{
- #region Quadtrees
- private PhysicsQuadtree m_CollisionQuadtree;
- private PhysicsQuadtree m_HurtboxQuadtree;
- #endregion
-
- public Vector4 collisionQuadtreeRange
- {
- set
- {
- m_CollisionQuadtree.quadtreeRange = value;
- }
- }
-
- public Vector4 hurtboxQuadtreeRange
- {
- set
- {
- m_HurtboxQuadtree.quadtreeRange = value;
- }
- }
public List<IQuadTreeObject> sharedRetriveResults => m_SharedRetriveResults;
private List<IQuadTreeObject> m_SharedRetriveResults = new List<IQuadTreeObject>();
- public PhysicsManager()
+ public PhysicsManager()
{
m_CollisionQuadtree = new PhysicsQuadtree(new Vector4(0, 0, 30, 30));
m_HurtboxQuadtree = new PhysicsQuadtree(new Vector4(0, 0, 30, 30));
- }
-
- public void AddCollider(IQuadTreeObject collider)
- {
- m_CollisionQuadtree.AddObject(collider);
- }
-
- public void RemoveCollider(IQuadTreeObject collider)
- {
- m_CollisionQuadtree.RemoveObject(collider);
- }
-
- public void AddHurtboxes(IQuadTreeObject hurtbox)
- {
- m_HurtboxQuadtree.AddObject(hurtbox);
- }
-
- public void RemoveHurtbox(IQuadTreeObject hurtbox)
- {
- m_HurtboxQuadtree.RemoveObject(hurtbox);
- }
-
- public void Update()
- {
- m_CollisionQuadtree.UpdateQuadtree();
- m_HurtboxQuadtree.UpdateQuadtree();
- }
-
- public bool RetriveColliders(ref List<IQuadTreeObject> returnObjs, IQuadTreeObject obj)
- {
- return m_CollisionQuadtree.Retrive(ref returnObjs, obj);
- }
-
- public bool RetriveColliders(ref List<IQuadTreeObject> returnObjs, Vector4 bound)
- {
- return m_CollisionQuadtree.Retrive(ref returnObjs, bound);
- }
-
- public bool RetriveHurtboxes(ref List<IQuadTreeObject> returnObjs, Vector4 bound)
- {
- return m_HurtboxQuadtree.Retrive(ref returnObjs, bound);
- }
-
- public bool RetriveColliders(Vector4 bound)
- {
- m_SharedRetriveResults.Clear();
- return m_CollisionQuadtree.Retrive(ref m_SharedRetriveResults, bound);
- }
-
- public bool RetriveHurtboxes(Vector4 bound)
- {
- m_SharedRetriveResults.Clear();
- return m_HurtboxQuadtree.Retrive(ref m_SharedRetriveResults, bound);
}
public System.Func<Vector4, bool> GetRetriverByType(ColliderType type)
@@ -106,6 +33,12 @@ public partial class PhysicsManager : Singleton<PhysicsManager>
return null;
}
+ public void Update()
+ {
+ m_CollisionQuadtree.UpdateQuadtree();
+ m_HurtboxQuadtree.UpdateQuadtree();
+ }
+
public void Debug()
{
m_CollisionQuadtree.Debug();