Jelajahi Sumber

玩家的召唤硬直

SZAND\msx_2 6 bulan lalu
induk
melakukan
61d12c1e1c

+ 30 - 15
ActionTowerDefense/Assets/Resources/Prefab/MySoldier/Demonic_Giant_Yang.prefab

@@ -105,6 +105,8 @@ MonoBehaviour:
     changeHurt: 0
     repelValue: 0
     canBlowUp: 0
+    floatState:
+      time: 0
     blowUp:
       dir: {x: 0, y: 0, z: 0}
       force: 0
@@ -112,10 +114,10 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
-    armorPenetration:
+    armor:
       rate: 0
     changeDamage:
       rate: 0
@@ -568,6 +570,8 @@ MonoBehaviour:
   extraFallGravity: -14.4
   canMove: 1
   moveSpeed: 2
+  flyHeight: 0
+  flyUpSpeed: 10
   totalBeRepelValue: 100
   beRepelValue: 0
   weakTime: 0
@@ -610,12 +614,10 @@ MonoBehaviour:
   playerID: 0
   id: 0
   costMp: 150
-  totalSummonTime: 0.5
   isBack: 0
-  flyHeight: 0
-  flyUpSpeed: 10
   baseSortingOrder: 2000
   runSpeed: 0
+  summonTime: 1
   isReturnSoulTower: 0
   origSoulPos: {x: 0, y: 0, z: 0}
   isRecorded: 0
@@ -631,8 +633,6 @@ MonoBehaviour:
   dropSoulMax: 5
   dropSoulMin: 5
   dropSoulAngle: 60
-  upFirstAfterWeaknessOrNot: 0
-  isBeBlownUp: 0
 --- !u!54 &5440846222648032765
 Rigidbody:
   m_ObjectHideFlags: 0
@@ -698,6 +698,8 @@ MonoBehaviour:
     changeHurt: 0
     repelValue: 0
     canBlowUp: 0
+    floatState:
+      time: 0
     blowUp:
       dir: {x: 0, y: 0, z: 0}
       force: 0
@@ -705,16 +707,17 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
-    armorPenetration:
+    armor:
       rate: 0
     changeDamage:
       rate: 0
     sustainedInjury:
       damage: 0
   addAttackEffect: {fileID: 0}
+  skill: {fileID: 0}
   attackTrigger: {fileID: 7729941002223262554}
   isAttackTriggerOn: 0
   bulletPrefab: {fileID: 0}
@@ -736,6 +739,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -743,10 +748,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -760,6 +765,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   - id: 1
     attackName: "\u884C\u519B\u5F0F\u6376\u5730"
     attackType: 0
@@ -772,6 +779,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -779,10 +788,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -796,6 +805,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   curAttackMethod:
     id: 0
     attackName: 
@@ -809,6 +820,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -816,10 +829,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -833,6 +846,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
 --- !u!114 &2097164303631121685
 MonoBehaviour:
   m_ObjectHideFlags: 0

+ 30 - 15
ActionTowerDefense/Assets/Resources/Prefab/MySoldier/Demonic_Giant_Yin.prefab

@@ -105,6 +105,8 @@ MonoBehaviour:
     changeHurt: 0
     repelValue: 0
     canBlowUp: 0
+    floatState:
+      time: 0
     blowUp:
       dir: {x: 0, y: 0, z: 0}
       force: 0
@@ -112,10 +114,10 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
-    armorPenetration:
+    armor:
       rate: 0
     changeDamage:
       rate: 0
@@ -568,6 +570,8 @@ MonoBehaviour:
   extraFallGravity: -14.4
   canMove: 1
   moveSpeed: 2
+  flyHeight: 0
+  flyUpSpeed: 10
   totalBeRepelValue: 100
   beRepelValue: 0
   weakTime: 0
@@ -610,12 +614,10 @@ MonoBehaviour:
   playerID: 0
   id: 0
   costMp: 150
-  totalSummonTime: 0.5
   isBack: 0
-  flyHeight: 0
-  flyUpSpeed: 10
   baseSortingOrder: 2000
   runSpeed: 0
+  summonTime: 1
   isReturnSoulTower: 0
   origSoulPos: {x: 0, y: 0, z: 0}
   isRecorded: 0
@@ -631,8 +633,6 @@ MonoBehaviour:
   dropSoulMax: 5
   dropSoulMin: 5
   dropSoulAngle: 60
-  upFirstAfterWeaknessOrNot: 0
-  isBeBlownUp: 0
 --- !u!54 &5440846222648032765
 Rigidbody:
   m_ObjectHideFlags: 0
@@ -698,6 +698,8 @@ MonoBehaviour:
     changeHurt: 0
     repelValue: 0
     canBlowUp: 0
+    floatState:
+      time: 0
     blowUp:
       dir: {x: 0, y: 0, z: 0}
       force: 0
@@ -705,16 +707,17 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
-    armorPenetration:
+    armor:
       rate: 0
     changeDamage:
       rate: 0
     sustainedInjury:
       damage: 0
   addAttackEffect: {fileID: 0}
+  skill: {fileID: 0}
   attackTrigger: {fileID: 7729941002223262554}
   isAttackTriggerOn: 0
   bulletPrefab: {fileID: 0}
@@ -736,6 +739,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -743,10 +748,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -760,6 +765,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   - id: 1
     attackName: "\u884C\u519B\u5F0F\u6376\u5730"
     attackType: 0
@@ -772,6 +779,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -779,10 +788,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -796,6 +805,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   curAttackMethod:
     id: 0
     attackName: 
@@ -809,6 +820,8 @@ MonoBehaviour:
       changeHurt: 0
       repelValue: 0
       canBlowUp: 0
+      floatState:
+        time: 0
       blowUp:
         dir: {x: 0, y: 0, z: 0}
         force: 0
@@ -816,10 +829,10 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
-      armorPenetration:
+      armor:
         rate: 0
       changeDamage:
         rate: 0
@@ -833,6 +846,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
 --- !u!114 &8094626600360174710
 MonoBehaviour:
   m_ObjectHideFlags: 0

+ 16 - 11
ActionTowerDefense/Assets/Resources/Prefab/MySoldier/Demonic_Sword.prefab

@@ -225,6 +225,8 @@ MonoBehaviour:
   extraFallGravity: -14.4
   canMove: 1
   moveSpeed: 3
+  flyHeight: 0
+  flyUpSpeed: 10
   totalBeRepelValue: 100
   beRepelValue: 0
   weakTime: 0
@@ -267,12 +269,10 @@ MonoBehaviour:
   playerID: 0
   id: 0
   costMp: 50
-  totalSummonTime: 0.5
   isBack: 0
-  flyHeight: 0
-  flyUpSpeed: 10
   baseSortingOrder: 6000
   runSpeed: 0
+  summonTime: 0.5
   isReturnSoulTower: 0
   origSoulPos: {x: 0, y: 0, z: 0}
   isRecorded: 0
@@ -288,8 +288,6 @@ MonoBehaviour:
   dropSoulMax: 3
   dropSoulMin: 1
   dropSoulAngle: 60
-  upFirstAfterWeaknessOrNot: 0
-  isBeBlownUp: 0
 --- !u!54 &2437299196472462355
 Rigidbody:
   m_ObjectHideFlags: 0
@@ -378,7 +376,7 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
     armor:
@@ -388,6 +386,7 @@ MonoBehaviour:
     sustainedInjury:
       damage: 0
   addAttackEffect: {fileID: 0}
+  skill: {fileID: 0}
   attackTrigger: {fileID: 4347565098670608659}
   isAttackTriggerOn: 0
   bulletPrefab: {fileID: 0}
@@ -404,7 +403,7 @@ MonoBehaviour:
     attackInfo:
       damage: 80
       attackDir: {x: 0, y: 0, z: 0}
-      attackEffect: 01000000
+      attackEffect: 02000000
       force: 0
       changeHurt: 0
       repelValue: 0
@@ -418,7 +417,7 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
       armor:
@@ -435,6 +434,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   - id: 1
     attackName: "\u884C\u519B\u5F0F\u6325\u68D2\u5B50"
     attackType: 0
@@ -456,7 +457,7 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
       armor:
@@ -473,6 +474,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
   curAttackMethod:
     id: 0
     attackName: 
@@ -495,7 +498,7 @@ MonoBehaviour:
       shotDown:
         dir: {x: 0, y: 0, z: 0}
         force: 0
-        timel: 0
+        time: 0
       stun:
         time: 0
       armor:
@@ -512,6 +515,8 @@ MonoBehaviour:
     shootPos: []
     shootTrack: 0
     shootAlwaysTrack: 0
+    skillPrefab: {fileID: 0}
+    skill: {fileID: 0}
 --- !u!114 &7928236452164941834
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -871,7 +876,7 @@ MonoBehaviour:
     shotDown:
       dir: {x: 0, y: 0, z: 0}
       force: 0
-      timel: 0
+      time: 0
     stun:
       time: 0
     armor:

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

@@ -690,6 +690,8 @@ MonoBehaviour:
   extraFallGravity: -14.4
   canMove: 1
   moveSpeed: 10
+  flyHeight: 0
+  flyUpSpeed: 10
   totalBeRepelValue: 100
   beRepelValue: 0
   weakTime: 0
@@ -787,6 +789,8 @@ MonoBehaviour:
   maxFlyHeight: 0
   totalSummonTime: 1.233
   summonTime: 1.233
+  onlySummonTime: 1
+  restSummonTime: 0
   cacheDir: 0
   cacheRush: 0
   cacheSummonTime: 0
@@ -1338,7 +1342,7 @@ MonoBehaviour:
     materialsOutsideMask: []
   disableRenderingOnOverride: 1
   physicsPositionInheritanceFactor: {x: 1, y: 1}
-  physicsRotationInheritanceFactor: 1
+  physicsRotationInheritanceFactor: 0
   physicsMovementRelativeTo: {fileID: 0}
   translator:
     autoReset: 1

+ 1 - 0
ActionTowerDefense/Assets/Scripts/Characters/Demonic.cs

@@ -15,6 +15,7 @@ public class Demonic : MoveCharacter
     public int baseSortingOrder;
     int sortingOrder = 0;
     public float runSpeed;
+    public float summonTime;
 
     [Header("Ëø»êËþ")]
     public bool isReturnSoulTower;

+ 27 - 17
ActionTowerDefense/Assets/Scripts/Characters/PlayerController.cs

@@ -110,6 +110,10 @@ public class PlayerController : MoveCharacter
     public float totalSummonTime;
     [HideInInspector]
     public float summonTime;
+    public float onlySummonTime;
+    [HideInInspector]
+    public float restSummonTime;
+       
     [HideInInspector]
     public float cacheDir;  //召唤的时候按左右召唤结束不会响应手感不好,缓存一下,召唤后摇期间有左右响应的话会转向
     [HideInInspector]
@@ -119,7 +123,6 @@ public class PlayerController : MoveCharacter
     [HideInInspector]
     public int cacheSummonId;
 
-
     [Header("召唤使魔")]
     public TextMeshProUGUI[] demonicNums;
     public GameObject[] cannotConductFXs;
@@ -982,6 +985,8 @@ public class PlayerController : MoveCharacter
             {
                 if (excludeState != CharacterState.Rush)
                 {
+                    restSummonTime = 0;
+                    summonTime = 0;
                     cacheRush = false;
                     ChangeState(CharacterState.Rush);
                     return true;
@@ -989,16 +994,18 @@ public class PlayerController : MoveCharacter
             }
             if (rb.velocity.y > 0)
             {
-                if (excludeState != CharacterState.Rise)
+                if (excludeState != CharacterState.Rise && restSummonTime <= 0)
                 {
+                    summonTime = 0;
                     ChangeState(CharacterState.Rise);
                     return true;
                 }
             }
             else
             {
-                if (excludeState != CharacterState.Fall)
+                if (excludeState != CharacterState.Fall && restSummonTime <= 0)
                 {
+                    summonTime = 0;
                     ChangeState(CharacterState.Fall);
                     return true;
                 }
@@ -1026,6 +1033,8 @@ public class PlayerController : MoveCharacter
             {
                 if (excludeState != CharacterState.Rush)
                 {
+                    restSummonTime = 0;
+                    summonTime = 0;
                     cacheRush = false;
                     ChangeState(CharacterState.Rush);
                     return true;
@@ -1033,8 +1042,9 @@ public class PlayerController : MoveCharacter
             }
             if (btnJumpPress || cacheJumpTime > 0)
             {
-                if (excludeState != CharacterState.Rise)
+                if (excludeState != CharacterState.Rise && restSummonTime <= 0)
                 {
+                    summonTime = 0;
                     Jump();
                     ChangeState(CharacterState.Rise);
                     return true;
@@ -1052,16 +1062,18 @@ public class PlayerController : MoveCharacter
             {
                 if (leftDir.x > 0.3f || leftDir.x < -0.3f || leftDir.y > 0.3f || leftDir.y < -0.3f)
                 {
-                    if (excludeState != CharacterState.Run)
+                    if (excludeState != CharacterState.Run && restSummonTime <= 0)
                     {
+                        summonTime = 0;
                         ChangeState(CharacterState.Run);
                         return true;
                     }
                 }
                 else
                 {
-                    if (excludeState != CharacterState.Idle)
+                    if (excludeState != CharacterState.Idle && summonTime <= 0)
                     {
+                        summonTime = 0;
                         ChangeState(CharacterState.Idle);
                         return true;
                     }
@@ -1071,24 +1083,22 @@ public class PlayerController : MoveCharacter
             {
                 if (leftDir.x > 0.3f || leftDir.x < -0.3f)
                 {
-                    if (excludeState != CharacterState.Run)
+                    if (excludeState != CharacterState.Run && restSummonTime <= 0)
                     {
+                        summonTime = 0;
                         ChangeState(CharacterState.Run);
                         return true;
                     }
                 }
                 else
                 {
-                    if (excludeState != CharacterState.Idle)
+                    if (excludeState != CharacterState.Idle && summonTime <= 0)
                     {
-                        ChangeState(CharacterState.Idle);
+                        ChangeState(CharacterState.Idle);                        
                         return true;
                     }
                 }
-
             }
-
-
         }
         return false;
     }
@@ -1158,6 +1168,7 @@ public class PlayerController : MoveCharacter
         canJumpTime -= Time.deltaTime;
         invincibleTime -= Time.deltaTime;
         summonTime -= Time.deltaTime;
+        restSummonTime -= Time.deltaTime;
         rushTime -= Time.deltaTime;
         cacheRushTime -= Time.deltaTime;
         dieKeepTime -= Time.deltaTime;
@@ -1480,12 +1491,9 @@ public class PlayerController : MoveCharacter
                 {
                     cacheRush = true;
                 }
-                if (summonTime <= 0)
+                if (CheckPlayerChangeState(CharacterState.Summon))
                 {
-                    if (CheckPlayerChangeState(CharacterState.Summon))
-                    {
-                        break;
-                    }
+                    break;
                 }
                 rb.velocity = Vector3.right * velocityAddition;
 
@@ -1993,6 +2001,8 @@ public class PlayerController : MoveCharacter
         uiMp.Show(mp, totalMp);
         GameObject demonicObj = PoolManager.Instantiate(prefab);
         Demonic demonic = demonicObj.GetComponent<Demonic>();
+        onlySummonTime = demonic.summonTime;
+        restSummonTime = onlySummonTime;
         demonic.id = id;
         demonic.playerID = playerId;
         if (!demonicDic.ContainsKey(id))

+ 1 - 1
ActionTowerDefense/Assets/Scripts/Skills/MultiArrowController.cs

@@ -24,7 +24,7 @@ public class MultiArrowController : MonoBehaviour
             velocity.y -= gravity * Time.deltaTime;
 
             // ÒÆ¶¯¼ýʸ
-            transform.position += velocity * Time.deltaTime;
+            //transform.position += velocity * Time.deltaTime;
 
             // ¸üÐÂÐýת·½Ïò
             if (velocity != Vector3.zero)