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

召唤门中出现的英灵可被获取并召唤

SZAND\msx_2 1 жил өмнө
parent
commit
d492e0d71b

+ 3 - 1
ActionTowerDefense/Assets/Resources/Prefab/Player.prefab

@@ -1065,7 +1065,7 @@ MonoBehaviour:
   currentSpirit: -1
   currentSpirit: -1
   hasSpirits: 0
   hasSpirits: 0
   maxCards: 3
   maxCards: 3
-  ownSpirits: 000000000000000000000000
+  ownSpirits: ffffffffffffffffffffffff
 --- !u!1 &3571941039716665622
 --- !u!1 &3571941039716665622
 GameObject:
 GameObject:
   m_ObjectHideFlags: 0
   m_ObjectHideFlags: 0
@@ -1124,6 +1124,8 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: c42213c575288a148b692aad7ab56bab, type: 3}
   m_Script: {fileID: 11500000, guid: c42213c575288a148b692aad7ab56bab, type: 3}
   m_Name: 
   m_Name: 
   m_EditorClassIdentifier: 
   m_EditorClassIdentifier: 
+  rb: {fileID: 0}
+  haveGravity: 1
   trigGroundList: []
   trigGroundList: []
 --- !u!1 &4574901846507359337
 --- !u!1 &4574901846507359337
 GameObject:
 GameObject:

+ 2 - 5
ActionTowerDefense/Assets/Scripts/PlayerController.cs

@@ -607,7 +607,7 @@ public class PlayerController : MoveCharacter
         }
         }
         if (btnTransfiguratePress)
         if (btnTransfiguratePress)
         {
         {
-            if (!isTransfiguration)
+            if (!isTransfiguration && spirits.currentSpirit != Spirits.SpiritType.None)
             {
             {
                 switch (playerId)
                 switch (playerId)
                 {
                 {
@@ -620,10 +620,7 @@ public class PlayerController : MoveCharacter
                     default:
                     default:
                         break;
                         break;
                 }
                 }
-                if (spirits.currentSpirit != Spirits.SpiritType.None)
-                {
-                    Transfiguration((int)spirits.currentSpirit + 3);
-                }
+                Transfiguration((int)spirits.currentSpirit + 3);
             }
             }
             else
             else
             {
             {

+ 2 - 1
ActionTowerDefense/Assets/Scripts/Spirits/Base_Spirits.cs

@@ -89,7 +89,7 @@ public class Base_Spirits : MonoBehaviour
 
 
     private void Update()
     private void Update()
     {
     {
-        if (buttons.activeSelf && id == 0 && SpiritSystem.isXbtnDown1 || id == 1 && SpiritSystem.isXbtnDown2)
+        if (buttons.activeSelf && (id == 0 && SpiritSystem.isXbtnDown1 || id == 1 && SpiritSystem.isXbtnDown2))
         {
         {
             aa += speed * Time.deltaTime;
             aa += speed * Time.deltaTime;
             XHoldEffect(aa);
             XHoldEffect(aa);
@@ -109,6 +109,7 @@ public class Base_Spirits : MonoBehaviour
                         default:
                         default:
                             break;
                             break;
                     }
                     }
+                    pc.isBaseBtnOut = false;
                 }
                 }
                 else
                 else
                 {
                 {

+ 31 - 1
ActionTowerDefense/Assets/Scripts/Spirits/SpiritSystem.cs

@@ -137,9 +137,39 @@ public class SpiritSystem : MonoBehaviour
                 }
                 }
                 player1cards[s.hasSpirits].sprite = newHead;
                 player1cards[s.hasSpirits].sprite = newHead;
                 s.hasSpirits++;
                 s.hasSpirits++;
+                if (s.hasSpirits == 1)
+                {
+                    s.currentSpirit = s.TranSpirit(spirit);
+                }
                 break;
                 break;
             case 1:
             case 1:
-                curCheckSpirit2.SetActive(false);
+                curCheckSpirit2.transform.parent.gameObject.SetActive(false);
+                Spirits ss = PlayersInput.instance[0].GetComponent<Spirits>();
+                ss.ownSpirits[ss.hasSpirits] = ss.TranSpirit(spirit);
+                Sprite newHead2 = NoneHead;
+                switch (spirit)
+                {
+                    case 0:
+                        newHead2 = floatHead;
+                        break;
+                    case 1:
+                        newHead2 = AssassinHead;
+                        break;
+                    case 2:
+                        newHead2 = CookHead;
+                        break;
+                    case 3:
+                        newHead2 = InvisibleHead;
+                        break;
+                    default:
+                        break;
+                }
+                player1cards[ss.hasSpirits].sprite = newHead2;
+                ss.hasSpirits++;
+                if (ss.hasSpirits == 1)
+                {
+                    ss.currentSpirit = ss.TranSpirit(spirit);
+                }
                 break;
                 break;
             default:
             default:
                 break;
                 break;

+ 10 - 7
ActionTowerDefense/Assets/Scripts/Spirits/Spirits_Cook.cs

@@ -148,18 +148,21 @@ public class Spirits_Cook : MonoBehaviour
                     text.text = chuan.ToString();
                     text.text = chuan.ToString();
                 }
                 }
             }
             }
-            //回家卖串
-            
-            else if (state == cookState.back && target.gameObject.layer == 7)
-            {
-                ChangeState(cookState.cook);
-                fEne.ChangeState(CharacterState.Die);
-            }
         }
         }
     }
     }
 
 
     Enemy fEne;
     Enemy fEne;
 
 
+    //回家路上遇到友方直接开烤
+    private void OnTriggerEnter(Collider other)
+    {
+        if(state==cookState.back && other.gameObject.layer == 7)
+        {
+            ChangeState(cookState.cook);
+            fEne.ChangeState(CharacterState.Die);
+        }
+    }
+
     private void ChangeState(cookState cs)
     private void ChangeState(cookState cs)
     {
     {
         switch (cs)
         switch (cs)