From 35f2e468715e12d93cb88f2258c2d0ae82d1d189 Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 6 Aug 2021 09:31:08 +0800 Subject: *collision --- Assets/Scripts/Unit/Component/UnitAnimation.cs | 1 - Assets/Scripts/Unit/Component/UnitCollider.cs | 36 ++++++++++++++------------ 2 files changed, 19 insertions(+), 18 deletions(-) (limited to 'Assets/Scripts/Unit/Component') diff --git a/Assets/Scripts/Unit/Component/UnitAnimation.cs b/Assets/Scripts/Unit/Component/UnitAnimation.cs index 8a8b79a6..e1bca484 100644 --- a/Assets/Scripts/Unit/Component/UnitAnimation.cs +++ b/Assets/Scripts/Unit/Component/UnitAnimation.cs @@ -164,7 +164,6 @@ public class AnimatorLayerInfo yield return null; } } - } // 控制动画播放、执行动作timeline(包括执行事件和碰撞盒) diff --git a/Assets/Scripts/Unit/Component/UnitCollider.cs b/Assets/Scripts/Unit/Component/UnitCollider.cs index 57585ba2..3d6bca70 100644 --- a/Assets/Scripts/Unit/Component/UnitCollider.cs +++ b/Assets/Scripts/Unit/Component/UnitCollider.cs @@ -2,29 +2,14 @@ using System.Collections.Generic; using UnityEngine; -public class ColliderRegistry : Singleton -{ - public List colliders = new List(); - - public void AddCollider(UnitCollider collider) - { - if (!colliders.Contains(collider)) - colliders.Add(collider); - } - - public void RemoveCollider(UnitCollider collider) - { - if (colliders.Contains(collider)) - colliders.Remove(collider); - } -} - // 角色当前的碰撞盒 [DisallowMultipleComponent] public class UnitCollider : UnitComponent { public bool showGizmos; + private Dictionary> hitMask = new Dictionary>(); + public override void Awake() { base.Awake(); @@ -56,6 +41,23 @@ public class UnitCollider : UnitComponent return infos; } + // 动作切换,重置collider mask + public void OnAnimationChange() + { + hitMask.Clear(); + + } + + public void RecordCollision() + { + + } + + public bool CanCollide() + { + return true; + } + #if UNITY_EDITOR public void OnDrawGizmos() -- cgit v1.1-26-g67d0