少年修仙传客户端代码仓库
client_Wu Xijin
2018-09-27 57464ea91a2f28f37b2a1ab134b45e69addf85c1
3811 【前端】前期BOSS分线修改,修改60秒原则.
2个文件已修改
71 ■■■■■ 已修改文件
Fight/BossFakeLineUtility.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousModel.cs 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/BossFakeLineUtility.cs
@@ -68,6 +68,29 @@
        }
    }
    public bool HasSawLineStoneRecently(int bossId, int lineId)
    {
        var config = Config.Instance.Get<BossInfoConfig>(bossId);
        if (config == null)
        {
            return false;
        }
        var stoneId = config.StoneNPCID;
        return false;
    }
    public bool HasSawLineBossRecently(int bossId, int lineId)
    {
        var isMistakeBoss = lastBossNpcID == bossId && Time.realtimeSinceStartup < inMistakeForBossAliveOverTime;
        return false;
    }
    FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel<FindPreciousModel>(); } }
    Dictionary<int, DateTime> bossKillTimes = new Dictionary<int, DateTime>();
System/FindPrecious/FindPreciousModel.cs
@@ -44,9 +44,9 @@
        Dictionary<int, BossSubscribe> bossSubscribes = new Dictionary<int, BossSubscribe>();
        bool serverInited = false;
        public event Action<int> bossInfoUpdateEvent;
        public event Action<int> bossSubscribeChangeEvent;
        public event Action preciousDropRecordUpdateEvent;
        public event Action<int> bossInfoUpdateEvent;
        public event Action bossRebornNotifyChangeEvent;
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
@@ -541,40 +541,37 @@
                    {
                        return false;
                    }
                    else if (BossFakeLineUtility.Instance.HasSawLineBossRecently(bossId, PlayerDatas.Instance.baseData.FBID))
                    {
                        return true;
                    }
                    else if (BossFakeLineUtility.Instance.HasSawLineStoneRecently(bossId, PlayerDatas.Instance.baseData.FBID))
                    {
                        return false;
                    }
                    else
                    {
                        var isMistakeBoss = BossFakeLineUtility.Instance.lastBossNpcID == bossId
                            && Time.realtimeSinceStartup < BossFakeLineUtility.Instance.inMistakeForBossAliveOverTime;
                        var isLineBossAlive = IsLineBossAlive(PlayerDatas.Instance.baseData.FBID);
                        if (isMistakeBoss && isLineBossAlive)
                        var currentNeutralMap = false;
                        if (Config.Instance.ContainKey<WorldBossConfig>(bossId))
                        {
                            return true;
                            var worldBossConfig = Config.Instance.Get<WorldBossConfig>(bossId);
                            currentNeutralMap = worldBossConfig.MapID == PlayerDatas.Instance.baseData.MapID;
                            currentNeutralMap = currentNeutralMap && GeneralConfig.Instance.neutralMaps.Contains(worldBossConfig.MapID);
                        }
                        if (currentNeutralMap)
                        {
                            return IsLineBossAlive(PlayerDatas.Instance.baseData.FBID);
                        }
                        else
                        {
                            var currentNeutralMap = false;
                            if (Config.Instance.ContainKey<WorldBossConfig>(bossId))
                            if (BossFakeLineUtility.Instance.IsBossKilledRecently(bossId))
                            {
                                var worldBossConfig = Config.Instance.Get<WorldBossConfig>(bossId);
                                currentNeutralMap = worldBossConfig.MapID == PlayerDatas.Instance.baseData.MapID;
                                currentNeutralMap = currentNeutralMap && GeneralConfig.Instance.neutralMaps.Contains(worldBossConfig.MapID);
                            }
                            if (currentNeutralMap)
                            {
                                return isLineBossAlive;
                                return !IsAnyLineBossDead();
                            }
                            else
                            {
                                if (BossFakeLineUtility.Instance.IsBossKilledRecently(bossId))
                                {
                                    return !IsAnyLineBossDead();
                                }
                                else
                                {
                                    return IsAnyLineBossAlive();
                                }
                                return IsAnyLineBossAlive();
                            }
                        }
                    }
@@ -710,7 +707,6 @@
                    }
                }
            }
            public static int Compare2(DropRecord _lhs, DropRecord _rhs)
            {