Browse Source

修改拖尾

DESKTOP-BGJIU14\ck 5 days ago
parent
commit
b9d515f0ab

+ 8 - 0
Assets/Scenes/testCombat.scene

@@ -2196,6 +2196,14 @@ PrefabInstance:
       propertyPath: m_LocalEulerAnglesHint.z
       value: 0
       objectReference: {fileID: 0}
+    - target: {fileID: 6090200664286961698, guid: 1076536f8fdf47942aa287592c6a8b19, type: 3}
+      propertyPath: isZhanZhuang
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 6090200664286961698, guid: 1076536f8fdf47942aa287592c6a8b19, type: 3}
+      propertyPath: zhanZhuangTime
+      value: 60
+      objectReference: {fileID: 0}
     - target: {fileID: 6090200664286961698, guid: 1076536f8fdf47942aa287592c6a8b19, type: 3}
       propertyPath: myHeroInfo.Array.data[0].hp
       value: 46090

+ 7 - 0
Assets/Scripts/GameLogic/Combat/Buff/b_1006.cs

@@ -1,3 +1,5 @@
+using GameLogic.Combat.Hero;
+
 namespace GameLogic.Combat.Buff
 {
     /// <summary>
@@ -5,5 +7,10 @@ namespace GameLogic.Combat.Buff
     /// </summary>
     public class b_1006 : BuffBasic
     {
+        protected override void ProUpdateEffect()
+        {
+            //打断
+            combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
+        }
     }
 }

+ 1 - 14
Assets/Scripts/GameLogic/Combat/CombatType/CombatTypeBasic.cs

@@ -54,20 +54,7 @@ namespace GameLogic.Combat.CombatType
         }
 
 
-        private void OnTriggerEnterEvent(Collider collider)
-        {
-            if (isActiveCombat)
-            {
-                return;
-            }
-
-            HeroEntityMono heroEntityMono = collider.GetComponent<HeroEntityMono>();
-            if (heroEntityMono != null && !heroEntityMono.combatHeroEntity.IsEnemy)
-            {
-                CombatEventManager.Instance.Dispatch(CombatEventType.ActiveCombat, null);
-                isActiveCombat = true;
-            }
-        }
+      
         public virtual void DisposeOneCombatInfo()
         {
             ProDisposeOneCombatInfo();

+ 13 - 2
Assets/Scripts/GameLogic/Combat/CombatType/TestCombatType.cs

@@ -25,6 +25,8 @@ namespace GameLogic.Combat.CombatType
 
         private List<TestCombatHeroConfig.TestHeroInfoConfig> enemyHeroInfo;
 
+        protected float zhanZhuangShiJian;
+
         protected Vector3[] enemyHeroPosOff =
         {
             new Vector3(0, 0, 0),
@@ -108,6 +110,7 @@ namespace GameLogic.Combat.CombatType
                 TestCombatHeroConfig.TestHeroInfoConfig testHeroInfoConfig = enemyHeroInfo[index];
                 CombatHeroEntity heroEntity = new CombatHeroEntity();
                 heroEntity.IsEnemy = true;
+                heroEntity.isZhanZhuang = testCombatHeroConfig.isZhanZhuang;
                 CombatHeroInfo combatHeroInfo = new CombatHeroInfo();
                 testHeroInfoConfig.CopyToCombatHeroInfo((combatHeroInfo));
                 Vector3 pos = startPos + quaternion * enemyHeroPosOff[index];
@@ -118,9 +121,17 @@ namespace GameLogic.Combat.CombatType
 
         protected override void ProUpdate(float t)
         {
-            if (!isActiveCombat)
+            if (CombatController.currActiveCombat.IsFightState)
             {
-                return;
+                if (testCombatHeroConfig.isZhanZhuang)
+                {
+                    zhanZhuangShiJian += t;
+                    if (zhanZhuangShiJian > testCombatHeroConfig.zhanZhuangTime)
+                    {
+                        CombatController.currActiveCombat.GameOver(true);
+                        CombatController.currActiveCombat.isUpdate = false;
+                    }
+                }
             }
         }
 

+ 35 - 3
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroEntity.cs

@@ -142,7 +142,7 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
 
         CombatHeroSkillControl = new CombatHeroSkillControl();
         await CombatHeroSkillControl.Init(this);
-        
+
         await InitShieldsFx();
         AnimancerComponent animancerComponent = poolInterface.own.GetComponent<AnimancerComponent>();
         combatHeroAnimtion = new CombatHeroAnimtion();
@@ -306,20 +306,47 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
         CombatEventManager.Instance.Dispatch(CombatEventType.HeroDieFinish, heroDieEventData);
     }
 
+    /// <summary>
+    /// 是否被控制
+    /// </summary>
+    /// <returns></returns>
+    public bool IsControl()
+    {
+        BuffBasic basic = BuffControl.GetBuffBasicForIdGroup(1006);
+        if (basic != null)
+        {
+            return true;
+        }
+
+        return false;
+    }
+    /// <summary>
+    /// 是否不能添加功法
+    /// </summary>
+    /// <returns></returns>
+    public bool IsCantAddGongFa()
+    {
+        BuffBasic basic = BuffControl.GetBuffBasicForIdGroup(1006);
+        if (basic != null)
+        {
+            return false;
+        }
+
+        return true;
+    }
     public void HeroHurt(HarmReturnInfo harmReturnInfo)
     {
         if (isDie)
         {
             return;
         }
-        
+
         long att = harmReturnInfo.att;
         IBarrier shieldsBarrier = harmReturnInfo.triggerData.IBarrier as IBarrier;
         if (shieldsBarrier != null)
         {
             att = shieldsBarrier.Harm(harmReturnInfo);
             harmReturnInfo.harmType |= HarmType.Shields;
-            
         }
         else
         {
@@ -331,6 +358,11 @@ public class CombatHeroEntity : ShowBaiscEntity, ITimeLineAnimtion, ITimeLineGet
             CurrCombatHeroInfo.hp -= att;
         }
 
+        if (isZhanZhuang)
+        {
+            CurrCombatHeroInfo.hp = MaxCombatHeroInfo.hp;
+        }
+
         UpdateHarmText(harmReturnInfo);
         if (combatHeroGameObject.HeroGPUMono != null)
         {

+ 34 - 11
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroInfo.cs

@@ -241,20 +241,19 @@ public class CombatHeroInfo
     protected void CalBasicAttribute()
     {
         _AttributeCacheValue.Clear();
-        modelID=modelConfig.ID;
+        modelID = modelConfig.ID;
         if (isMonster)
         {
-           
             unLockSkills.Clear();
             hp = (EncryptionLong)(modelConfig.hp * MonsterPowerUpConfig.HPFactor);
             defense = (EncryptionLong)(modelConfig.def * MonsterPowerUpConfig.DEFFactor);
             attack = (EncryptionLong)(modelConfig.attack * MonsterPowerUpConfig.ATKFactor);
             k = MonsterPowerUpConfig.defK;
-            Metal= modelConfig.Linggen[0]*MonsterPowerUpConfig.LinggenUp/100;
-            Water= modelConfig.Linggen[1]*MonsterPowerUpConfig.LinggenUp/100;
-            Wood= modelConfig.Linggen[2]*MonsterPowerUpConfig.LinggenUp/100;
-            Fire= modelConfig.Linggen[3]*MonsterPowerUpConfig.LinggenUp/100;
-            Earth= modelConfig.Linggen[4]*MonsterPowerUpConfig.LinggenUp/100;
+            Metal = modelConfig.Linggen[0] * MonsterPowerUpConfig.LinggenUp / 100;
+            Water = modelConfig.Linggen[1] * MonsterPowerUpConfig.LinggenUp / 100;
+            Wood = modelConfig.Linggen[2] * MonsterPowerUpConfig.LinggenUp / 100;
+            Fire = modelConfig.Linggen[3] * MonsterPowerUpConfig.LinggenUp / 100;
+            Earth = modelConfig.Linggen[4] * MonsterPowerUpConfig.LinggenUp / 100;
             Shield = (EncryptionLong)(modelConfig.shield * MonsterPowerUpConfig.HudunFactor);
             SetSkillAttSpeed(modelConfig.speed_atk);
             if (modelConfig.skillID != null)
@@ -266,15 +265,16 @@ public class CombatHeroInfo
                     {
                         continue;
                     }
+
                     int startLevel = modelConfig.skillActiveLv[i];
                     if (startLevel > 0 && level < startLevel)
                     {
                         continue;
                     }
 
-                   
 
-                    SkillInfo skillInfo = new SkillInfo(id, MonsterPowerUpConfig.GongfaLv,MonsterPowerUpConfig.GongfaStar);
+                    SkillInfo skillInfo =
+                        new SkillInfo(id, MonsterPowerUpConfig.GongfaLv, MonsterPowerUpConfig.GongfaStar);
                     skillInfo.index = i;
                     unLockSkills.Add(skillInfo);
                 }
@@ -290,6 +290,7 @@ public class CombatHeroInfo
                     {
                         continue;
                     }
+
                     if (faBaoId > 0)
                     {
                         FaBaoInfo faBaoInfo = new FaBaoInfo(faBaoId, MonsterPowerUpConfig.FabaoLv,
@@ -327,6 +328,29 @@ public class CombatHeroInfo
                     break;
             }
         }
+
+        if (!isMonster)
+        {
+            for (int i = 0; i < MagicWeaponID.Count; i++)
+            {
+                FaBaoInfo faBaoInfo = MagicWeaponID[i];
+                foreach (var VARIABLE in faBaoInfo.attriButedIC)
+                {
+                    switch (VARIABLE.Key)
+                    {
+                        case 1:
+                            hp += VARIABLE.Value;
+                            break;
+                        case 2:
+                            defense += VARIABLE.Value;
+                            break;
+                        case 3:
+                            attack += VARIABLE.Value;
+                            break;
+                    }
+                }
+            }
+        }
     }
 
     public SkillConfig GetGroupSkillConfig(int idGroup)
@@ -352,7 +376,6 @@ public class CombatHeroInfo
     {
         CalBasicAttribute();
 
-       
 
         // skillId = modelConfig.skillID;
         modelName = modelConfig.model;
@@ -363,7 +386,7 @@ public class CombatHeroInfo
 
     public void SetSkillAttSpeed(float attSpeed)
     {
-        _attSpeed = (EncryptionFloat)(1.0f /attSpeed);
+        _attSpeed = (EncryptionFloat)(1.0f / attSpeed);
     }
 
 

+ 5 - 0
Assets/Scripts/GameLogic/Combat/Hero/CombatHeroSkillControl.cs

@@ -117,6 +117,11 @@ namespace GameLogic.Combat.Hero
 
         public void AddCommandSkill(SkillBasic skill)
         {
+            if (_combatHeroEntity.isZhanZhuang)
+            {
+                return;
+            }
+
             SkillCommands.Add(skill);
         }
 

+ 1 - 0
Assets/Scripts/GameLogic/Combat/Hero/ShowBaiscEntity.cs

@@ -10,6 +10,7 @@ namespace GameLogic.Combat.Hero
     public class ShowBaiscEntity : CObject, ITimeLineSpecialDotPos, ILifeCycle
     {
         public bool IsEnemy { get; set; }
+        public bool isZhanZhuang;
         public bool isDie { get; set; }
         public int number;
 

+ 1 - 1
Assets/Scripts/GameLogic/Combat/Hero/State/CombatHeroAttState.cs

@@ -47,7 +47,7 @@ namespace GameLogic.Combat.Hero.State
             if (skillBasic != null)
             {
                 skillBasic.BreakSkill();
-                combatHeroEntity.CombatHeroSkillControl.This<CombatHeroSkillControl>().UseSkillFinish(skillBasic);
+                // combatHeroEntity.CombatHeroSkillControl.This<CombatHeroSkillControl>().UseSkillFinish(skillBasic);
             }
 
 

+ 4 - 0
Assets/Scripts/GameLogic/Combat/Hero/Turntable/SkillTurntable.cs

@@ -267,6 +267,10 @@ namespace GameLogic.Combat.Hero.Turntable
             //         }
             //     }
             // }
+            if (!_combatHeroEntity.IsCantAddGongFa())
+            {
+                return;
+            }
 
             DS60103 ds60103 =
                 _combatHeroEntity.CombatHeroSkillControl.This<CombatHeroSkillControl>().taoismSkillBasic as DS60103;

+ 1 - 1
Assets/Scripts/GameLogic/Combat/Skill/S1402.cs

@@ -66,7 +66,7 @@ namespace GameLogic.Combat.Skill
 
                 if (SelfSkillConfig.level > 3)
                 {
-                    BuffInfo buffInfo = BuffInfo.GetBuffInfo(10051, 1); //眩晕敌人
+                    BuffInfo buffInfo = BuffInfo.GetBuffInfo(10051, 1); //试驾灼热
                     targetEntity.combatHeroEntity.BuffControl.AddBuff(CombatHeroEntity, buffInfo);
                 }
 

+ 5 - 3
Assets/Scripts/GameLogic/CombatScenesTool/TestCombatHeroConfig.cs

@@ -23,8 +23,8 @@ namespace GameLogic.CombatScenesTool
             [Header("土")] public int tu;
 
             [Header("测试功法(skill ID)")] public List<int> skill;
-            [Header("测试场景功法等级")] public int skillLevel=1;
-            [Header("测试场景功法星级")] public int skillStart=1;
+            [Header("测试场景功法等级")] public int skillLevel = 1;
+            [Header("测试场景功法星级")] public int skillStart = 1;
             [Header("测试法宝 法宝ID")] public List<int> magicWeaponId;
 
             public void CopyToCombatHeroInfo(CombatHeroInfo combatHeroInfo)
@@ -52,7 +52,7 @@ namespace GameLogic.CombatScenesTool
                     combatHeroInfo.unLockSkills.Clear();
                     for (int i = 0; i < skill.Count; i++)
                     {
-                        SkillInfo skillInfo = new SkillInfo(skill[i], skillLevel,skillStart);
+                        SkillInfo skillInfo = new SkillInfo(skill[i], skillLevel, skillStart);
                         skillInfo.index = i;
                         combatHeroInfo.unLockSkills.Add(skillInfo);
                     }
@@ -66,5 +66,7 @@ namespace GameLogic.CombatScenesTool
 
         public TestHeroInfoConfig[] myHeroInfo;
         public List<TestHeroInfoConfig> enemyHeroInfo = new List<TestHeroInfoConfig>();
+        [Header("是否站桩")] public bool isZhanZhuang;
+        [Header("站桩时间")] public float zhanZhuangTime;
     }
 }

+ 1 - 0
Assets/Scripts/GameLogic/Player/FaBaoControl.cs

@@ -54,6 +54,7 @@ namespace GameLogic.Player
                     PlayerManager.Instance.myHero.MagicWeaponID.Add(baoInfo);
                 }
             }
+            PlayerManager.Instance.myHero.ComputeHeroInfo();
         }
     }
 }

File diff suppressed because it is too large
+ 0 - 0
Assets/StreamingAssets/assetConfig.txt


Some files were not shown because too many files changed in this diff