浏览代码

修复摔落伤害导致血量负数不死亡bug

SZAND\msx_2 1 年之前
父节点
当前提交
6c9efe9463

+ 1 - 2
ActionTowerDefense/Assets/Scripts/MoveCharacter.cs

@@ -276,8 +276,7 @@ public class MoveCharacter : Character
                 else
                 {
                     ChangeState(CharacterState.Coma);
-                    hp -= dropDamage;
-                    uiHp.Show(hp, totalHp);
+                    BeHit(dropDamage, Vector3.zero, false, 0);
                     isBeDropped = false;
                 }
                 ChangeMat(1);

+ 1 - 1
ActionTowerDefense/Assets/Scripts/Spirits/Trans_Cook.cs

@@ -58,7 +58,7 @@ public class Trans_Cook : MonoBehaviour
     private void BottleMove()
     {
         curBottle.transform.position += new Vector3(dir * speed * Time.deltaTime, 0, 0);
-        if (dir == 1 && curBottle.transform.position.x >= maxDis || dir == -1 && curBottle.transform.position.x <= -maxDis)
+        if (curBottle.GetComponent<Rigidbody>().velocity.y <= -throwForceUp.y)
         {
             curBottle.SetActive(false);
             isThrow = false;

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

@@ -36,7 +36,7 @@ public class Trans_Float : MonoBehaviour
     public float keepFloatTime;             //K键最大持续时间
     private float pastTime;
 
-    public float LAttackDamage;             //L键摔落伤害
+    public int LAttackDamage;             //L键摔落伤害
 
     private void Start()
     {
@@ -146,6 +146,7 @@ public class Trans_Float : MonoBehaviour
                 {
                     if (f.isFloat)
                     {
+                        f.dropDamage = LAttackDamage;
                         f.FloatDrop();
                         FloatData.Clear(1);
                     }