yyl
2025-12-24 a38e02687f52e6d81e6fb6c1dcbf85ee76938325
Main/System/Battle/BattleField/BattleField.cs
@@ -73,6 +73,8 @@
    // 记录正在处理死亡的角色ID,防止重复处理
    private HashSet<uint> processingDeathObjIds = new HashSet<uint>();
    private Dictionary<long, List<SkillBase>> castingSkillDict = new Dictionary<long, List<SkillBase>>();
    public BattleSoundManager soundManager;
#if UNITY_EDITOR
@@ -97,6 +99,42 @@
        processingDeathObjIds = new HashSet<uint>();
    }
    public void AddCastingSkill(long objID, SkillBase skill)
    {
        List<SkillBase> skillBases = null;
        if (castingSkillDict.TryGetValue(objID, out skillBases))
        {
            skillBases.Add(skill);
        }
        else
        {
            skillBases = new List<SkillBase>();
            skillBases.Add(skill);
            castingSkillDict.Add(objID, skillBases);
        }
    }
    public void RemoveCastingSkill(long objID, SkillBase skillBase)
    {
        List<SkillBase> skillBases = null;
        if (castingSkillDict.TryGetValue(objID, out skillBases))
        {
            skillBases.Remove(skillBase);
            if (skillBases.Count == 0)
            {
                castingSkillDict.Remove(objID);
            }
        }
    }
    public bool IsCastingSkill(long objID)
    {
        return castingSkillDict.ContainsKey(objID);
    }
    public virtual void Init(int _MapID, int _FuncLineID, JsonData _extendData,
        List<TeamBase> _redTeamList, List<TeamBase> _blueTeamList, byte turnMax)
    {