少年修仙传客户端代码仓库
client_Wu Xijin
2019-06-06 41a6e87783d042bf3e0ecebfa772443f2b5ed95d
System/FindPrecious/FindPreciousModel.cs
@@ -55,8 +55,8 @@
        WorldBossModel worldBossModel { get { return ModelCenter.Instance.GetModel<WorldBossModel>(); } }
        BossHomeModel bossHomeModel { get { return ModelCenter.Instance.GetModel<BossHomeModel>(); } }
        PersonalBossModel personalBossModel { get { return ModelCenter.Instance.GetModel<PersonalBossModel>(); } }
        DogzDungeonModel dogzDungeonModel { get { return ModelCenter.Instance.GetModel<DogzDungeonModel>(); } }
        JadeDynastyBossModel jadeDynastyBossModel { get { return ModelCenter.Instance.GetModel<JadeDynastyBossModel>(); } }
        RealmModel realmModel { get { return ModelCenter.Instance.GetModel<RealmModel>(); } }
        public override void Init()
        {
@@ -259,6 +259,60 @@
            return bossInfos.TryGetValue(_bossId, out _bossInfo);
        }
        public bool IsBossUnlock(int bossId)
        {
            var myRealmLevel = PlayerDatas.Instance.baseData.realmLevel;
            var myRealmStage = realmModel.GetRealmStage(myRealmLevel);
            var config = NPCConfig.Get(bossId);
            var bossRealmStage = realmModel.GetRealmStage(config.Realm);
            return myRealmStage >= bossRealmStage;
        }
        public bool IsBossUnlockOrUnlockSoon(int bossId)
        {
            var myRealmLevel = PlayerDatas.Instance.baseData.realmLevel;
            var myRealmStage = realmModel.GetRealmStage(myRealmLevel);
            var config = NPCConfig.Get(bossId);
            var bossRealmStage = realmModel.GetRealmStage(config.Realm);
            if (myRealmStage >= bossRealmStage)
            {
                return true;
            }
            if (myRealmStage + 1 >= bossRealmStage)
            {
                return true;
            }
            return false;
        }
        public bool IsRealmEnoughToKillBoss(int bossId)
        {
            var myRealmLevel = PlayerDatas.Instance.baseData.realmLevel;
            var config = NPCConfig.Get(bossId);
            return myRealmLevel >= config.Realm;
        }
        public int GetBossUnLockRealm(int bossId)
        {
            var config = NPCConfig.Get(bossId);
            var realmStage = realmModel.GetRealmStage(config.Realm);
            var realms = new List<int>();
            if (realmModel.TryGetRealmStages(realmStage, out realms))
            {
                return realms[0];
            }
            else
            {
                return 0;
            }
        }
        public bool IsBossAlive(int _bossId)
        {
            if (demonJarModel.IsPersonalBoss(_bossId))
@@ -435,12 +489,10 @@
                findPreciousRedpoint.count = totalCount;
            }
            if (_redpointId == DogzDungeonModel.DOGZDUNGEON_REDPOINT ||
                _redpointId == JadeDynastyBossModel.JADEDYNASTY_REDPOINTID)
            if (_redpointId == JadeDynastyBossModel.JADEDYNASTY_REDPOINTID)
            {
                var dogzDungeonRedpointCount = dogzDungeonModel.redpoint.count;
                var jadeDynastyBossRedpointCount = jadeDynastyBossModel.redpoint.count;
                var totalCount = dogzDungeonRedpointCount + jadeDynastyBossRedpointCount;
                var totalCount = jadeDynastyBossRedpointCount;
                lootPreciousRedpoint.count = totalCount;
                lootPreciousRedpoint.state = totalCount > 0 ? RedPointState.Quantity : RedPointState.None;
@@ -468,10 +520,6 @@
            else if (PersonalBossConfig.Has(_bossId))
            {
                return FindPreciousType.PersonalBoss;
            }
            else if (DogzDungeonConfig.Has(_bossId))
            {
                return FindPreciousType.DogzDungeon;
            }
            else if (CrossServerBossConfig.Has(_bossId))
            {