Sfoglia il codice sorgente

修复锁魂塔内使魔打一下后来回跑的问题

LAPTOP-OM1V99U2\永远de小亡灵 11 mesi fa
parent
commit
9d17cdb29a

+ 7 - 2
ActionTowerDefense/Assets/Scripts/Demonic.cs

@@ -647,6 +647,11 @@ public class Demonic : MoveCharacter
                         targetCharacter = null;
                         FaceToEneTower();
                     }
+                    //锁魂塔内使魔返回原地过程中扫描到敌人时,停止返回并索敌攻击
+                    if (targetCharacter != null && targetCharacter.gameObject.layer == 8 && targetCharacter.isInSoulTower)
+                    {
+                        ChangeState(CharacterState.Idle);
+                    }
                 }
                 break;
             default:
@@ -732,7 +737,7 @@ public class Demonic : MoveCharacter
                 canMove = true;
                 break;
             case CharacterState.LockSoul:
-                isReturnSoulTower = true;
+                //isReturnSoulTower = true;
                 break;
             default:
                 break;
@@ -809,7 +814,7 @@ public class Demonic : MoveCharacter
                 rb.velocity = Vector3.zero;
                 ani.Play("walk", 0, 0);
                 aniCollider.Play("Walk", 0, 0);
-                FaceToEneTower();
+                //FaceToEneTower();
                 break;
             default:
                 break;

+ 1 - 1
ActionTowerDefense/Assets/Scripts/SoulTower/SoulMaxDistance.cs

@@ -18,7 +18,7 @@ public class SoulMaxDistance : MonoBehaviour
         if (other.gameObject.layer == 7)
         {
             Demonic d = other.GetComponentInParent<Demonic>();
-            if (d.isInSoulTower)
+            if (d && d.isInSoulTower)
             {
                 d.isReturnSoulTower = true;
                 d.ChangeState(CharacterState.LockSoul);