Эх сурвалжийг харах

隐身放迷雾时扣蓝,减速

LAPTOP-OM1V99U2\永远de小亡灵 1 жил өмнө
parent
commit
e3c8c3a0bc

+ 3 - 0
ActionTowerDefense/Assets/Resources/Prefab/Transfiguration/Trans_Invisible.prefab

@@ -219,6 +219,8 @@ MonoBehaviour:
   lastSmokePos: {x: 0, y: 0, z: 0}
   time: 0
   stayTime: 5
+  normalSpeed: 0
+  kMp: 1
 --- !u!114 &2437299196472462353
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -323,6 +325,7 @@ MonoBehaviour:
   playerMesh: {fileID: 0}
   playerMats: []
   playerOut: []
+  isInvisible: 0
   id: 0
   costMp: 1
   totalSummonTime: 0.5

+ 1 - 1
ActionTowerDefense/Assets/Scripts/PlayerController.cs

@@ -103,7 +103,7 @@ public class PlayerController : MoveCharacter
     private float addMp = 10;
     public Collider soulCollector;
 
-    private bool isTransfiguration = false; //ÒѱäÉí
+    public bool isTransfiguration = false; //ÒѱäÉí
 
     public bool isinputJ;
     public bool isinputK;

+ 18 - 2
ActionTowerDefense/Assets/Scripts/Spirits/Spirits_Invisible.cs

@@ -24,6 +24,9 @@ public class Spirits_Invisible : MonoBehaviour
     [HideInInspector]
     public float time;
     public float stayTime;
+    [HideInInspector]
+    public float normalSpeed;
+    public float kMp;
 
     private void Start()
     {
@@ -34,7 +37,8 @@ public class Spirits_Invisible : MonoBehaviour
         playerController.isInvisible = true;
         playerController.mp += addMp;
         playerController.canfly = true;
-        for(int i = 0;i < playerController.beTargetCharacter.Count; i++)
+        normalSpeed = playerController.moveSpeed;
+        for (int i = 0;i < playerController.beTargetCharacter.Count; i++)
         {
             playerController.beTargetCharacter[i].targetCharacter = null;
         }
@@ -58,7 +62,9 @@ public class Spirits_Invisible : MonoBehaviour
         }
         if (playerController.isClickBtnSouth)
         {
+
             time = 0;
+            playerController.moveSpeed = normalSpeed/2;
         }
         if (playerController.isinputK)
         {
@@ -67,11 +73,20 @@ public class Spirits_Invisible : MonoBehaviour
             {
                 AttackK();
             }
-            
+
+        }
+        else
+        {
+            playerController.moveSpeed = normalSpeed;
+        }
+        if (!playerController.isTransfiguration)
+        {
+            BackToPlayer();
         }
     }
     public void BackToPlayer()
     {
+
     }
     void AttackJ()
     {
@@ -98,6 +113,7 @@ public class Spirits_Invisible : MonoBehaviour
     }
     void AttackK()
     {
+        playerController.mp -= kMp;
         GameObject smoke = Instantiate(smokeEffect);
         smoke.transform.position = transform.position;
         smoke.GetComponent<SmokeDestroy>().stayTime = stayTime;