Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts
| | |
| | | } |
| | | else if (pack is CustomHB426CombinePack) |
| | | { |
| | | Debug.LogError("无法找到Skill包,先发现了嵌套包"); |
| | | Debug.LogError("无法找到Skill包,先发现了嵌套包 " + startTag.Tag); |
| | | return null; |
| | | } |
| | | else |
| | |
| | | DebugingBuffStatus(vPackList); |
| | | #endif |
| | | |
| | | #region Start Print Before Pack List Detail |
| | | if (Launch.Instance.isOpenSkillLogFile) |
| | | { |
| | | try |
| | | { |
| | | string detailAnalysis = PrintPackageDetailAnalysis(vPackList, guid); |
| | | string filePath = Application.dataPath + "/../BattleReport/PackageBeforeDetailAnalysis_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".txt"; |
| | | System.IO.Directory.CreateDirectory(System.IO.Path.GetDirectoryName(filePath)); |
| | | System.IO.File.WriteAllText(filePath, detailAnalysis); |
| | | Debug.Log("包详细分析已保存到: " + filePath); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | Debug.LogError("保存包详细分析失败: " + e.Message); |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | vPackList = AnalysisPackQueueAndDistribute(guid, vPackList); |
| | | |
| | | |
| | |
| | | try |
| | | { |
| | | string detailAnalysis = PrintPackageDetailAnalysis(vPackList, guid); |
| | | string filePath = Application.dataPath + "/../BattleReport/PackageDetailAnalysis_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".txt"; |
| | | string filePath = Application.dataPath + "/../BattleReport/PackageAfterDetailAnalysis_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".txt"; |
| | | System.IO.Directory.CreateDirectory(System.IO.Path.GetDirectoryName(filePath)); |
| | | System.IO.File.WriteAllText(filePath, detailAnalysis); |
| | | Debug.Log("包详细分析已保存到: " + filePath); |
| | |
| | | |
| | | return true; |
| | | } |
| | | |
| | | public override bool NeedWaitSibling() |
| | | { |
| | | return HasDeathTriggerSkill(); |
| | | } |
| | | } |
| | |
| | | |
| | | public class BattleDmgInfo |
| | | { |
| | | // 排除展示的伤害类型 |
| | | protected static List<DamageType> ExcludeDamageTypes = new List<DamageType> |
| | | { |
| | | DamageType.SuckHpReverse, |
| | | DamageType.Parry, |
| | | DamageType.BreakArmor, |
| | | DamageType.Protected, |
| | | }; |
| | | |
| | | public string battleFieldGuid { get; private set; } |
| | | public BattleHurtParam battleHurtParam { get; private set; } |
| | | |
| | |
| | | targetDamageList.Add(new BattleDmg { damage = damage, attackType = attackType }); |
| | | } |
| | | |
| | | protected static List<DamageType> ExcludeDamageTypes = new List<DamageType> |
| | | { |
| | | DamageType.SuckHpReverse, |
| | | DamageType.Parry, |
| | | DamageType.BreakArmor, |
| | | DamageType.Protected, |
| | | }; |
| | | |
| | | |
| | | /// <summary> |
| | | /// 验证并修复攻击类型 |
| | |
| | | |
| | | CritRealdamage = Crit + Realdamage, //暴击真伤 |
| | | |
| | | SuckHpReverse = 8192, //吸血反转为伤害 |
| | | SuckHpReverse = 8192,//吸血毒药 (2^13 序号13) |
| | | |
| | | Protected = 16384,//本次伤害有受保护标记 (2^13 序号13) |
| | | Protected = 16384,//本次伤害有受保护标记 (2^14 序号14) |
| | | |
| | | |
| | | |
| | | BreakArmor = 32768,//破甲伤害 (2^15 序号15) |
| | | |
| | |
| | | RemoveAction(frameHandler); |
| | | onComplete?.Invoke(); |
| | | skillBase.OnFinalFrameEnd(); |
| | | skillTrack = null; |
| | | if (hasAnim) |
| | | skillTrack = null; |
| | | } |
| | | } |
| | | }; |
| | |
| | | } |
| | | return battleField.guid; |
| | | } |
| | | |
| | | public virtual bool NeedWaitSibling() |
| | | { |
| | | return true; |
| | | } |
| | | } |
| | |
| | | if (prevAction != null && prevAction.parentAction == action.parentAction) |
| | | { |
| | | // 找到同级前置节点,如果它还在执行中,则当前节点需要等待 |
| | | if (!prevAction.IsFinished()) |
| | | if (!prevAction.IsFinished() && action.NeedWaitSibling()) |
| | | { |
| | | shouldWaitForSibling = true; |
| | | // BattleDebug.LogError($"RecordPlayer: {action.GetType().Name} 等待同级前置节点 {prevAction.GetType().Name} 完成"); |
| | |
| | | } |
| | | |
| | | // 传递parentRecordAction,让死亡技能等待当前技能完成 |
| | | battleField.OnObjsDead(new List<BattleDeadPack>(tempDeadPackList.Values), parentRecordAction); |
| | | battleField.OnObjsDead(new List<BattleDeadPack>(tempDeadPackList.Values)); |
| | | |
| | | // 1. 强制结束技能效果 |
| | | skillEffect?.ForceFinished(); |