少年修仙传客户端代码仓库
client_Zxw
2018-09-11 f8ce5efb2f4be994a66cf544090defa20b383279
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
140个文件已修改
1884 ■■■■■ 已修改文件
Core/GameEngine/Model/Player/Character/PlayerBaseData.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/PlayerDatas.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Realm/RealmModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/TelPartialConfig/tagChinSkillConfig.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToMapServer/CB9_Team/CB90A_tagCGInvitePlayerJoinTeamByLV.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H01_System/DTC0102_tagCDBPlayer.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H03_MainCharacter/DTC0319_tagFBHelp.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H03_MainCharacter/DTC0320_tagFBEnd.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0405_tagPlayerDisappear.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0434_tagAreaPlayerAppearEx.cs 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA126_tagMCPrepareChangeMap.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA127_tagMCStartChangeMap.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA30A_tagMCFBEncourageInfo.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA320_tagMCPlayerFBInfoData.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA3BD_tagMCBuyEnterInfo.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA7_Interaction/DTCA703_tagMCFBEnterTickList.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB2_DemonJar/DTCB209_tagMCFBCntRegainRemainTime.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/AI/HeroAI_Auto.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/AI/HeroAI_D2_LockMissionTarget.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/HeroBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GAMgr.cs 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GA_Player.cs 274 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GActorPlayerBase.cs 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/DungeonStage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Achievement/AchievementGotoPart1.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Achievement/AchievementModel.cs 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Activity/ActivityNotifyBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BetterItemGet/BetterEquipGetModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BetterItemGet/ItemUseModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BetterItemGet/PreciousItemGetModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BossShow/BossShowModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCtrl.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatTip.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestModel.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DogzDungeon/DogzDungeonWin.cs 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonBeginCoolDownWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonBreifInfo.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonBuyTimesWin.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonDefeatedWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonDifficultySelectBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonEndCoolDownWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonEnterInfo.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonFightWin.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonGradeWin.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonInspireBehaviour.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonMissionDetailsWin.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonMissionHintWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonModel.cs 364 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonNuwaVictoryWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonPickUpItemCoolDownWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonRuneTowerVictoryWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonStageTimeWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonSuppliesLackWin.cs 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonSweepResultWin.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonSweepWin.cs 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonTargetBehaviour.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonVictoryWin.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/MultipleDifficultyDungeonWin.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/NormalDungeonEntranceWin.cs 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TargetBriefInfoWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TreasureDungeonMissionHintWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonEntranceWin.cs 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonSelectBehaviour.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonSelectWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialExchangeWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyBoss.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyBossModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyFeastBehaviour.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyGrabBossModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyLeagueWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/BossHomeModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/BossHomeWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/DemonJarDamageRankWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/DemonJarModel.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/DemonJarVictoryWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/DemonJarWin.cs 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/ElderGodAngerWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/ElderGodAreaExitWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/ElderGodAreaModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/ElderGodAreaWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousBossRebornBehaviour.cs 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/PersonalBossModel.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/PersonalBossWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/WorldBossWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Guard/GuardModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HeavenBattle/HeavenBattleWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HeavenBattle/XMZZMissionDetailsWin.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HttpRequest/HttpBehaviour.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemOverdueModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Login/LoginWin.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/ChatFrame.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/HoistingWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/InGamePushContainer.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/MainInterfaceWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainWin/SkillContainer.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Message/RichFbEvent.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/PlayerDead/PlayerDeadModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Realm/RealmCollectWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Realm/RealmUpWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneTowerModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneTowerSweepBuyWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneTowerSweepResultWin.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneTowerWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/SkillAccordWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/TaiChi/TaiChilDungeonEntranceWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/TaiChi/WytjGameWin.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/GroupDungeonChallengeProcessor.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/MyTeamWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamData.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamInvitationBehaviour.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamInvitationWin.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamModel.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamPrepareWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamSubMissionBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamTargetJoinLimitWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/DemonTreasureCollectPanel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureAnimation.cs 71 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureComponent.cs 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureDemonBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureDungeonVictoryWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureLevelUpWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasurePotentialBriefInfo.cs 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasurePotentialLines.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasurePotentialPanel.cs 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureSoulWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI/Common/EnableAccordingToMap.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI/Common/UI3DShowHero.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI/HUD/NPCDialogueBubble.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/EnumHelper.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/LanguageVerify.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/OperationLogCollect.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/UIHelper.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Character/PlayerBaseData.cs
@@ -76,7 +76,7 @@
    {
        AccID = _serverInfo.AccID;
        PlayerID = _serverInfo.PlayerID;
        PlayerName = _serverInfo.PlayerName;
        PlayerName = _serverInfo.PlayerName.Trim();
        AccState = _serverInfo.AccState;
        GMLevel = _serverInfo.GMLevel;
        Sex = _serverInfo.Sex;
@@ -87,7 +87,7 @@
        ExpPoint = _serverInfo.ExpPoint;
        TotalExp = _serverInfo.TotalExp;
        Family = _serverInfo.Family;
        FamilyName = _serverInfo.FamilyName;
        FamilyName = _serverInfo.FamilyName.Trim();
        Gold = _serverInfo.Gold;
        GoldPaper = _serverInfo.GoldPaper;
        Silver = _serverInfo.Silver;
Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs
@@ -54,4 +54,5 @@
    public int pkState;//是否在pk中 175 1--进入状态 2--退出状态
    public int bossState;//Boss状态  176 1--进入状态 2--退出状态
    public int OnlyFinalHurt;
    public int NpcHurtAddPer;//对怪物伤害加成 188
}
Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -728,6 +728,9 @@
            case PlayerDataRefresh.OnlyFinalHurt:
                extersion.OnlyFinalHurt = (int)value;
                break;
            case PlayerDataRefresh.CDBPlayerRefresh_NPCHurtAddPer:
                extersion.NpcHurtAddPer = (int)value;
                break;
        }
    }
Core/GameEngine/Model/Player/Realm/RealmModel.cs
@@ -333,11 +333,11 @@
            }
            if (_realmCfg != null && _realmCfg.IsBigRealm == 1)
            {
                dungeonModel.GroupChallengeDungeon(REALM_DUNGEON_ID, 1);
                dungeonModel.GroupChallenge(REALM_DUNGEON_ID, 1);
            }
            else
            {
                dungeonModel.SingleChallengeDungeon(REALM_DUNGEON_ID);
                dungeonModel.SingleChallenge(REALM_DUNGEON_ID);
            }
        }
Core/GameEngine/Model/TelPartialConfig/tagChinSkillConfig.cs
@@ -104,6 +104,7 @@
            m_Skills.TryGetValue(occupy, out dic);
            return dic;
        }
        //------坐骑技能获取
        public static SkillConfig GetSkillTypeIDAndSkillLV(int _SkillTypeID, int SkillLV)
        {
@@ -112,7 +113,20 @@
            SkillConfig _tagChinSkillModel = null;
            T_HorseSkill.TryGetValue(_textBuilder.ToString(), out _tagChinSkillModel);
            return _tagChinSkillModel;
        }
        public static int FindSkillByJob(int[] skillIds,int job)
        {
            foreach (var skill in skillIds)
            {
                var config = Config.Instance.Get<SkillConfig>(skill);
                if (config != null && (config.UseType == 0 || config.UseType == 1 << job))
                {
                    return skill;
                }
            }
            return 0;
        }
    }
Core/NetworkPackage/ClientPack/ClientToMapServer/CB9_Team/CB90A_tagCGInvitePlayerJoinTeamByLV.cs
@@ -3,18 +3,21 @@
// B9 0A 按条件邀请玩家加入队伍 #tagCGInvitePlayerJoinTeamByLV
public class CB90A_tagCGInvitePlayerJoinTeamByLV : GameNetPackBasic {
public class CB90A_tagCGInvitePlayerJoinTeamByLV : GameNetPackBasic
{
    public ushort LVLimit;    // 目标玩家大于等于此等级
    public byte InviteCnt;    // 邀请玩家个数
    public CB90A_tagCGInvitePlayerJoinTeamByLV () {
        combineCmd = (ushort)0x03FE;
    public CB90A_tagCGInvitePlayerJoinTeamByLV()
    {
        combineCmd = (ushort)0x1801;
        _cmd = (ushort)0xB90A;
    }
    public override void WriteToBytes () {
        WriteBytes (LVLimit, NetDataType.WORD);
        WriteBytes (InviteCnt, NetDataType.BYTE);
    public override void WriteToBytes()
    {
        WriteBytes(LVLimit, NetDataType.WORD);
        WriteBytes(InviteCnt, NetDataType.BYTE);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/H01_System/DTC0102_tagCDBPlayer.cs
@@ -60,7 +60,7 @@
        if (_mapConfig.MapFBType != 0)
        {
            DungeonModel _model = ModelCenter.Instance.GetModel<DungeonModel>();
            _realMapDataID = _model.GetDungeonDataIdByMapId(vNetData.MapID);
            _realMapDataID = _model.GetDataMapIdByMapId(vNetData.MapID);
            if (vNetData.MapID != 52020 && vNetData.MapID != 52010)
            {
@@ -96,7 +96,7 @@
        if (DungeonStage.CurrentMapType != MapType.OpenCountry)
        {
            DungeonModel _dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            int _dgDataID = _dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            int _dgDataID = _dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dungeonOpen = Config.Instance.Get<DungeonOpenTimeConfig>(_dgDataID);
            if (dungeonOpen != null)
Core/NetworkPackage/DTCFile/ServerPack/H03_MainCharacter/DTC0319_tagFBHelp.cs
@@ -19,7 +19,7 @@
        base.Done(vNetPack);
        H0319_tagFBHelp vNetData = vNetPack as H0319_tagFBHelp;
        model.UpdateDungeonMission(vNetData.Msg);
        model.UpdateMission(vNetData.Msg);
        switch (PlayerDatas.Instance.baseData.MapID)
        {
Core/NetworkPackage/DTCFile/ServerPack/H03_MainCharacter/DTC0320_tagFBEnd.cs
@@ -12,6 +12,6 @@
        H0320_tagFBEnd vNetData = vNetPack as H0320_tagFBEnd;
        var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
        dungeonModel.ProcessDungeonResult(vNetData.Msg);
        dungeonModel.ProcessResult(vNetData.Msg);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0405_tagPlayerDisappear.cs
@@ -30,6 +30,9 @@
            {
                GAMgr.Instance.ServerDie(vNetData.Players[i]);
                GAMgr.Instance.Release(_actor);
                // 离线玩家
                GAMgr.Instance.RemoveOffLinePlayer(vNetData.Players[i]);
            }
            else
            {
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs
@@ -8,6 +8,6 @@
        base.Done(vNetPack);
        H0431_tagTimeTick vNetData = vNetPack as H0431_tagTimeTick;
        var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
        dungeonModel.UpdateDungeonCoolDown((DungeonCoolDownType)vNetData.Type,vNetData.Tick);
        dungeonModel.UpdateCoolDown((DungeonCoolDownType)vNetData.Type,vNetData.Tick);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0434_tagAreaPlayerAppearEx.cs
@@ -1,8 +1,10 @@
using UnityEngine;
using System.Collections;
//04 34 周围玩家出现合并封包#tagAreaPlayerAppearEx
//04 34 周围玩家出现合并封包#tagAreaPlayerAppearEx
public class DTC0434_tagAreaPlayerAppearEx : DtcBasic
{
    public override void Done(GameNetPackBasic vNetPack)
@@ -21,6 +23,12 @@
        if (_player != null)
        {
            // 异常
        }
        // 离线玩家
        if (vNetData.State == 1)
        {
            GAMgr.Instance.AddOffLinePlayer(vNetData.PlayerID);
        }
        _player = GAMgr.Instance.RequestPlayer<GA_Player>(vNetData.PlayerID, E_ActorGroup.Player, vNetData);
@@ -70,5 +78,7 @@
            StatusMgr.Instance.Request(_h0605);
        }
    }
}
}
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA126_tagMCPrepareChangeMap.cs
@@ -33,7 +33,7 @@
        if (_mapConfig.MapFBType != 0)
        {
            DungeonModel _model = ModelCenter.Instance.GetModel<DungeonModel>();
            _realMapDataID = _model.GetDungeonDataIdByMapId(_realMapDataID);
            _realMapDataID = _model.GetDataMapIdByMapId(_realMapDataID);
            if (package.MapID != 52020 && package.MapID != 52010)
            {
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA127_tagMCStartChangeMap.cs
@@ -26,7 +26,7 @@
        if (_mapConfig.MapFBType != 0)
        {
            DungeonModel _model = ModelCenter.Instance.GetModel<DungeonModel>();
            _realMapDataID = _model.GetDungeonDataIdByMapId(_realMapDataID);
            _realMapDataID = _model.GetDataMapIdByMapId(_realMapDataID);
        }
        var _key = _realMapDataID * 1000 + LineID;
@@ -63,7 +63,7 @@
        if (_mapConfig.MapFBType != 0)
        {
            DungeonModel _model = ModelCenter.Instance.GetModel<DungeonModel>();
            _realMapDataID = _model.GetDungeonDataIdByMapId(_realMapDataID);
            _realMapDataID = _model.GetDataMapIdByMapId(_realMapDataID);
            if (package.MapID != 52020 && package.MapID != 52010)
            {
@@ -146,7 +146,7 @@
            case 0:
                break;
            default:
                ModelCenter.Instance.GetModel<DungeonModel>().ResetDungeonBufData();
                ModelCenter.Instance.GetModel<DungeonModel>().ResetBufData();
                break;
        }
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA30A_tagMCFBEncourageInfo.cs
@@ -21,7 +21,7 @@
        base.Done(vNetPack);
        HA30A_tagMCFBEncourageInfo vNetData = vNetPack as HA30A_tagMCFBEncourageInfo;
        model.UpdateDugeonInspireLv(vNetData.Cnt1, vNetData.Cnt2);
        model.UpdateInspireLevel(vNetData.Cnt1, vNetData.Cnt2);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA320_tagMCPlayerFBInfoData.cs
@@ -19,7 +19,7 @@
        base.Done(vNetPack);
        var data = vNetPack as HA320_tagMCPlayerFBInfoData;
        model.UpdateDungeonRecords(data.FBDataList);
        model.UpdateRecords(data.FBDataList);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/HA3_Function/DTCA3BD_tagMCBuyEnterInfo.cs
@@ -20,7 +20,7 @@
        HA3BD_tagMCBuyEnterInfo vNetData = vNetPack as HA3BD_tagMCBuyEnterInfo;
        if (vNetData.FBCount > 0) {
            model.UpdateDungeonRecords(vNetData.FBInfo);
            model.UpdateRecords(vNetData.FBInfo);
        }
    }
Core/NetworkPackage/DTCFile/ServerPack/HA7_Interaction/DTCA703_tagMCFBEnterTickList.cs
@@ -19,7 +19,7 @@
        HA703_tagMCFBEnterTickList vNetData = vNetPack as HA703_tagMCFBEnterTickList;
        if (vNetData.Cnt > 0) {
            model.UpdateDungeonEnterTime(vNetData.EnterTickList);
            model.UpdateEnterCD(vNetData.EnterTickList);
        }
    }
Core/NetworkPackage/DTCFile/ServerPack/HB2_DemonJar/DTCB209_tagMCFBCntRegainRemainTime.cs
@@ -15,7 +15,7 @@
        base.Done(vNetPack);
        var package = vNetPack as HB209_tagMCFBCntRegainRemainTime;
        ModelCenter.Instance.GetModel<DungeonModel>().UpdateDungeonCountRemaintime(package);
        ModelCenter.Instance.GetModel<DungeonModel>().UpdateCountRemaintime(package);
    }
}
Fight/Actor/AI/HeroAI_Auto.cs
@@ -94,7 +94,7 @@
        if (m_IsDungeon)
        {
            int _dgDataID = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            int _dgDataID = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dungeonOpen = Config.Instance.Get<DungeonOpenTimeConfig>(_dgDataID);
            if (dungeonOpen != null)
Fight/Actor/AI/HeroAI_D2_LockMissionTarget.cs
@@ -35,14 +35,14 @@
    private void UpdateMissionEvent()
    {
        DungeonModel _dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
        int _dataMapID = _dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
        int _dataMapID = _dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
        if (_dataMapID == 0)
        {
            return;
        }
        List<DungeonTarget> _targets = _dungeonModel.GetDungeonTargets(_dataMapID, _dungeonModel.mission.lineID, _dungeonModel.mission.step);
        List<DungeonTarget> _targets = _dungeonModel.GetTargets(_dataMapID, _dungeonModel.mission.lineID, _dungeonModel.mission.step);
        if (_targets == null)
        {
Fight/Actor/HeroBehaviour.cs
@@ -198,7 +198,7 @@
        // 判断是什么副本类型
        DungeonModel _dgModel = ModelCenter.Instance.GetModel<DungeonModel>();
        int _dataMapID = _dgModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
        int _dataMapID = _dgModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
        if (_dataMapID != 0)
        {
            int _configID = _dataMapID * 10 + _dgModel.mission.lineID;
Fight/GameActor/GAMgr.cs
@@ -63,6 +63,8 @@
    // 客户端id对应相应角色
    private Dictionary<uint, GActor> m_Cid2GA;
    private List<uint> m_OffLineList;
    // 服务端通知的死亡目标对应的客户端id,
    // 这里为了处理可能出现的无法死亡现象,对每一只目标进行计时,强制其死亡
    private List<uint> serverDeadList = new List<uint>();
@@ -85,10 +87,91 @@
            m_AllList = new List<GActor>();
            m_Sid2Cid = new Dictionary<uint, uint>();
            m_Cid2GA = new Dictionary<uint, GActor>();
            m_OffLineList = new List<uint>();
            m_Inited = true;
            SystemSetting.Instance.playerSyncCountChangeEvent += OnPlayerSyncCountChange;
            SystemSetting.Instance.OnSettingChanged += OnSettingChanged;
        }
    }
    public void AddOffLinePlayer(uint sid)
    {
        if (m_OffLineList.Contains(sid))
        {
            return;
        }
        m_OffLineList.Add(sid);
    }
    public void RemoveOffLinePlayer(uint sid)
    {
        if (m_OffLineList.Contains(sid))
        {
            m_OffLineList.Remove(sid);
        }
    }
    public void ClearOffLinePlayer()
    {
        m_OffLineList.Clear();
    }
    private float m_UpdateOffLineInterval;
    private List<uint> m_CacheList = new List<uint>();
    private List<uint> m_ContaintList = new List<uint>();
    private void UpdateOffLinePlayer()
    {
        if (m_OffLineList == null || m_OffLineList.Count == 0)
        {
            return;
        }
        if (Time.realtimeSinceStartup - m_UpdateOffLineInterval > 2)
        {
            m_CacheList.Clear();
            m_ContaintList.Clear();
            int _count = Mathf.Min(m_OffLineList.Count, 4);
            //Debug.LogFormat("此次将会有: {0} 个挂机者释放技能", _count);
            for (int i = 0; i < m_OffLineList.Count; ++i)
            {
                m_CacheList.Add(m_OffLineList[i]);
            }
            int _time = 0;
            while (m_ContaintList.Count < _count)
            {
                int _index = UnityEngine.Random.Range(0, m_CacheList.Count);
                m_ContaintList.Add(m_CacheList[_index]);
                //Debug.LogFormat("添加对象: {0}, 已添加: {1} 个", m_CacheList[_index], m_ContaintList.Count);
                m_CacheList.RemoveAt(_index);
                if (_time > _count)
                {
                    //Debug.LogFormat("共添加了: {0} 个玩家", m_ContaintList.Count);
                    break;
                }
                _time++;
            }
            GA_Player _player = null;
            for (int i = 0; i < m_ContaintList.Count; ++i)
            {
                _player = GAMgr.Instance.GetBySID(m_ContaintList[i]) as GA_Player;
                if (_player == null)
                {
                    continue;
                }
                _player.UpdateOffLineAction();
            }
            m_UpdateOffLineInterval = Time.realtimeSinceStartup;
        }
    }
@@ -838,6 +921,8 @@
        {
            m_AllList[i].Update();
        }
        UpdateOffLinePlayer();
    }
    public void DoLateUpdate()
Fight/GameActor/GA_Player.cs
@@ -9,23 +9,16 @@
    // 为守护特殊定义的当前是否装备守护id
    public int serverGuardId;
    // 简易的脱机挂AI草稿
    // 步骤 1. 寻点 2. 移动至 3. 放个普攻
    private byte m_Step;
    private Vector3 m_DestPos;
    private Vector3 m_RecordBornPos;
    private float m_WaitTime;
    public static UnityAction<uint, bool> s_OnSelected;
    public static UnityAction<uint, ulong, ulong> s_OnRefreshLife;
    private H0434_tagAreaPlayerAppearEx m_H0434;
    protected H0434_tagAreaPlayerAppearEx m_H0434;
    private CmdManager m_CmdManager;
    private int m_ComAtkIndex;// 普攻索引
    private Skill m_CastSkill;// 要释放的技能
    protected sealed override void OnInit(GameNetPackBasic package)
    private int m_ComAtkIndex;// 普攻索引
    protected override void OnInit(GameNetPackBasic package)
    {
        m_H0434 = package as H0434_tagAreaPlayerAppearEx;
@@ -141,6 +134,11 @@
            SwitchWeapon(0);
        }
        if (SecondaryID == 0 || SecondaryID == uint.MaxValue)
        {
            SwitchSecondary(0);
        }
        ActorInfo.LV = m_H0434.LV;
        ActorInfo.familyName = m_H0434.FamilyName;
        ActorInfo.ReincarnationLv = m_H0434.ReincarnationLv;
@@ -157,12 +155,6 @@
        RequestName();
        m_CmdManager = new CmdManager();
        if (m_H0434.State == 1)
        {
            m_RecordBornPos = Pos;
            m_Step = 0;
        }
    }
    protected sealed override void OnUnit()
@@ -183,151 +175,13 @@
    {
    }
    protected sealed override void OnUpdate()
    protected override void OnUpdate()
    {
        base.OnUpdate();
        if (m_CmdManager != null)
        {
            m_CmdManager.Update();
        }
        // 脱机挂
        if (m_H0434.State == 1)
        {
            switch (m_Step)
            {
                case 0:
                    //m_DestPos = m_RecordBornPos + Quaternion.Euler(0, Random.Range(0, 359), 0) * Vector3.forward * Random.Range(1f, 2f);
                    //TryGetValidPos(m_DestPos, ref m_DestPos);
                    if (SelectTarget == null)
                    {
                        SelectTarget = GAMgr.Instance.GetCloserFightNpc(Pos);
                    }
                    if (SelectTarget != null)
                    {
                        destForward = Forward = MathUtility.ForwardXZ(SelectTarget.Pos, Pos);
                    }
                    m_Step = 1;
                    break;
                case 1:
                    m_CastSkill = null;
                    for (int i = 0; i < JobSetup.HangupSkillList.Length; ++i)
                    {
                        if (SkillMgr.Get(JobSetup.HangupSkillList[i]).IsValid())
                        {
                            m_CastSkill = SkillMgr.Get(JobSetup.HangupSkillList[i]);
                            break;
                        }
                    }
                    if (m_CastSkill == null)
                    {
                        if (m_ComAtkIndex > JobSetup.ComAtkIdList.Length - 1)
                        {
                            m_ComAtkIndex = 0;
                        }
                        int _comSkillId = JobSetup.ComAtkIdList[m_ComAtkIndex];
                        m_CastSkill = SkillMgr.Get(_comSkillId);
                        m_ComAtkIndex += 1;
                    }
                    m_Step = 2;
                    break;
                case 2:
                    if (m_CastSkill != null)
                    {
                        SkillMgr.CastSkill(ServerInstID, m_CastSkill.id, true);
                        Vector3 _targetPosition = Pos + Forward * (m_CastSkill.skillInfo.config.AtkDist * .5f);
                        _targetPosition.y = 0;
                        UnityEngine.AI.NavMeshHit _navMeshHit;
                        if (UnityEngine.AI.NavMesh.Raycast(Pos, _targetPosition, out _navMeshHit, -1))
                        {
                            _targetPosition = _navMeshHit.position;
                        }
                        _targetPosition.y = Pos.y;
                        m_CastSkill.targetPosition = _targetPosition;
                        if (m_CastSkill.skillInfo.config.Skillactmark > 0
                         && m_CastSkill.skillInfo.config.Skillactmark < 20)
                        {
                            switch (m_CastSkill.skillInfo.config.Skillactmark)
                            {
                                case 10:
                                    Play(GAStaticDefine.State_Attack1Hash, 0);
                                    break;
                                case 11:
                                    Play(GAStaticDefine.State_Attack2Hash, 0);
                                    break;
                                case 12:
                                    Play(GAStaticDefine.State_Attack3Hash, 0);
                                    break;
                                case 13:
                                    Play(GAStaticDefine.State_Attack4Hash, 0);
                                    break;
                            }
                        }
                        else
                        {
                            switch (m_CastSkill.skillInfo.config.Skillactmark)
                            {
                                case 21:
                                    Play(GAStaticDefine.State_Skill21, 0);
                                    break;
                                case 22:
                                    Play(GAStaticDefine.State_Skill22, 0);
                                    break;
                                case 23:
                                    Play(GAStaticDefine.State_Skill23, 0);
                                    break;
                                case 24:
                                    Play(GAStaticDefine.State_Skill24, 0);
                                    break;
                                case 25:
                                    Play(GAStaticDefine.State_Skill25, 0);
                                    break;
                                case 26:
                                    Play(GAStaticDefine.State_Skill26, 0);
                                    break;
                                case 27:
                                    Play(GAStaticDefine.State_Skill27, 0);
                                    break;
                                case 28:
                                    Play(GAStaticDefine.State_Skill28, 0);
                                    break;
                                case 29:
                                    Play(GAStaticDefine.State_Skill29, 0);
                                    break;
                                case 99:
                                    Play(GAStaticDefine.State_RollHash, 0);
                                    break;
                            }
                        }
                    }
                    m_Step = 3;
                    break;
                case 3:
                    if (IsIdle())
                    {
                        m_Step = 0;
                    }
                    break;
            }
        }
    }
@@ -695,4 +549,112 @@
    {
        m_CmdManager.Clear();
    }
    public void UpdateOffLineAction()
    {
        if (!IsIdle())
        {
            return;
        }
        if (SelectTarget == null)
        {
            SelectTarget = GAMgr.Instance.GetCloserFightNpc(Pos);
        }
        if (SelectTarget != null)
        {
            destForward = Forward = MathUtility.ForwardXZ(SelectTarget.Pos, Pos);
        }
        Skill _castSkill = null;
        int _skillIndex = UnityEngine.Random.Range(0, JobSetup.HangupSkillList.Length);
        if (SkillMgr.Get(JobSetup.HangupSkillList[_skillIndex]).IsValid())
        {
            _castSkill = SkillMgr.Get(JobSetup.HangupSkillList[_skillIndex]);
        }
        if (_castSkill == null)
        {
            if (m_ComAtkIndex > JobSetup.ComAtkIdList.Length - 1)
            {
                m_ComAtkIndex = 0;
            }
            int _comSkillId = JobSetup.ComAtkIdList[m_ComAtkIndex];
            _castSkill = SkillMgr.Get(_comSkillId);
            m_ComAtkIndex += 1;
        }
        if (_castSkill != null)
        {
            SkillMgr.CastSkill(ServerInstID, _castSkill.id, true);
            Vector3 _targetPosition = Pos + Forward * (_castSkill.skillInfo.config.AtkDist * .5f);
            _targetPosition.y = 0;
            UnityEngine.AI.NavMeshHit _navMeshHit;
            if (UnityEngine.AI.NavMesh.Raycast(Pos, _targetPosition, out _navMeshHit, -1))
            {
                _targetPosition = _navMeshHit.position;
            }
            _targetPosition.y = Pos.y;
            _castSkill.targetPosition = _targetPosition;
            if (_castSkill.skillInfo.config.Skillactmark > 0
             && _castSkill.skillInfo.config.Skillactmark < 20)
            {
                switch (_castSkill.skillInfo.config.Skillactmark)
                {
                    case 10:
                        Play(GAStaticDefine.State_Attack1Hash, 0);
                        break;
                    case 11:
                        Play(GAStaticDefine.State_Attack2Hash, 0);
                        break;
                    case 12:
                        Play(GAStaticDefine.State_Attack3Hash, 0);
                        break;
                    case 13:
                        Play(GAStaticDefine.State_Attack4Hash, 0);
                        break;
                }
            }
            else
            {
                switch (_castSkill.skillInfo.config.Skillactmark)
                {
                    case 21:
                        Play(GAStaticDefine.State_Skill21, 0);
                        break;
                    case 22:
                        Play(GAStaticDefine.State_Skill22, 0);
                        break;
                    case 23:
                        Play(GAStaticDefine.State_Skill23, 0);
                        break;
                    case 24:
                        Play(GAStaticDefine.State_Skill24, 0);
                        break;
                    case 25:
                        Play(GAStaticDefine.State_Skill25, 0);
                        break;
                    case 26:
                        Play(GAStaticDefine.State_Skill26, 0);
                        break;
                    case 27:
                        Play(GAStaticDefine.State_Skill27, 0);
                        break;
                    case 28:
                        Play(GAStaticDefine.State_Skill28, 0);
                        break;
                    case 29:
                        Play(GAStaticDefine.State_Skill29, 0);
                        break;
                    case 99:
                        Play(GAStaticDefine.State_RollHash, 0);
                        break;
                }
            }
        }
    }
}
Fight/GameActor/GActorPlayerBase.cs
@@ -314,6 +314,7 @@
    private GameObject m_ClothesModel;
    private GameObject m_WeaponModel;
    private GameObject m_SecondaryModel;
    private GameObject m_HandModel;
    private GameObject m_WingModel;
    private GameObject m_HorseModel;
    private GA_Guard m_Guard;
@@ -517,10 +518,14 @@
        }
        int _resID = JobSetup.BaseEquip[2];
        ItemConfig _clothesItemConfig = Config.Instance.Get<ItemConfig>((int)ClothesItemID);
        if (_clothesItemConfig != null)
        if (JobSetup.Job == 1)
        {
            _resID = _clothesItemConfig.ChangeOrd + 2900;
            if (_clothesItemConfig != null)
            {
                _resID = _clothesItemConfig.ChangeOrd + 2900;
            }
        }
        ItemConfig _itemConfig = null;
@@ -546,9 +551,13 @@
            if (SecondaryID == 0)
            {
                int _baseHandResId = JobSetup.BaseEquip[2];
                if (_clothesItemConfig != null)
                if (JobSetup.Job == 1)
                {
                    _baseHandResId = _clothesItemConfig.ChangeOrd + 2900;
                    if (_clothesItemConfig != null)
                    {
                        _baseHandResId = _clothesItemConfig.ChangeOrd + 2900;
                    }
                }
                if (!TryRelease(_baseHandResId, m_SecondaryModel))
Fight/Stage/Dungeon/DungeonStage.cs
@@ -249,7 +249,7 @@
        _dungeonModel.dungeonBeginCoolDownEndEvent -= HandleAutoFight;
        _dungeonModel.updateMissionEvent -= HandleAutoFight;
        int _dgDataID = _dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
        int _dgDataID = _dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
        var dungeonOpen = Config.Instance.Get<DungeonOpenTimeConfig>(_dgDataID);
        if (dungeonOpen != null)
System/Achievement/AchievementGotoPart1.cs
@@ -39,7 +39,7 @@
            }
            else
            {
                var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(location.mapId);
                var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(location.mapId);
                switch (dataMapId)
                {
                    case DemonJarModel.DEMONJAR_MAPID:
@@ -142,8 +142,8 @@
        {
            var config = Config.Instance.Get<SuccessConfig>(_achievementId);
            var dataMapId = config.Condition[0];
            var canBuyTimes = dungeonModel.GetDungeonBuyTimesLimit(dataMapId);
            var boughtTimes = dungeonModel.GetDungeonBoughtTimes(dataMapId);
            var canBuyTimes = dungeonModel.GetBuyTimesLimit(dataMapId);
            var boughtTimes = dungeonModel.GetBoughtTimes(dataMapId);
            if (canBuyTimes > 0 && canBuyTimes > boughtTimes)
            {
System/Achievement/AchievementModel.cs
@@ -116,6 +116,7 @@
            {
                return this == (AchievementCondition)obj;
            }
            public override int GetHashCode()
            {
                var _value = type;
@@ -125,6 +126,7 @@
                }
                return _value.GetHashCode();
            }
            public static bool operator ==(AchievementCondition x, AchievementCondition y)
            {
                if (x.type != y.type)
@@ -144,6 +146,7 @@
                }
                return true;
            }
            public static bool operator !=(AchievementCondition x, AchievementCondition y)
            {
                return !(x == y);
@@ -225,7 +228,6 @@
                            {
                                var mapId = PlayerDatas.Instance.baseData.MapID;
                                var mapConfig = Config.Instance.Get<MapConfig>(mapId);
                                if (mapConfig != null && mapConfig.MapFBType != 0)
                                {
                                    SysNotifyMgr.Instance.ShowTip("InDungeon_CantGo");
@@ -248,7 +250,6 @@
                    case 4:
                    case 86:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        var mapModel = ModelCenter.Instance.GetModel<MapModel>();
                        var pointId = mapModel.GetRecommendHangPoint();
                        var mapEventConfig = Config.Instance.Get<MapEventPointConfig>(pointId);
@@ -257,13 +258,11 @@
                        break;
                    case 36:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        MapTransferUtility.Instance.MoveToNPC(config.Condition[0]);
                        break;
                    case 37:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        MapTransferUtility.Instance.MoveToLocalMapPosition(config.Condition2.Vector3Parse());
                        break;
@@ -408,7 +407,7 @@
                    case 109:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        var skillId = FindSkillByJob(config.Condition, PlayerDatas.Instance.baseData.Job);
                        var skillId = SkillConfig.FindSkillByJob(config.Condition, PlayerDatas.Instance.baseData.Job);
                        if (skillId != 0)
                        {
                            if (ModelCenter.Instance.GetModel<SkillModel>().GetXpSkillID() == skillId)
@@ -454,8 +453,8 @@
        private string GetHighestSorceEquipByPlace(List<int> _places)
        {
            var package = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = package.GetPackModelIndexDict();
            var itemPackage = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = itemPackage.GetPackModelIndexDict();
            var guid = string.Empty;
            var equips = new List<string>();
@@ -478,15 +477,14 @@
        private string GetBetterEquipByPlace(List<int> _places)
        {
            var package = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = package.GetPackModelIndexDict();
            var equipPackage = playerPack.GetSinglePackModel(PackType.rptEquip);
            var itemPackage = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = itemPackage.GetPackModelIndexDict();
            var guid = string.Empty;
            var equips = new List<string>();
            var score = 0;
            var job = PlayerDatas.Instance.baseData.Job;
            var equipPackage = playerPack.GetSinglePackModel(PackType.rptEquip);
            foreach (var item in allItems.Values)
            {
                var overdue = packModelInterface.IsOverdue(item.itemInfo.ItemGUID, item.itemId, item.useDataDict);
@@ -507,15 +505,14 @@
        public string GetBetterEquipByPlace()
        {
            var package = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = package.GetPackModelIndexDict();
            var equipPackage = playerPack.GetSinglePackModel(PackType.rptEquip);
            var itemPackage = playerPack.GetSinglePackModel(PackType.rptItem);
            var allItems = itemPackage.GetPackModelIndexDict();
            var guid = string.Empty;
            var equips = new List<string>();
            var score = 0;
            var job = PlayerDatas.Instance.baseData.Job;
            var equipPackage = playerPack.GetSinglePackModel(PackType.rptEquip);
            foreach (var item in allItems.Values)
            {
                var config = Config.Instance.Get<ItemConfig>(item.itemId);
@@ -536,21 +533,6 @@
            }
            return guid;
        }
        public int FindSkillByJob(int[] _skillIds, int _job)
        {
            foreach (var skill in _skillIds)
            {
                var config = Config.Instance.Get<SkillConfig>(skill);
                if (config != null && (config.UseType == 0 || config.UseType == 1 << _job))
                {
                    return skill;
                }
            }
            return 0;
        }
        private void ProcessAchievementGotoGuide(int _achievementId)
System/Activity/ActivityNotifyBehaviour.cs
@@ -111,7 +111,7 @@
                        }
                        break;
                    case DailyQuestType.FairyFeast:
                        dungeonModel.SingleChallengeDungeon(config.RelatedID);
                        dungeonModel.SingleChallenge(config.RelatedID);
                        break;
                    case DailyQuestType.Trial:
                        {
System/BetterItemGet/BetterEquipGetModel.cs
@@ -287,7 +287,7 @@
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var lineId = PlayerDatas.Instance.baseData.dungeonLineId;
            var dungeonId = dungeonModel.DungeonMap(dungeonModel.GetDungeonDataIdByMapId(mapId), lineId);
            var dungeonId = dungeonModel.GetDungeonId(dungeonModel.GetDataMapIdByMapId(mapId), lineId);
            if (dungeonId == 0)
            {
                return true;
System/BetterItemGet/ItemUseModel.cs
@@ -158,7 +158,7 @@
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var lineId = PlayerDatas.Instance.baseData.dungeonLineId;
            var dungeonId = dungeonModel.DungeonMap(dungeonModel.GetDungeonDataIdByMapId(mapId), lineId);
            var dungeonId = dungeonModel.GetDungeonId(dungeonModel.GetDataMapIdByMapId(mapId), lineId);
            if (dungeonId == 0)
            {
                return true;
System/BetterItemGet/PreciousItemGetModel.cs
@@ -184,7 +184,7 @@
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var lineId = PlayerDatas.Instance.baseData.dungeonLineId;
            var dungeonId = dungeonModel.DungeonMap(dungeonModel.GetDungeonDataIdByMapId(mapId), lineId);
            var dungeonId = dungeonModel.GetDungeonId(dungeonModel.GetDataMapIdByMapId(mapId), lineId);
            if (dungeonId == 0)
            {
                return true;
System/BossShow/BossShowModel.cs
@@ -164,7 +164,7 @@
            var _hero = PlayerDatas.Instance.hero;
            if (_handleFight && _hero != null && !_hero.ActorInfo.serverDie)
            {
                int _dgDataID = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                int _dgDataID = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                var dungeonOpen = Config.Instance.Get<DungeonOpenTimeConfig>(_dgDataID);
                if (dungeonOpen != null)
                {
@@ -495,7 +495,7 @@
            if (_dungeonCfg != null && _dungeonCfg.FBType != 1)
            {
                var _team = ModelCenter.Instance.GetModel<TeamModel>();
                if (_team.myTeam.GetOnlineMemberCnt() > 1)
                if (_team.myTeam.GetOnlineMemberCount() > 1)
                {
                    SetState((DungeonShowType)_showModel.NpcID);
                    SendGuideComplete((DungeonShowType)_showModel.NpcID);
System/Chat/ChatCtrl.cs
@@ -257,7 +257,8 @@
        ChatReport(type, msg, PteChatName);
        if (!ChatCenter.s_VoiceRegex.IsMatch(msg))
        if (!ChatCenter.s_VoiceRegex.IsMatch(msg)
            && !InviteRegex.IsMatch(msg))
        {
            _dirty = DirtyWordConfig.IsDirtWord(msg);
            msg = DirtyWordConfig.IsDirtWord(msg, '*');
System/Chat/ChatTip.cs
@@ -150,7 +150,7 @@
            return;
        }
        ChatCtrl.Inst.presentChatType = ChatInfoType.World;
        var mapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
        var mapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
        if (mapId == 31230)
        {
            ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
@@ -216,7 +216,7 @@
            return;
        }
        ChatCtrl.Inst.presentChatType = data.type;
        var mapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
        var mapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
        if (mapId == 31230)
        {
            ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
System/DailyQuest/DailyQuestBehaviour.cs
@@ -364,7 +364,7 @@
        {
            if (dailyQuestConfig.RelatedType == 2 && state == DailyQuestModel.DailyQuestState.Normal)
            {
                var cd = dungeonModel.DungeonEnterData(dailyQuestConfig.RelatedID);
                var cd = dungeonModel.GetEnterCD(dailyQuestConfig.RelatedID);
                if (cd != null && cd.overdueTime > DateTime.Now)
                {
                    UpdateGotoTitle((int)(cd.overdueTime - DateTime.Now).TotalSeconds);
System/DailyQuest/DailyQuestModel.cs
@@ -282,7 +282,7 @@
                        return 0;
                    }
                case 2:
                    return dungeonModel.GetDungeonTotalTimes(config.RelatedID);
                    return dungeonModel.GetTotalTimes(config.RelatedID);
            }
            return 0;
@@ -304,7 +304,7 @@
                    }
                case 2:
                    DungeonRecord dungeonRecord;
                    if (dungeonModel.TryGetDungeonRecord(config.RelatedID, out dungeonRecord))
                    if (dungeonModel.TryGetRecord(config.RelatedID, out dungeonRecord))
                    {
                        return dungeonRecord.enterTimes;
                    }
@@ -332,7 +332,7 @@
        public int GetDungeonEnterNums(int relatedID)
        {
            DungeonRecord dungeonRecord;
            if (dungeonModel.TryGetDungeonRecord(relatedID, out dungeonRecord))
            if (dungeonModel.TryGetRecord(relatedID, out dungeonRecord))
            {
                return dungeonRecord.enterTimes;
            }
@@ -576,7 +576,7 @@
                    else
                    {
                        var dailyQuestConfig = Config.Instance.Get<DailyQuestConfig>(_questId);
                        var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                        var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                        if (dailyQuestConfig.RelatedType == 2 && dataMapId == dailyQuestConfig.RelatedID)
                        {
                            dailyQuest.redpoint.state = RedPointState.None;
@@ -786,7 +786,7 @@
                case DailyQuestType.BossHome:
                    return ModelCenter.Instance.GetModel<VipModel>().GetVipPrivilegeCnt(VipPrivilegeType.BossHomeAwardLimit) > 0;
                case DailyQuestType.PersonalBoss:
                    return ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonTotalTimes(PersonalBossModel.PERSONALBOSS_MAPID) > 0;
                    return ModelCenter.Instance.GetModel<DungeonModel>().GetTotalTimes(PersonalBossModel.PERSONALBOSS_MAPID) > 0;
                default:
                    return true;
            }
@@ -851,9 +851,9 @@
                        }
                    case 2:
                        DungeonRecord record;
                        dungeonModel.TryGetDungeonRecord(config.RelatedID, out record);
                        dungeonModel.TryGetRecord(config.RelatedID, out record);
                        var buyTimes = record != null ? record.buyTimes : 0;
                        var buyTimesLimit = dungeonModel.GetDungeonBuyTimesLimit(config.RelatedID);
                        var buyTimesLimit = dungeonModel.GetBuyTimesLimit(config.RelatedID);
                        return buyTimes >= buyTimesLimit ? DailyQuestState.Completed : DailyQuestState.CanBuyTimes;
                }
            }
System/DailyQuest/DailyQuestWin.cs
@@ -259,7 +259,7 @@
                    break;
                case DailyQuestType.FairyFeast:
                    var config = Config.Instance.Get<DailyQuestConfig>(_id);
                    dungeonModel.SingleChallengeDungeon(config.RelatedID);
                    dungeonModel.SingleChallenge(config.RelatedID);
                    break;
                case DailyQuestType.RuneTowerSweep:
                    RuneTowerWin.guideSweep = true;
System/DogzDungeon/DogzDungeonWin.cs
@@ -15,7 +15,6 @@
    public class DogzDungeonWin : Window
    {
        [SerializeField] CyclicScroll m_Bosses;
        [SerializeField] DogzBoxBehaviour m_BoxBehaviour;
        [SerializeField] DogzEliteMonsterBehaviour m_EliteMonsterBehaviour;
@@ -83,7 +82,7 @@
            m_Bosses.Init(bosses);
            m_Bosses.MoveToCenter(bosses.IndexOf(model.selectedBoss));
            // DisplayItemDropTip(model.selectedBoss);
            DisplayItemDropTip(model.selectedBoss);
            DisplayBossBaseInfo(model.selectedBoss);
            DisplayWearyValue(model.selectedBoss);
        }
@@ -140,7 +139,7 @@
        private void OnBossSelected(int _bossId)
        {
            //DisplayItemDropTip(_bossId);
            DisplayItemDropTip(_bossId);
            DisplayBossBaseInfo(_bossId);
            DisplayWearyValue(_bossId);
        }
@@ -225,30 +224,6 @@
                    break;
            }
        }
        private void EnterDogzDungeon()
        {
            var error = 0;
            if (TestEnterDungeon(out error))
            {
                MapTransferUtility.Instance.MoveToNPC(model.selectedBoss);
            }
            else
            {
                ProcessEnterDungeonError(error);
            }
        }
        private bool TestEnterDungeon(out int _error)
        {
            _error = 0;
            return true;
        }
        private void ProcessEnterDungeonError(int _error)
        {
        }
    }
System/Dungeon/DungeonBeginCoolDownWin.cs
@@ -39,7 +39,7 @@
        protected override void OnPreOpen()
        {
            beginTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.WaitStart);
            beginTime = model.GetCoolDownEndTime(DungeonCoolDownType.WaitStart);
            model.dungeonCoolDownEvent += OnBeginTimeEvent;
        }
@@ -65,7 +65,7 @@
                return;
            }
            beginTime = model.GetDungeonCoolDownEndTime(_type);
            beginTime = model.GetCoolDownEndTime(_type);
        }
        protected override void LateUpdate()
System/Dungeon/DungeonBreifInfo.cs
@@ -45,8 +45,8 @@
        private void UpdateDungeonTimes()
        {
            var enterTimes = model.GetDungeonEnterTimes(dungeon.mapId);
            var totalTimes = model.GetDungeonTotalTimes(dungeon.mapId);
            var enterTimes = model.GetEnterTimes(dungeon.mapId);
            var totalTimes = model.GetTotalTimes(dungeon.mapId);
            m_SurplusTimes.text = StringUtility.Contact(totalTimes - enterTimes, "/", totalTimes);
            m_SurplusTimes.color = (totalTimes - enterTimes) > 0 ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.Red);
@@ -67,7 +67,7 @@
        public void SetDungeonInfo(Dungeon _dungeon)
        {
            dungeon = _dungeon;
            var dungeonId = model.DungeonMap(dungeon);
            var dungeonId = model.GetDungeonId(dungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            DailyQuestOpenTime dungeonOpenTime;
@@ -106,7 +106,7 @@
            var levelLimitMin = dungeonConfig.LVLimitMin;
            if (dungeon.mapId == 31160)
            {
                var dungeonLevelMin = model.DungeonMap(dungeon.mapId, 0);
                var dungeonLevelMin = model.GetDungeonId(dungeon.mapId, 0);
                var dungeonMinConfig = Config.Instance.Get<DungeonConfig>(dungeonLevelMin);
                if (dungeonMinConfig != null)
                {
System/Dungeon/DungeonBuyTimesWin.cs
@@ -47,7 +47,7 @@
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent;
            vipModel.OnVipTimeEvent += OnVipTimeEvent;
            model.updateDungeonBuyCnt += UpdateDungeonBuyCnt;
            if (model.TryGetDungeonRecord(model.currentDungeon.mapId, out dungeonRecord))
            if (model.TryGetRecord(model.currentDungeon.mapId, out dungeonRecord))
            {
                Display();
            }
@@ -94,7 +94,7 @@
        void Display()
        {
            var openTimeConfig = Config.Instance.Get<DungeonOpenTimeConfig>(model.currentDungeon.mapId);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(model.DungeonMap(model.currentDungeon.mapId, model.currentDungeon.lineId));
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(model.currentDungeon.mapId, model.currentDungeon.lineId));
            m_DungeonName.text = dungeonConfig.FBName;
@@ -122,7 +122,7 @@
                var upTimes = _buyTimes - totalTimes;
                m_VipUpRemind.text = Language.Get("TimesBuyLanguage2", nextVipLv, upTimes);
            }
            if (model.TryGetDungeonBuyCntCost(model.currentDungeon.mapId, out costFormula))
            if (model.TryGetBuyCountCost(model.currentDungeon.mapId, out costFormula))
            {
                Equation.Instance.Clear();
                Equation.Instance.AddKeyValue("hasBuyCnt", dungeonRecord.buyTimes);
@@ -143,7 +143,7 @@
            }
            Equation.Instance.Clear();
            Equation.Instance.AddKeyValue("hasBuyCnt", dungeonRecord.buyTimes);
            model.TryGetDungeonBuyCntCost(model.currentDungeon.mapId, out costFormula);
            model.TryGetBuyCountCost(model.currentDungeon.mapId, out costFormula);
            int _cost = Equation.Instance.Eval<int>(costFormula);
            if (PlayerDatas.Instance.baseData.GoldPaper + PlayerDatas.Instance.baseData.Gold >= _cost)
            {
@@ -154,14 +154,14 @@
                        {
                            if (isOk)
                            {
                                model.SendBuyDungeonEnterCnt(model.currentDungeon.mapId);
                                model.RequestBuyEnterCount(model.currentDungeon.mapId);
                            }
                        });
                    return;
                }
                else
                {
                    model.SendBuyDungeonEnterCnt(model.currentDungeon.mapId);
                    model.RequestBuyEnterCount(model.currentDungeon.mapId);
                }
            }
            else
@@ -180,8 +180,8 @@
        {
            if (DemonJarModel.DEMONJAR_MAPID == model.currentDungeon.mapId)
            {
                var _totalTimes = model.GetDungeonTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                var _enterTimes = model.GetDungeonEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                var _totalTimes = model.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                var _enterTimes = model.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                if ((_totalTimes - _enterTimes) >= DemonJarModel.TOTALTIME_LIMIT)
                {
                    MessageWin.Inst.ShowFixedTip(Language.Get("DemonJar18"));
System/Dungeon/DungeonDefeatedWin.cs
@@ -55,7 +55,7 @@
        {
            base.OnActived();
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
            StartCoroutine(Co_DelayDisplay(config.DelayTime * 0.001f));
@@ -70,7 +70,7 @@
            if (timer < 0f)
            {
                timer = 1f;
                var endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
                var endTime = model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
                var seconds = (endTime - DateTime.Now).TotalSeconds;
                m_ExitTimer.text = Language.Get("DungeonVictoryWin_Btn_Exit_1", Mathf.Clamp((int)seconds, 0, int.MaxValue));
            }
@@ -86,7 +86,7 @@
        {
            yield return new WaitForSeconds(_delay);
            var endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var endTime = model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var seconds = (endTime - DateTime.Now).TotalSeconds;
            timer = 0f;
            m_ExitTimer.text = Language.Get("DungeonVictoryWin_Btn_Exit_1", Mathf.Clamp((int)seconds, 0, int.MaxValue));
System/Dungeon/DungeonDifficultySelectBehaviour.cs
@@ -31,7 +31,7 @@
            base.Display(_data);
            dungeon = (Dungeon)_data;
            var config = Config.Instance.Get<DungeonConfig>(model.DungeonMap(dungeon.mapId, dungeon.lineId));
            var config = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(dungeon.mapId, dungeon.lineId));
            m_Select.isOn = model.selectedKylinDungeon == dungeon;
            var playerLevel = PlayerDatas.Instance.baseData.LV;
System/Dungeon/DungeonEndCoolDownWin.cs
@@ -34,7 +34,7 @@
        protected override void OnPreOpen()
        {
            timer = 0f;
            endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.TowerTake);
            endTime = model.GetCoolDownEndTime(DungeonCoolDownType.TowerTake);
            model.dungeonCoolDownEvent += OnEndTimeEvent;
            var surplusTime = (int)((endTime - DateTime.Now).TotalSeconds);
@@ -67,14 +67,14 @@
                return;
            }
            var pickUpEndTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            var pickUpEndTime = model.GetCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            if (pickUpEndTime > DateTime.Now)
            {
                endTime = DateTime.Now;
            }
            else
            {
                endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.TowerTake);
                endTime = model.GetCoolDownEndTime(DungeonCoolDownType.TowerTake);
            }
            var surplusTime = (int)((endTime - DateTime.Now).TotalSeconds);
System/Dungeon/DungeonEnterInfo.cs
@@ -45,7 +45,7 @@
                {
                    if (PlayerDatas.Instance.baseData.GoldPaper + PlayerDatas.Instance.baseData.Gold >= dungeonEnter.clearCdCost)
                    {
                        model.SendClearDungeonEnterCD(dungeonEnter.mapId);
                        model.RequestClearEnterCD(dungeonEnter.mapId);
                    }
                    else
                    {
@@ -62,9 +62,9 @@
        private void OnEnable()
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            dungeonEnter = model.DungeonEnterData(dungeonConfig.DataMapID);
            dungeonEnter = model.GetEnterCD(dungeonConfig.DataMapID);
            model.updateDungeonEnterCD += UpdateDungeonEnterCD;
        }
System/Dungeon/DungeonFightWin.cs
@@ -60,14 +60,14 @@
        {
            timer = 1f;
            excutedAutoExit = false;
            existSurplusTime = (float)(model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap) - DateTime.Now).TotalSeconds;
            existSurplusTime = (float)(model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap) - DateTime.Now).TotalSeconds;
            ShowItemCollect();
            ShowResPoint();
            m_Inspire.gameObject.SetActive(false);
            m_Liquid.gameObject.SetActive(false);
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            m_ExitDungeon.gameObject.SetActive(dataMapId != DemonJarModel.DEMONJAR_MAPID);
            m_ContainerAncient.gameObject.SetActive(dataMapId == 31160);
            m_BossInfosContainer.gameObject.SetActive(dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID || dataMapId == BossHomeModel.BOSSHOME_MAPID);
@@ -101,7 +101,7 @@
        protected override void OnAfterOpen()
        {
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            switch (dataMapId)
            {
                case 31080:
@@ -142,12 +142,12 @@
            }
            excutedAutoExit = false;
            existSurplusTime = (float)(model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap) - DateTime.Now).TotalSeconds;
            existSurplusTime = (float)(model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap) - DateTime.Now).TotalSeconds;
        }
        private void ExitDungeon()
        {
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
            string language = string.Empty;
            if (dataMapId == GeneralConfig.Instance.ruinsTranscriptMapId)
@@ -158,7 +158,7 @@
            {
                var vipLevel = PlayerDatas.Instance.baseData.VIPLv;
                var vipNeed = bossHomeModel.GetFloorVipRequirement(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                var dungeonId = model.DungeonMap(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                var dungeonId = model.GetDungeonId(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                if (vipLevel < vipNeed)
@@ -240,7 +240,7 @@
        private void ProcessDungeonEndCoolDown()
        {
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            switch (dataMapId)
            {
                case RuneTowerModel.RUNETOWER_MAPID:
@@ -253,8 +253,8 @@
                        {
                            var runeTowerStage = StageManager.Instance.CurrentStage as RuneTowerDungeonStage;
                            runeTowerStage.PerformChallengeNextLevel();
                            model.UpdateDungeonCoolDown(DungeonCoolDownType.LeaveMap, 0);
                            model.UpdateDungeonCoolDown(DungeonCoolDownType.TowerTake, 0);
                            model.UpdateCoolDown(DungeonCoolDownType.LeaveMap, 0);
                            model.UpdateCoolDown(DungeonCoolDownType.TowerTake, 0);
                            WindowCenter.Instance.Close<DungeonRuneTowerVictoryWin>();
                        }
                        else
@@ -300,7 +300,7 @@
            {
                timer += Time.deltaTime;
                existSurplusTime -= Time.deltaTime;
                var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                if (timer > 1f)
                {
System/Dungeon/DungeonGradeWin.cs
@@ -67,8 +67,8 @@
            SetTween(gradePosTween, gradeScaleTween, 0);
            SetTween(expPosTween, expScaleTween, 0);
            dungeonEndTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.TowerTake);
            endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.FlagTake);
            dungeonEndTime = model.GetCoolDownEndTime(DungeonCoolDownType.TowerTake);
            endTime = model.GetCoolDownEndTime(DungeonCoolDownType.FlagTake);
            expContainer.SetActive(false);
            isCanContinue = true;
@@ -87,7 +87,7 @@
            }
            lastStar = model.mission.grade;
            ///根据具体副本显示具体数据
            int _mapid = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            int _mapid = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            int rate = 0;
            if (model.GetRewardRateWithGrade(_mapid, model.mission.grade, out rate))
            {
@@ -134,10 +134,10 @@
            switch (type)
            {
                case DungeonCoolDownType.TowerTake:
                    dungeonEndTime = model.GetDungeonCoolDownEndTime(type);
                    dungeonEndTime = model.GetCoolDownEndTime(type);
                    break;
                case DungeonCoolDownType.FlagTake:
                    endTime = model.GetDungeonCoolDownEndTime(type);
                    endTime = model.GetCoolDownEndTime(type);
                    break;
                case DungeonCoolDownType.LeaveMap:
                    if (isCanContinue)
@@ -216,7 +216,7 @@
                    {
                        if (timeZeroShow) return;
                        timeZeroShow = true;
                        if (model.DungeonTrialMaps().Contains(PlayerDatas.Instance.baseData.MapID))
                        if (model.GetTrialMaps().Contains(PlayerDatas.Instance.baseData.MapID))
                        {
                            surplusTime.text = Language.Get("DungeonGradeNextStage");
                            return;
System/Dungeon/DungeonInspireBehaviour.cs
@@ -53,10 +53,10 @@
        private void UpdateDugeonInspireLv()
        {
            var mapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var lv = model.dungeonJadeInspireCount + model.dungeonCoinInspireCount;
            m_Waggle = m_CoinConfig != null && model.dungeonCoinInspireCount < m_CoinConfig.InspireCount
                && lv < model.GetDungeonInspireMaxCnt(mapId);
                && lv < model.GetInspireMaxCount(mapId);
            if (m_InspireProgress != null)
            {
                m_InspireProgress.gameObject.SetActive(PlayerDatas.Instance.baseData.MapID == DemonJarModel.DEMONJAR_MAPID);
@@ -100,7 +100,7 @@
        private void OnInspireBtn()
        {
            if ((model.dungeonCoinInspireCount + model.dungeonJadeInspireCount) >= model.GetDungeonInspireMaxCnt(PlayerDatas.Instance.baseData.MapID))
            if ((model.dungeonCoinInspireCount + model.dungeonJadeInspireCount) >= model.GetInspireMaxCount(PlayerDatas.Instance.baseData.MapID))
            {
                SysNotifyMgr.Instance.ShowTip("Xjmj_InspireMaxLevel");
                return;
System/Dungeon/DungeonMissionDetailsWin.cs
@@ -65,8 +65,8 @@
        private void ShowMission()
        {
            var mission = model.mission;
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dataMapId, mission.lineID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dataMapId, mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (config != null)
@@ -80,7 +80,7 @@
                }
                else
                {
                    var dungeonId = model.DungeonMap(dataMapId, mission.lineID);
                    var dungeonId = model.GetDungeonId(dataMapId, mission.lineID);
                    var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                    m_MainLineTask.text = dungeonConfig.FBName;
                }
@@ -90,8 +90,8 @@
        private void UpdateMissions()
        {
            var mission = model.mission;
            var dateMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dateMapId, mission.lineID);
            var dateMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dateMapId, mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (mission.step != dungeonStep)
@@ -131,8 +131,8 @@
        private void UpdateMissionContent(DungeonMissionData _mission, int _targetIndex, MissionBar _missionBar)
        {
            var dateMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dateMapId, _mission.lineID);
            var dateMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dateMapId, _mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (config == null)
            {
System/Dungeon/DungeonMissionHintWin.cs
@@ -72,7 +72,7 @@
        private void ShowMisssionHint()
        {
            var mission = model.mission;
            var hintId = model.DungeonHintMap(model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID), mission.lineID);
            var hintId = model.GetDungeonHintId(model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID), mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (config == null || string.IsNullOrEmpty(config.mark))
System/Dungeon/DungeonModel.cs
@@ -41,65 +41,54 @@
        List<Item> sweepResultItems = new List<Item>();
        int m_SweepDungeonTypeBuf = 0;
        public int sweepDungeonTypeBuf
        {
        public int sweepDungeonTypeBuf {
            get { return m_SweepDungeonTypeBuf; }
        }
        Dungeon m_SelectedTrialDungeon;
        public Dungeon selectedTrialDungeon
        {
        public Dungeon selectedTrialDungeon {
            get { return m_SelectedTrialDungeon; }
            set { m_SelectedTrialDungeon = value; }
        }
        Dungeon m_CurrentDungeon;
        public Dungeon currentDungeon
        {
        public Dungeon currentDungeon {
            get { return m_CurrentDungeon; }
            set { m_CurrentDungeon = value; }
        }
        int m_DungeonGrade = 0;
        public int dungeonGrade
        {
        public int dungeonGrade {
            get { return m_DungeonGrade; }
        }
        DungeonMissionData m_Mission;
        public DungeonMissionData mission
        {
        public DungeonMissionData mission {
            get { return m_Mission; }
        }
        DungeonResult m_DungeonResult;
        public DungeonResult dungeonResult
        {
        public DungeonResult dungeonResult {
            get { return m_DungeonResult; }
            set { m_DungeonResult = value; }
        }
        public int dungeonCoinInspireCount
        {
        public int dungeonCoinInspireCount {
            get; private set;
        }
        public int dungeonJadeInspireCount
        {
        public int dungeonJadeInspireCount {
            get; private set;
        }
        public int dungeonInspireUper
        {
        public int dungeonInspireUper {
            get; private set;
        }
        Dungeon m_SelectedKylinDungeon;
        public Dungeon selectedKylinDungeon
        {
        public Dungeon selectedKylinDungeon {
            get { return m_SelectedKylinDungeon; }
            set
            {
            set {
                if (m_SelectedKylinDungeon != value)
                {
                    m_SelectedKylinDungeon = value;
@@ -120,11 +109,9 @@
        public bool gradeTween = true;
        DungeonFightStage m_DungeonFightStage = DungeonFightStage.None;
        public DungeonFightStage dungeonFightStage
        {
        public DungeonFightStage dungeonFightStage {
            get { return m_DungeonFightStage; }
            set
            {
            set {
                if (m_DungeonFightStage != value)
                {
                    m_DungeonFightStage = value;
@@ -166,12 +153,12 @@
            return dungeonOpenTimes.TryGetValue(_mapId, out _openTime);
        }
        public bool TryGetDungeonCountRemainTime(int _dataMapId, out DateTime _remainTime)
        public bool TryGetCountRemainTime(int _dataMapId, out DateTime _remainTime)
        {
            return dungeonCountRemainTimes.TryGetValue(_dataMapId, out _remainTime) && _remainTime > DateTime.Now;
        }
        public int GetDungeonGrade(Dungeon _dungeon)
        public int GetGrade(Dungeon _dungeon)
        {
            if (dungeonRecords.ContainsKey(_dungeon.mapId))
            {
@@ -181,7 +168,9 @@
                    return dungeonRecord.lineGrades[_dungeon.lineId];
                }
                else
                { return 0; }
                {
                    return 0;
                }
            }
            else
            {
@@ -189,15 +178,15 @@
            }
        }
        public bool TryGetDungeonRecord(int _mapId, out DungeonRecord _record)
        public bool TryGetRecord(int _mapId, out DungeonRecord _record)
        {
            return dungeonRecords.TryGetValue(_mapId, out _record);
        }
        public int GetDungeonEnterTimes(int _dataMapId)
        public int GetEnterTimes(int _dataMapId)
        {
            DungeonRecord record;
            if (TryGetDungeonRecord(_dataMapId, out record))
            if (TryGetRecord(_dataMapId, out record))
            {
                return record.enterTimes;
            }
@@ -207,7 +196,7 @@
            }
        }
        public int GetDungeonTotalTimes(int _dataMapId)
        public int GetTotalTimes(int _dataMapId)
        {
            var config = Config.Instance.Get<DungeonOpenTimeConfig>(_dataMapId);
            if (config == null)
@@ -218,7 +207,7 @@
            var totalTimes = config.DayTimes;
            DungeonRecord record;
            TryGetDungeonRecord(_dataMapId, out record);
            TryGetRecord(_dataMapId, out record);
            totalTimes += record != null ? record.recoverTimes : 0;
            totalTimes += record != null ? record.extraTimes : 0;
@@ -239,10 +228,10 @@
            return totalTimes;
        }
        public int GetDungeonBoughtTimes(int _dataMapId)
        public int GetBoughtTimes(int _dataMapId)
        {
            DungeonRecord record;
            if (TryGetDungeonRecord(_dataMapId, out record))
            if (TryGetRecord(_dataMapId, out record))
            {
                return record.buyTimes;
            }
@@ -252,7 +241,7 @@
            }
        }
        public int GetDungeonBuyTimesLimit(int _dataMapId)
        public int GetBuyTimesLimit(int _dataMapId)
        {
            var config = Config.Instance.Get<DungeonOpenTimeConfig>(_dataMapId);
            var vipPrivilegeId = config.BuyTimesID;
@@ -267,10 +256,10 @@
            }
        }
        public Item GetDungeonTicketCost(int _mapId, int _lineId = 0)
        public Item GetTicketCost(int _mapId, int _lineId = 0)
        {
            var enterTimes = GetDungeonEnterTimes(_mapId);
            var config = Config.Instance.Get<DungeonConfig>(DungeonMap(_mapId, _lineId));
            var enterTimes = GetEnterTimes(_mapId);
            var config = Config.Instance.Get<DungeonConfig>(GetDungeonId(_mapId, _lineId));
            if (config.TicketID > 0)
            {
                return new Item(config.TicketID, config.TicketCostCnt[Mathf.Clamp(enterTimes, 0, config.TicketCostCnt.Length - 1)]);
@@ -281,7 +270,7 @@
            }
        }
        public bool TryGetDungeonBuyCntCost(int _mapId, out string _formula)
        public bool TryGetBuyCountCost(int _mapId, out string _formula)
        {
            return dungeonBuyCntFormulaDic.TryGetValue(_mapId, out _formula);
        }
@@ -304,7 +293,7 @@
        public Item GetSweepCost(Dungeon _dungeon)
        {
            var dungeonId = DungeonMap(_dungeon);
            var dungeonId = GetDungeonId(_dungeon);
            var config = Config.Instance.Get<DungeonConfig>(dungeonId);
            if (config == null)
            {
@@ -316,7 +305,7 @@
            }
        }
        public void SweepDungeon(Dungeon _dungeon)
        public void RequestSweep(Dungeon _dungeon)
        {
            m_CurrentDungeon = _dungeon;
@@ -329,13 +318,13 @@
            GameNetSystem.Instance.SendInfo(send);
        }
        public bool TestChallangeDungeon(Dungeon _dungeon, out int _error)
        public bool TestChallange(Dungeon _dungeon, out int _error)
        {
            //错误码:1.副本CD中;2.等级不足;3.转职等级不足;4.剩余次数不足;5.缺少门票
            var dungeonId = DungeonMap(_dungeon);
            var dungeonId = GetDungeonId(_dungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            if (OnDungeonEnterCD(_dungeon.mapId))
            if (IsEnterCountDowning(_dungeon.mapId))
            {
                _error = 1;
                return false;
@@ -369,10 +358,10 @@
            }
            DungeonRecord record;
            TryGetDungeonRecord(currentDungeon.mapId, out record);
            TryGetRecord(currentDungeon.mapId, out record);
            var openTimeConfig = Config.Instance.Get<DungeonOpenTimeConfig>(_dungeon.mapId);
            var entertimes = GetDungeonEnterTimes(_dungeon.mapId);
            var totalTimes = GetDungeonTotalTimes(_dungeon.mapId);
            var entertimes = GetEnterTimes(_dungeon.mapId);
            var totalTimes = GetTotalTimes(_dungeon.mapId);
            var surplusTimes = totalTimes - entertimes;
            if (surplusTimes <= 0 && openTimeConfig.HelpPoint == 0)
            {
@@ -396,62 +385,56 @@
        public void ChallengeNextDungeonLevel()
        {
            CA508_tagCMDoFBAction cA508 = new CA508_tagCMDoFBAction();
            var cA508 = new CA508_tagCMDoFBAction();
            cA508.ActionType = 1;
            cA508.ActionInfo = (uint)(dungeonResult.lineID + 1);
            GameNetSystem.Instance.SendInfo(cA508);
        }
        public void SingleChallengeDungeon(int _dungeonId, int _lineId = 0)
        public void SingleChallenge(int _dungeonId, int _lineId = 0)
        {
            SingleChallengeDungeon(new Dungeon(_dungeonId, _lineId));
            SingleChallenge(new Dungeon(_dungeonId, _lineId));
        }
        public void SingleChallengeDungeon(Dungeon _dungeon)
        public void SingleChallenge(Dungeon _dungeon)
        {
            var dungeonId = DungeonMap(_dungeon);
            var dungeonId = GetDungeonId(_dungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var mapId = dungeonConfig.MapID;
            var mapConfig = Config.Instance.Get<MapConfig>(mapId);
            var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
            if ((MapType)mapConfig.MapFBType == MapType.MultipleFB)
            if ((MapType)mapConfig.MapFBType == MapType.MultipleFB && teamModel.myTeam.inTeam)
            {
                var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
                if (teamModel.myTeam.inTeam)
                {
                    ConfirmCancel.ShowPopConfirm(
                        Language.Get("Mail101"),
                        Language.Get("PlayerExitTeamSolo"),
                ConfirmCancel.ShowPopConfirm(
                    Language.Get("Mail101"),
                    Language.Get("PlayerExitTeamSolo"),
                        (bool _ok) =>
                    (bool ok) =>
                    {
                        if (ok)
                        {
                            if (_ok)
                            {
                                teamModel.RequestExitTeam();
                                m_CurrentDungeon = _dungeon;
                                Clock.Create(DateTime.Now + new TimeSpan(1 * TimeSpan.TicksPerSecond),
                                    () =>
                                    {
                                        CheckGroupEnterDungeon(_dungeon);
                                        /* ReqeustChallangeDungeon(_dungeon.mapId, _dungeon.lineId);*/
                                    }
                                    );
                            }
                            teamModel.RequestExitTeam();
                            Clock.Create(DateTime.Now + new TimeSpan(TimeSpan.TicksPerSecond),
                                () =>
                                {
                                    m_CurrentDungeon = _dungeon;
                                    CheckGroupEnter(_dungeon);
                                }
                                );
                        }
                        );
                    return;
                }
                    }
                    );
            }
            m_CurrentDungeon = _dungeon;
            CheckGroupEnterDungeon(_dungeon);
            //ReqeustChallangeDungeon(_dungeon.mapId, _dungeon.lineId);
            else
            {
                m_CurrentDungeon = _dungeon;
                CheckGroupEnter(_dungeon);
            }
        }
        public void GroupChallengeDungeon(Dungeon _dungeon)
        public void GroupChallenge(Dungeon _dungeon)
        {
            var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
            if (!teamModel.myTeam.inTeam)
@@ -471,31 +454,31 @@
                {
                    if (teamModel.myTeam.memberCount == 1)
                    {
                        ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), GroupChallengeOnlyOneTip(_dungeon.mapId), (bool isOk) =>
                        ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), GroupChallengeOnlyOneTip(_dungeon.mapId), (bool ok) =>
                        {
                            if (isOk)
                            if (ok)
                            {
                                CheckGroupEnterDungeon(_dungeon);
                                CheckGroupEnter(_dungeon);
                            }
                            else
                            {
                                GroupCancelEnterDungeon(_dungeon.mapId);
                                CancelGroupEnter(_dungeon.mapId);
                            }
                        });
                    }
                    else if (teamModel.myTeam.memberCount - teamModel.myTeam.GetOnlineMemberCnt() > 0)
                    else if (teamModel.myTeam.memberCount - teamModel.myTeam.GetOnlineMemberCount() > 0)
                    {
                        ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("OfflinePlayerNotice"), (bool isOk) =>
                        ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("OfflinePlayerNotice"), (bool ok) =>
                        {
                            if (isOk)
                            if (ok)
                            {
                                CheckGroupEnterDungeon(_dungeon);
                                CheckGroupEnter(_dungeon);
                            }
                        });
                    }
                    else
                    {
                        CheckGroupEnterDungeon(_dungeon);
                        CheckGroupEnter(_dungeon);
                    }
                }
                else
@@ -505,7 +488,7 @@
            }
        }
        private void GroupCancelEnterDungeon(int _mapId)
        private void CancelGroupEnter(int _mapId)
        {
            switch (_mapId)
            {
@@ -534,9 +517,10 @@
            return Language.Get("FBEnter_OnlyYou");
        }
        private void CheckGroupEnterDungeon(Dungeon _dungeon)
        private int ruinsTranscriptMapId;
        private void CheckGroupEnter(Dungeon _dungeon)
        {
            if (IsEmperorRuins(_dungeon.mapId))
            if (ruinsTranscriptMapId == _dungeon.mapId)
            {
                OpenFloorChooseWin();
            }
@@ -546,24 +530,11 @@
            }
        }
        private int ruinsTranscriptMapId;
        private bool IsEmperorRuins(int mapID)
        {
            if (ruinsTranscriptMapId == mapID)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        private void OpenFloorChooseWin()
        {
            var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
            var mainModel = ModelCenter.Instance.GetModel<PlayerMainDate>();
            if (teamModel.myTeam.GetOnlineMemberCnt() > 0)
            if (teamModel.myTeam.GetOnlineMemberCount() > 0)
            {
                var cB910 = new CB910_tagCGQueryTeamMemFuncData();
                cB910.TeamMemFuncType = 0;
@@ -609,9 +580,9 @@
            WindowCenter.Instance.Open<FloorChooseWin>();
        }
        public void GroupChallengeDungeon(int _dungeonId, int _lineId = 0)
        public void GroupChallenge(int _dungeonId, int _lineId = 0)
        {
            GroupChallengeDungeon(new Dungeon(_dungeonId, _lineId));
            GroupChallenge(new Dungeon(_dungeonId, _lineId));
        }
        public void ExitCurrentDungeon()
@@ -620,7 +591,7 @@
            GameNetSystem.Instance.SendInfo(send);
        }
        public void ResetDungeonBufData()
        public void ResetBufData()
        {
            dungeonFightStage = DungeonFightStage.None;
            specialItemCollectRecord = default(Item);
@@ -628,7 +599,7 @@
            m_Mission = default(DungeonMissionData);
        }
        public void UpdateDungeonRecords(HA320_tagMCPlayerFBInfoData.tagMCFBInfo[] _serverInfos)
        public void UpdateRecords(HA320_tagMCPlayerFBInfoData.tagMCFBInfo[] _serverInfos)
        {
            for (int i = 0; i < _serverInfos.Length; i++)
            {
@@ -651,7 +622,7 @@
        }
        public void UpdateDungeonRecords(HA3BD_tagMCBuyEnterInfo.tagMCBuyInfo[] vNetDatas)
        public void UpdateRecords(HA3BD_tagMCBuyEnterInfo.tagMCBuyInfo[] vNetDatas)
        {
            for (int i = 0; i < vNetDatas.Length; i++)
            {
@@ -672,7 +643,7 @@
            }
        }
        public DungeonEnterCD DungeonEnterData(int _mapID)
        public DungeonEnterCD GetEnterCD(int _mapID)
        {
            if (dungeonEnterDic.ContainsKey(_mapID))
            {
@@ -681,22 +652,28 @@
            return null;
        }
        public bool HasDungeonEnterCD(int _mapID)
        public bool HasEnterCD(int _mapID)
        {
            return dungeonEnterDic.ContainsKey(_mapID);
        }
        public bool OnDungeonEnterCD(int _mapID)
        public bool IsEnterCountDowning(int _mapID)
        {
            DungeonEnterCD dungeonEnter = DungeonEnterData(_mapID);
            if (dungeonEnter == null)
            var cd = GetEnterCD(_mapID);
            if (cd == null)
            {
                return false;
            if (dungeonEnter.dungeonSurplusTime == 0)
            }
            if (cd.dungeonSurplusTime == 0)
            {
                return false;
            return (dungeonEnter.overdueTime - DateTime.Now).TotalSeconds > 0;
            }
            return (cd.overdueTime - DateTime.Now).TotalSeconds > 0;
        }
        public void UpdateDungeonEnterTime(HA703_tagMCFBEnterTickList.tagMCFBEnterTick[] vNetDatas)
        public void UpdateEnterCD(HA703_tagMCFBEnterTickList.tagMCFBEnterTick[] vNetDatas)
        {
            for (int i = 0; i < vNetDatas.Length; i++)
            {
@@ -706,11 +683,14 @@
                    dungeonEnterDic[(int)data.MapID].SetEnterTime(data.LastEnterTick);
                }
            }
            if (updateDungeonEnterCD != null)
            {
                updateDungeonEnterCD();
            }
        }
        public void UpdateDugeonInspireLv(int coinInspireLv, int jadeInpsireLv)
        public void UpdateInspireLevel(int coinInspireLv, int jadeInpsireLv)
        {
            dungeonCoinInspireCount = coinInspireLv;
            dungeonJadeInspireCount = jadeInpsireLv;
@@ -720,21 +700,21 @@
            }
        }
        public void SendClearDungeonEnterCD(int _mapID)
        public void RequestClearEnterCD(int _mapID)
        {
            var clearpack = new CA210_tagCMClearFBCD();
            clearpack.MapID = (uint)_mapID;
            GameNetSystem.Instance.SendInfo(clearpack);
        }
        public void SendBuyDungeonEnterCnt(int _mapID)
        public void RequestBuyEnterCount(int _mapID)
        {
            var buypack = new CA575_tagCMBuyEnterCount();
            buypack.FBID = (uint)_mapID;
            GameNetSystem.Instance.SendInfo(buypack);
        }
        public void UpdateDungeonCoolDown(DungeonCoolDownType _type, uint _millisecond)
        public void UpdateCoolDown(DungeonCoolDownType _type, uint _millisecond)
        {
            dungeonCoolDowns[_type] = DateTime.Now + new TimeSpan(_millisecond * TimeSpan.TicksPerMillisecond);
            if (dungeonCoolDownEvent != null)
@@ -766,11 +746,11 @@
            if (_type == DungeonCoolDownType.WaitStart)
            {
                Clock.Create(dungeonCoolDowns[_type], OnDungeonBeginCoolDownEnd);
                Clock.Create(dungeonCoolDowns[_type], OnBeginCoolDownEnd);
            }
        }
        private void OnDungeonBeginCoolDownEnd()
        private void OnBeginCoolDownEnd()
        {
            var mapConfig = Config.Instance.Get<MapConfig>(PlayerDatas.Instance.baseData.MapID);
            if (mapConfig.MapFBType != (int)MapType.OpenCountry)
@@ -782,7 +762,7 @@
            }
        }
        public void UpdateDungeonCountRemaintime(HB209_tagMCFBCntRegainRemainTime _serverTimes)
        public void UpdateCountRemaintime(HB209_tagMCFBCntRegainRemainTime _serverTimes)
        {
            for (int i = 0; i < _serverTimes.InfoList.Length; i++)
            {
@@ -796,7 +776,7 @@
            }
        }
        public DateTime GetDungeonCoolDownEndTime(DungeonCoolDownType _type)
        public DateTime GetCoolDownEndTime(DungeonCoolDownType _type)
        {
            var endTime = DateTime.Now;
            dungeonCoolDowns.TryGetValue(_type, out endTime);
@@ -804,9 +784,9 @@
            return endTime;
        }
        public void UpdateDungeonMission(string _mission)
        public void UpdateMission(string _mission)
        {
            var mapId = GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            m_Mission = LitJson.JsonMapper.ToObject<DungeonMissionData>(_mission);
            var lineId = mission.lineID;
            switch (mapId)
@@ -855,7 +835,7 @@
                    {
                        PlayerDatas.Instance.hero.ShowArrow(false);
                    }
                    if (DungeonHintMap(mapId, lineId) != 0)
                    if (GetDungeonHintId(mapId, lineId) != 0)
                    {
                        if (!WindowCenter.Instance.CheckOpen<DungeonMissionHintWin>())
                        {
@@ -877,7 +857,7 @@
                case TreasureModel.TREASURE_MAPID:
                    break;
                case HeavenBattleModel.HEAVEBATTLE_MAPID:
                    if (DungeonHintMap(mapId, lineId) != 0)
                    if (GetDungeonHintId(mapId, lineId) != 0)
                    {
                        if (!WindowCenter.Instance.CheckOpen<DungeonMissionHintWin>())
                        {
@@ -891,7 +871,7 @@
                    }
                    break;
                default:
                    if (DungeonHintMap(mapId, lineId) != 0)
                    if (GetDungeonHintId(mapId, lineId) != 0)
                    {
                        if (!WindowCenter.Instance.CheckOpen<DungeonMissionHintWin>())
                        {
@@ -918,7 +898,26 @@
        }
        public void ProcessDungeonResult(string _msg)
        public void UpdateFakeDungeonMission(int _dataMapId, DungeonMissionData _missionData)
        {
            m_Mission = _missionData;
            switch (_dataMapId)
            {
                case DemonJarModel.DEMONJAR_MAPID:
                    if (!WindowCenter.Instance.CheckOpen<DemonJarDamageRankWin>())
                    {
                        WindowCenter.Instance.Open<DemonJarDamageRankWin>();
                    }
                    break;
            }
            if (updateMissionEvent != null)
            {
                updateMissionEvent();
            }
        }
        public void ProcessResult(string _msg)
        {
            m_DungeonResult = LitJson.JsonMapper.ToObject<DungeonResult>(_msg);
            if (m_DungeonResult.isSweep == 1)
@@ -995,8 +994,8 @@
                            WindowCenter.Instance.Open<DungeonSlayerVictoryWin>();
                            break;
                        case RealmModel.REALM_DUNGEON_ID:
                            RealmConfig presentcfg = Config.Instance.Get<RealmConfig>(realmModel.cacheRealmLv);
                            if (presentcfg != null && presentcfg.IsBigRealm == 1
                            var realmConfig = Config.Instance.Get<RealmConfig>(realmModel.cacheRealmLv);
                            if (realmConfig != null && realmConfig.IsBigRealm == 1
                                && dungeonResult.leaderID == PlayerDatas.Instance.baseData.PlayerID)
                            {
                                RealmBossShow.Instance.Open(realmModel.cacheRealmLv);
@@ -1007,8 +1006,15 @@
                                WindowCenter.Instance.Open<DungeonRealmVictoryWin>();
                            }
                            break;
                        case RuneTowerModel.RUNETOWER_MAPID:
                            WindowCenter.Instance.Open<DungeonRuneTowerVictoryWin>();
                            break;
                        case 41110:
                            WindowCenter.Instance.Open<DungeonGetTreasureVictoryWin>();
                            WindowCenter.Instance.Open<TreasureDungeonVictoryWin>();
                            break;
                        default:
                            CheckOpenSpecialVictoryWin();
                            WindowCenter.Instance.Open<DungeonVictoryWin>();
                            break;
                    }
                }
@@ -1040,47 +1046,7 @@
            }
        }
        public void UpdateFakeDungeonMission(int _dataMapId, DungeonMissionData _missionData)
        {
            m_Mission = _missionData;
            switch (_dataMapId)
            {
                case DemonJarModel.DEMONJAR_MAPID:
                    if (!WindowCenter.Instance.CheckOpen<DemonJarDamageRankWin>())
                    {
                        WindowCenter.Instance.Open<DemonJarDamageRankWin>();
                    }
                    break;
            }
            if (updateMissionEvent != null)
            {
                updateMissionEvent();
            }
        }
        private void CheckOpenSpecialVictoryWin()
        {
            if (StageManager.Instance.CurrentStage is RuneTowerDungeonStage)
            {
                WindowCenter.Instance.Open<DungeonRuneTowerVictoryWin>();
                return;
            }
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var dataMapId = GetDungeonDataIdByMapId(mapId);
            var lineId = dungeonResult.lineID;
            var treasureId = ModelCenter.Instance.GetModel<TreasureModel>().GetTreasureIdByMapIdAndLineId(dataMapId, lineId);
            if (treasureId > 0)
            {
                WindowCenter.Instance.Open<DungeonGetTreasureVictoryWin>();
                WindowCenter.Instance.Open<TreasureDungeonVictoryWin>();
                return;
            }
            WindowCenter.Instance.Open<DungeonVictoryWin>();
        }
        public int DungeonHintMap(int _dataMapId, int _lineId)
        public int GetDungeonHintId(int _dataMapId, int _lineId)
        {
            if (dungeonHintMap.ContainsKey(_dataMapId) && dungeonHintMap[_dataMapId].ContainsKey(_lineId))
            {
@@ -1092,7 +1058,7 @@
            }
        }
        public int DungeonMap(int _dataMapId, int _lineId)
        public int GetDungeonId(int _dataMapId, int _lineId)
        {
            if (dungeonMap.ContainsKey(_dataMapId) && dungeonMap[_dataMapId].ContainsKey(_lineId))
            {
@@ -1104,12 +1070,12 @@
            }
        }
        public int DungeonMap(Dungeon _dungeon)
        public int GetDungeonId(Dungeon _dungeon)
        {
            return DungeonMap(_dungeon.mapId, _dungeon.lineId);
            return GetDungeonId(_dungeon.mapId, _dungeon.lineId);
        }
        public List<int> DungeonMapDungeons(int _mapId)
        public List<int> GetDungeonIds(int _mapId)
        {
            if (dungeonMap.ContainsKey(_mapId))
            {
@@ -1121,7 +1087,7 @@
            }
        }
        public List<int> DugeonMapLines(int _dataMapId)
        public List<int> GetDugeonLines(int _dataMapId)
        {
            if (dungeonMap.ContainsKey(_dataMapId))
            {
@@ -1133,12 +1099,12 @@
            }
        }
        public List<int> DungeonTrialMaps()
        public List<int> GetTrialMaps()
        {
            return trialDungeonMapList;
        }
        public int GetDungeonDataIdByMapId(int _mapId)
        public int GetDataMapIdByMapId(int _mapId)
        {
            if (_mapId == DemonJarModel.DEMONJAR_SINGLEMAPID)
            {
@@ -1157,9 +1123,9 @@
            }
        }
        public List<DungeonTarget> GetDungeonTargets(int _dataMapId, int _lineId, int _step)
        public List<DungeonTarget> GetTargets(int _dataMapId, int _lineId, int _step)
        {
            var hintId = DungeonHintMap(_dataMapId, _lineId);
            var hintId = GetDungeonHintId(_dataMapId, _lineId);
            if (hintId == 0)
            {
                return null;
@@ -1221,11 +1187,11 @@
        public int GetBelongToLine(int _dailyQuestId)
        {
            var config = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
            var lineIds = DugeonMapLines(config.RelatedID);
            var lineIds = GetDugeonLines(config.RelatedID);
            var _lv = PlayerDatas.Instance.baseData.LV;
            for (int i = 0; i < lineIds.Count; i++)
            {
                var _dungeonId = DungeonMap(config.RelatedID, lineIds[i]);
                var _dungeonId = GetDungeonId(config.RelatedID, lineIds[i]);
                DungeonConfig _dungeonCfg = Config.Instance.Get<DungeonConfig>(_dungeonId);
                if (_lv < _dungeonCfg.LVLimitMin)
                {
@@ -1250,7 +1216,7 @@
            }
        }
        public int GetDungeonInspireMaxCnt(int _dataMapId)
        public int GetInspireMaxCount(int _dataMapId)
        {
            List<DungeonInspireConfig> _list = GetDungeonInspire(_dataMapId);
            int _maxCnt = 0;
@@ -1273,17 +1239,17 @@
            switch (lackType)
            {
                case DungeonSuppliesLackWin.LackType.PersonalBoss:
                    return GetDungeonTicketCost(PersonalBossModel.PERSONALBOSS_MAPID);
                    return GetTicketCost(PersonalBossModel.PERSONALBOSS_MAPID);
                case DungeonSuppliesLackWin.LackType.ElderGodArea:
                    return GetDungeonTicketCost(ElderGodAreaModel.ELDERGODAREA_MAPID);
                    return GetTicketCost(ElderGodAreaModel.ELDERGODAREA_MAPID);
                case DungeonSuppliesLackWin.LackType.Kylin:
                    return GetSweepCost(selectedKylinDungeon);
                case DungeonSuppliesLackWin.LackType.IceCrystal:
                    return GetSweepCost(new Dungeon(31140, 0));
                case DungeonSuppliesLackWin.LackType.FairyLand:
                    return GetDungeonTicketCost(31080);
                    return GetTicketCost(31080);
                case DungeonSuppliesLackWin.LackType.SingleIceCrystal:
                    return GetDungeonTicketCost(31140);
                    return GetTicketCost(31140);
                default:
                    return default(Item);
            }
@@ -1291,7 +1257,7 @@
        public bool IsElderGodExpel()
        {
            var dataMapId = GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            return dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID && mission.score >= 100;
        }
@@ -1306,7 +1272,7 @@
            var mapConfig = Config.Instance.Get<MapConfig>(mapId);
            if (mapConfig == null || mapConfig.MapFBType == 0)
            {
                UpdateDugeonInspireLv(0, 0);
                UpdateInspireLevel(0, 0);
            }
        }
System/Dungeon/DungeonNuwaVictoryWin.cs
@@ -46,11 +46,11 @@
            DateTime endNextTime;
            if (dungeonModel.dungeonResult.grade >= 5 && dungeonModel.dungeonResult.lineID < 7)
            {
                endNextTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.FBAddTime);
                endNextTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.FBAddTime);
            }
            else
            {
                endNextTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
                endNextTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            }
            if (endNextTime > DateTime.Now)
System/Dungeon/DungeonPickUpItemCoolDownWin.cs
@@ -31,7 +31,7 @@
        protected override void OnPreOpen()
        {
            endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            endTime = model.GetCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            DisplaySurplusTime();
            GlobalTimeEvent.Instance.secondEvent += OnPerSecond;
@@ -61,7 +61,7 @@
                return;
            }
            endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            endTime = model.GetCoolDownEndTime(DungeonCoolDownType.PickUpTime);
            DisplaySurplusTime();
        }
System/Dungeon/DungeonRuneTowerVictoryWin.cs
@@ -64,8 +64,8 @@
        {
            var runeTowerStage = StageManager.Instance.CurrentStage as RuneTowerDungeonStage;
            runeTowerStage.PerformChallengeNextLevel();
            dungeonModel.UpdateDungeonCoolDown(DungeonCoolDownType.LeaveMap, 0);
            dungeonModel.UpdateDungeonCoolDown(DungeonCoolDownType.TowerTake, 0);
            dungeonModel.UpdateCoolDown(DungeonCoolDownType.LeaveMap, 0);
            dungeonModel.UpdateCoolDown(DungeonCoolDownType.TowerTake, 0);
            CloseClick();
        }
System/Dungeon/DungeonStageTimeWin.cs
@@ -36,7 +36,7 @@
        protected override void OnPreOpen()
        {
            endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.StageCoolDown);
            endTime = model.GetCoolDownEndTime(DungeonCoolDownType.StageCoolDown);
            m_ContainerStageTime.gameObject.SetActive(false);
            model.dungeonCoolDownEvent += OnDungeonTimeChange;
        }
@@ -44,7 +44,7 @@
        private void OnDungeonTimeChange(DungeonCoolDownType type)
        {
            if (type != DungeonCoolDownType.StageCoolDown) return;
            endTime = model.GetDungeonCoolDownEndTime(type);
            endTime = model.GetCoolDownEndTime(type);
        }
        protected override void OnAfterOpen()
System/Dungeon/DungeonSuppliesLackWin.cs
@@ -173,22 +173,22 @@
            switch (_lackType)
            {
                case LackType.PersonalBoss:
                    var dungeonId1 = dungeonModel.DungeonMap(PersonalBossModel.PERSONALBOSS_MAPID, 0);
                    var dungeonId1 = dungeonModel.GetDungeonId(PersonalBossModel.PERSONALBOSS_MAPID, 0);
                    var config1 = Config.Instance.Get<DungeonConfig>(dungeonId1);
                    return config1.TicketPrice;
                case LackType.ElderGodArea:
                    var dungeonId2 = dungeonModel.DungeonMap(ElderGodAreaModel.ELDERGODAREA_MAPID, 0);
                    var dungeonId2 = dungeonModel.GetDungeonId(ElderGodAreaModel.ELDERGODAREA_MAPID, 0);
                    var config2 = Config.Instance.Get<DungeonConfig>(dungeonId2);
                    return config2.TicketPrice;
                case LackType.Kylin:
                case LackType.IceCrystal:
                    return GeneralConfig.Instance.autoBuyItemPrices[0];
                case LackType.FairyLand:
                    var dungeonId3 = dungeonModel.DungeonMap(31080, 0);
                    var dungeonId3 = dungeonModel.GetDungeonId(31080, 0);
                    var config3 = Config.Instance.Get<DungeonConfig>(dungeonId3);
                    return config3.TicketPrice;
                case LackType.SingleIceCrystal:
                    var dungeonId4 = dungeonModel.DungeonMap(31140, 0);
                    var dungeonId4 = dungeonModel.GetDungeonId(31140, 0);
                    var config4 = Config.Instance.Get<DungeonConfig>(dungeonId4);
                    return config4.TicketPrice;
                default:
@@ -206,7 +206,7 @@
                    return Language.Get("W_ElderGodTickets");
                case LackType.Kylin:
                case LackType.IceCrystal:
                    var dungeonId = dungeonModel.DungeonMap(GetDungeon(_lackType));
                    var dungeonId = dungeonModel.GetDungeonId(GetDungeon(_lackType));
                    var config = Config.Instance.Get<DungeonConfig>(dungeonId);
                    return Language.Get("MultipleSweep_Text1", config.FBName, config.SweepCostCnt);
                case LackType.FairyLand:
@@ -260,17 +260,17 @@
            {
                case LackType.PersonalBoss:
                case LackType.ElderGodArea:
                    dungeonModel.SingleChallengeDungeon(GetDungeon(_lackType));
                    dungeonModel.SingleChallenge(GetDungeon(_lackType));
                    break;
                case LackType.Kylin:
                case LackType.IceCrystal:
                    dungeonModel.SweepDungeon(GetDungeon(_lackType));
                    dungeonModel.RequestSweep(GetDungeon(_lackType));
                    break;
                case LackType.FairyLand:
                    dungeonModel.SingleChallengeDungeon(GetDungeon(_lackType));
                    dungeonModel.SingleChallenge(GetDungeon(_lackType));
                    break;
                case LackType.SingleIceCrystal:
                    dungeonModel.SingleChallengeDungeon(GetDungeon(_lackType));
                    dungeonModel.SingleChallenge(GetDungeon(_lackType));
                    break;
                default:
                    break;
System/Dungeon/DungeonSweepResultWin.cs
@@ -78,7 +78,7 @@
        private void DisplaySweepCost()
        {
            var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            if (tickets.id > 0)
            {
                m_DungeonTicket.SetItem(tickets);
@@ -151,7 +151,7 @@
            var error = 0;
            if (TestSweep(out error))
            {
                model.SweepDungeon(model.currentDungeon);
                model.RequestSweep(model.currentDungeon);
            }
            else
            {
@@ -164,7 +164,7 @@
                        SysNotifyMgr.Instance.ShowTip("Multiple_Finish");
                        break;
                    case 3:
                        var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
                        var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
                        getItemPath.SetChinItemModel(tickets.id);
                        break;
                    case 4:
@@ -185,7 +185,7 @@
                                  }
                                  else
                                  {
                                      model.SweepDungeon(model.currentDungeon);
                                      model.RequestSweep(model.currentDungeon);
                                  }
                              }
                          }
@@ -200,7 +200,7 @@
        private bool TestSweep(out int error)
        {
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == model.currentDungeon.mapId)
            {
                error = 5;
@@ -224,7 +224,7 @@
                }
            }
            var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var ticketsOwn = playerPack.GetItemCountByID(PackType.rptItem, tickets.id);
            if (ticketsOwn < tickets.count)
            {
System/Dungeon/DungeonSweepWin.cs
@@ -58,7 +58,7 @@
        private void DisplayTicket()
        {
            var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            if (tickets.id > 0)
            {
                m_DungeonTicket.SetItem(tickets);
@@ -81,7 +81,7 @@
            var error = 0;
            if (TestSweep(out error))
            {
                model.SweepDungeon(model.currentDungeon);
                model.RequestSweep(model.currentDungeon);
            }
            else
            {
@@ -91,7 +91,7 @@
                        DebugEx.Log("副本评级不足");
                        break;
                    case 2:
                        var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
                        var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
                        getItemPathModel.SetChinItemModel(tickets.id);
                        break;
                    case 3:
@@ -112,7 +112,7 @@
                                  }
                                  else
                                  {
                                      model.SweepDungeon(model.currentDungeon);
                                      model.RequestSweep(model.currentDungeon);
                                  }
                              }
                          }
@@ -131,21 +131,21 @@
        private bool TestSweep(out int error)
        {
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == model.currentDungeon.mapId)
            {
                error = 5;
                return false;
            }
            var grade = model.GetDungeonGrade(model.currentDungeon);
            var grade = model.GetGrade(model.currentDungeon);
            if (grade <= 0)
            {
                error = 1;
                return false;
            }
            var tickets = model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var tickets = model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId);
            var ticketsOwn = playerPack.GetItemCountByID(PackType.rptItem, tickets.id);
            if (ticketsOwn < tickets.count)
            {
@@ -161,8 +161,8 @@
                return false;
            }
            var enterTimes = model.GetDungeonEnterTimes(model.currentDungeon.mapId);
            var totalTimes = model.GetDungeonTotalTimes(model.currentDungeon.mapId);
            var enterTimes = model.GetEnterTimes(model.currentDungeon.mapId);
            var totalTimes = model.GetTotalTimes(model.currentDungeon.mapId);
            var surplusTimes = totalTimes - enterTimes;
            if (surplusTimes <= 0)
            {
System/Dungeon/DungeonTargetBehaviour.cs
@@ -35,8 +35,8 @@
        {
            if (currentDungeonId == 0) return;
            var dateMapId = model.GetDungeonDataIdByMapId(currentDungeonId);
            var hintId = model.DungeonHintMap(dateMapId, 0);
            var dateMapId = model.GetDataMapIdByMapId(currentDungeonId);
            var hintId = model.GetDungeonHintId(dateMapId, 0);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            m_TargetDescs[0].gameObject.SetActive(config.targetNum >= 1);
System/Dungeon/DungeonVictoryWin.cs
@@ -128,7 +128,7 @@
            if (timer < 0f)
            {
                timer += 0.5f;
                var endTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
                var endTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
                var seconds = (endTime - DateTime.Now).TotalSeconds;
                DrawExitTimer((int)seconds);
            }
@@ -159,7 +159,7 @@
            if (serveritems != null)
            {
                m_RewardSorts.AddRange(serveritems);
                int _mapid = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                int _mapid = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                if (_mapid == 60010 || _mapid == 31130)
                {
                    m_RewardSorts.Sort(CompareTrialItemIndex);
@@ -407,7 +407,7 @@
        protected virtual void DrawSP()
        {
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dungeonModel.dungeonResult.sp > 0)
            {
                m_ContainerSP.gameObject.SetActive(true);
@@ -431,7 +431,7 @@
            {
                m_Exit.gameObject.SetActive(true);
            }
            var endTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var endTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var seconds = (endTime - DateTime.Now).TotalSeconds;
            timer = (float)seconds - (int)seconds;
System/Dungeon/MultipleDifficultyDungeonWin.cs
@@ -49,7 +49,7 @@
                var playerLevel = PlayerDatas.Instance.baseData.LV;
                for (int i = dungeons.Count - 1; i >= 0; i--)
                {
                    var config = Config.Instance.Get<DungeonConfig>(model.DungeonMap(dungeons[i]));
                    var config = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(dungeons[i]));
                    if (playerLevel >= config.LVLimitMin)
                    {
                        model.selectedKylinDungeon = dungeons[i];
@@ -94,7 +94,7 @@
        private void DrawDungeonBaseInfo()
        {
            var dungeonId = model.DungeonMap(model.selectedKylinDungeon);
            var dungeonId = model.GetDungeonId(model.selectedKylinDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            m_DungeonTitle.text = dungeonConfig.FBName;
@@ -110,7 +110,7 @@
            }
            else
            {
                var dungeonId = model.DungeonMap(model.selectedKylinDungeon);
                var dungeonId = model.GetDungeonId(model.selectedKylinDungeon);
                var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                switch (error)
                {
@@ -137,11 +137,11 @@
            var error = 0;
            if (TestChallengeDungeon(out error))
            {
                model.SingleChallengeDungeon(model.selectedKylinDungeon);
                model.SingleChallenge(model.selectedKylinDungeon);
            }
            else
            {
                var dungeonId = model.DungeonMap(model.selectedKylinDungeon);
                var dungeonId = model.GetDungeonId(model.selectedKylinDungeon);
                var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                switch (error)
                {
@@ -153,8 +153,8 @@
                        break;
                    case 3:
                        var requireLineId = model.selectedKylinDungeon.lineId - 1;
                        var requireGrade = model.GetDungeonGrade(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                        var requireDungeonId = model.DungeonMap(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                        var requireGrade = model.GetGrade(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                        var requireDungeonId = model.GetDungeonId(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                        var requireDungeonConfig = Config.Instance.Get<DungeonConfig>(requireDungeonId);
                        SysNotifyMgr.Instance.ShowTip("NotChallengeMultiple", requireDungeonConfig.LVLimitMin);
                        break;
@@ -202,7 +202,7 @@
        private bool TestSweepDungeon(out int _error)
        {
            var dungeonId = model.DungeonMap(model.selectedKylinDungeon);
            var dungeonId = model.GetDungeonId(model.selectedKylinDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var playerLevel = PlayerDatas.Instance.baseData.LV;
@@ -212,7 +212,7 @@
                return false;
            }
            var dungeonGrade = model.GetDungeonGrade(model.selectedKylinDungeon);
            var dungeonGrade = model.GetGrade(model.selectedKylinDungeon);
            if (dungeonGrade <= 0)
            {
                _error = 2;
@@ -238,7 +238,7 @@
        private bool TestChallengeDungeon(out int _error)
        {
            var dungeonId = model.DungeonMap(model.selectedKylinDungeon);
            var dungeonId = model.GetDungeonId(model.selectedKylinDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var playerLevel = PlayerDatas.Instance.baseData.LV;
@@ -258,7 +258,7 @@
            if (model.selectedKylinDungeon.lineId > 0)
            {
                var requireLineId = model.selectedKylinDungeon.lineId - 1;
                var requireGrade = model.GetDungeonGrade(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                var requireGrade = model.GetGrade(new Dungeon(model.selectedKylinDungeon.mapId, requireLineId));
                if (requireGrade <= 0)
                {
                    _error = 3;
@@ -266,8 +266,8 @@
                }
            }
            var enterTimes = model.GetDungeonEnterTimes(model.selectedKylinDungeon.mapId);
            var totalTimes = model.GetDungeonTotalTimes(model.selectedKylinDungeon.mapId);
            var enterTimes = model.GetEnterTimes(model.selectedKylinDungeon.mapId);
            var totalTimes = model.GetTotalTimes(model.selectedKylinDungeon.mapId);
            var surplusTimes = totalTimes - enterTimes;
            if (surplusTimes <= 0)
            {
@@ -282,7 +282,7 @@
        private void ParseDifficultys()
        {
            dungeons.Clear();
            var lineIds = model.DugeonMapLines(model.currentDungeon.mapId);
            var lineIds = model.GetDugeonLines(model.currentDungeon.mapId);
            for (int i = 0; i < lineIds.Count; i++)
            {
                dungeons.Add(new Dungeon(model.currentDungeon.mapId, lineIds[i]));
@@ -291,8 +291,8 @@
            dungeons.Sort(
                (Dungeon a, Dungeon b) =>
                {
                    var dungeonConfigA = Config.Instance.Get<DungeonConfig>(model.DungeonMap(a));
                    var dungeonConfigB = Config.Instance.Get<DungeonConfig>(model.DungeonMap(b));
                    var dungeonConfigA = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(a));
                    var dungeonConfigB = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(b));
                    return dungeonConfigA.LVLimitMin < dungeonConfigB.LVLimitMin ? -1 : 1;
                }
                );
System/Dungeon/NormalDungeonEntranceWin.cs
@@ -101,16 +101,16 @@
        private void UpdateDungeonEnterCD()
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            bool _cd = model.HasDungeonEnterCD(dungeonConfig.DataMapID) && model.OnDungeonEnterCD(dungeonConfig.DataMapID);
            bool _cd = model.HasEnterCD(dungeonConfig.DataMapID) && model.IsEnterCountDowning(dungeonConfig.DataMapID);
            m_EnterCdContainer.gameObject.SetActive(_cd);
            m_ContainerBtns.gameObject.SetActive(!_cd);
        }
        private void DrawDungeonBaseInfo()
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var dungeonOpenTimeConfig = Config.Instance.Get<DungeonOpenTimeConfig>(model.currentDungeon.mapId);
            var fbType = dungeonOpenTimeConfig.FBType;
@@ -141,7 +141,7 @@
        private void DrawSweepInfo()
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var playerLevel = PlayerDatas.Instance.baseData.LV;
@@ -172,7 +172,7 @@
        private void DrawDungeonTicketInfo()
        {
            var config = Config.Instance.Get<DungeonConfig>(model.DungeonMap(model.currentDungeon));
            var config = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(model.currentDungeon));
            if (config == null || config.TicketID == 0)
            {
                m_TicketContainer.gameObject.SetActive(false);
@@ -183,11 +183,11 @@
                m_DungeonTicketItem.showCount = true;
                DungeonRecord record;
                int _times = 0;
                if (model.TryGetDungeonRecord(model.currentDungeon.mapId, out record))
                if (model.TryGetRecord(model.currentDungeon.mapId, out record))
                {
                    _times = record.enterTimes;
                }
                m_DungeonTicketItem.SetItem(model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId));
                m_DungeonTicketItem.SetItem(model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId));
            }
        }
@@ -207,7 +207,7 @@
        private void ChallengeDungeon()
        {
            var error = 0;
            if (model.TestChallangeDungeon(model.currentDungeon, out error))
            if (model.TestChallange(model.currentDungeon, out error))
            {
                if (GeneralConfig.Instance.dungeonCanUseMoneyIds.Contains(model.currentDungeon.mapId))
                {
@@ -215,7 +215,7 @@
                }
                else
                {
                    model.SingleChallengeDungeon(model.currentDungeon);
                    model.SingleChallenge(model.currentDungeon);
                }
            }
            else
@@ -285,7 +285,7 @@
        private void AutoGroupChallenge()
        {
            var error = 0;
            if (model.TestChallangeDungeon(model.currentDungeon, out error))
            if (model.TestChallange(model.currentDungeon, out error))
            {
                teamModel.RequestAutoMatchTeam(new TeamMission(model.currentDungeon.mapId, model.currentDungeon.lineId));
                WindowCenter.Instance.Open<TeamFrameWin>(false, 1);
@@ -299,9 +299,9 @@
        private void ChallengeDungeonGroup()
        {
            var error = 0;
            if (model.TestChallangeDungeon(model.currentDungeon, out error))
            if (model.TestChallange(model.currentDungeon, out error))
            {
                model.GroupChallengeDungeon(model.currentDungeon);
                model.GroupChallenge(model.currentDungeon);
            }
            else
            {
@@ -311,7 +311,7 @@
        private void ProcessEnterDungeonError(int _error)
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            switch (_error)
@@ -333,10 +333,10 @@
        private bool TestSweepDungeon(out int _error)
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            var playerLevel = PlayerDatas.Instance.baseData.LV;
            var dungeonGrade = model.GetDungeonGrade(model.currentDungeon);
            var dungeonGrade = model.GetGrade(model.currentDungeon);
            if (dungeonGrade <= 0 && playerLevel < dungeonConfig.SweepLVLimit)
            {
@@ -356,7 +356,7 @@
                return false;
            }
            if (model.OnDungeonEnterCD(model.currentDungeon.mapId))
            if (model.IsEnterCountDowning(model.currentDungeon.mapId))
            {
                _error = 4;
                return false;
@@ -368,7 +368,7 @@
        private void ProcessSweepDungeonError(int _error)
        {
            var dungeonId = model.DungeonMap(model.currentDungeon);
            var dungeonId = model.GetDungeonId(model.currentDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            switch (_error)
@@ -404,7 +404,7 @@
            if (_itemId == m_DungeonTicketItem.itemId)
            {
                m_DungeonTicketItem.SetItem(model.GetDungeonTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId));
                m_DungeonTicketItem.SetItem(model.GetTicketCost(model.currentDungeon.mapId, model.currentDungeon.lineId));
            }
        }
System/Dungeon/TargetBriefInfoWin.cs
@@ -28,7 +28,7 @@
    static void OnShowBossLifeBar(uint _instanceId, int _npcId, bool _show)
    {
        var mapId = PlayerDatas.Instance.baseData.MapID;
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(mapId);
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(mapId);
        if (dataMapId == DemonJarModel.DEMONJAR_MAPID)
        {
            if (_show)
@@ -66,7 +66,7 @@
    static void OnRefreshBossLifeBar(uint _instanceId, int _npcId, ulong _hp, ulong _maxHp)
    {
        var mapId = PlayerDatas.Instance.baseData.MapID;
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(mapId);
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(mapId);
        if (dataMapId == DemonJarModel.DEMONJAR_MAPID)
        {
            DemonJarBossLifeBarWin win;
System/Dungeon/TreasureDungeonMissionHintWin.cs
@@ -89,7 +89,7 @@
            var config = Config.Instance.Get<TreasureConfig>(treasureId);
            var dungeonId = dungeonModel.DungeonMap(config.MapId, config.LineId);
            var dungeonId = dungeonModel.GetDungeonId(config.MapId, config.LineId);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            m_Title.text = dungeonConfig.FBName;
            m_Description.text = dungeonConfig.Description;
System/Dungeon/TrialDungeonEntranceWin.cs
@@ -103,7 +103,7 @@
        private void DrawDungeonBaseInfo()
        {
            var dungeonId = model.DungeonMap(model.selectedTrialDungeon);
            var dungeonId = model.GetDungeonId(model.selectedTrialDungeon);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            m_Title.text = dungeonConfig.FBName;
            m_DropItemTxt.text = Language.Get(StringUtility.Contact("TrialDungeon_Drop", dungeonConfig.LineID));
@@ -118,7 +118,7 @@
            m_LevelLimit.gameObject.SetActive(playerLevel < dungeonConfig.LVLimitMin);
            DungeonRecord dungeonRecord;
            model.TryGetDungeonRecord(dungeonConfig.MapID, out dungeonRecord);
            model.TryGetRecord(dungeonConfig.MapID, out dungeonRecord);
            int star = 1;
            if (dungeonConfig.LineID > 0)
            {
@@ -135,7 +135,7 @@
                m_GradeLimit.text = Language.Get("TrialDungeonGradeLimit2", UIHelper.GetGrade(GeneralConfig.Instance.munekadolockLimit));
            }
            UpdateDungeonTimes(model.DungeonTrialMaps()[0]);
            UpdateDungeonTimes(model.GetTrialMaps()[0]);
            if (dungeonConfig.BossActorID != null && dungeonConfig.BossActorID.Length > 0)
            {
@@ -175,7 +175,7 @@
        private void UpdateDungeonTimes(int mapID)
        {
            int trialMapID = model.DungeonTrialMaps()[0];
            int trialMapID = model.GetTrialMaps()[0];
            if (trialMapID != mapID) return;
            DungeonOpenTimeConfig dungeonOpenTimeModel = Config.Instance.Get<DungeonOpenTimeConfig>(trialMapID);
            var completedTimes = dailyQuestModel.GetDailyQuestCompletedTimes((int)DailyQuestType.Trial);
@@ -187,7 +187,7 @@
        private void DrawRewards()
        {
            m_RewardScroller.verticalNormalizedPosition = 1;
            var dongeonId = model.DungeonMap(model.selectedTrialDungeon);
            var dongeonId = model.GetDungeonId(model.selectedTrialDungeon);
            var config = Config.Instance.Get<DungeonConfig>(dongeonId);
            for (int i = 0; i < m_RewardBehaviours.Length; i++)
            {
@@ -208,7 +208,7 @@
        private void ChallengeDungeon()
        {
            if (!CheckChallenge()) return;
            model.SingleChallengeDungeon(model.selectedTrialDungeon);
            model.SingleChallenge(model.selectedTrialDungeon);
        }
        private void AutoGroupChallenge()
@@ -221,12 +221,12 @@
        private void ChallengeDungeonGroup()
        {
            if (!CheckChallenge()) return;
            model.GroupChallengeDungeon(model.selectedTrialDungeon);
            model.GroupChallenge(model.selectedTrialDungeon);
        }
        private bool CheckChallenge()
        {
            var dongeonId = model.DungeonMap(model.selectedTrialDungeon);
            var dongeonId = model.GetDungeonId(model.selectedTrialDungeon);
            var config = Config.Instance.Get<DungeonConfig>(dongeonId);
            var playerLevel = PlayerDatas.Instance.baseData.LV;
@@ -244,7 +244,7 @@
            }
            DungeonRecord dungeonRecord;
            model.TryGetDungeonRecord(config.MapID, out dungeonRecord);
            model.TryGetRecord(config.MapID, out dungeonRecord);
            int star = 1;
            if (config.LineID > 0)
            {
System/Dungeon/TrialDungeonModel.cs
@@ -239,7 +239,7 @@
        public bool CompleteTrialFloor(int _lineId)
        {
            DungeonRecord dungeonRecord;
            if (dungeonModel.TryGetDungeonRecord(60010, out dungeonRecord))
            if (dungeonModel.TryGetRecord(60010, out dungeonRecord))
            {
                if (dungeonRecord.lineGrades != null
                    && dungeonRecord.lineGrades.ContainsKey(_lineId))
System/Dungeon/TrialDungeonSelectBehaviour.cs
@@ -57,7 +57,7 @@
        {
            base.Display(_data);
            dungeon = (Dungeon)_data;
            var config = Config.Instance.Get<DungeonConfig>(model.DungeonMap(dungeon));
            var config = Config.Instance.Get<DungeonConfig>(model.GetDungeonId(dungeon));
            if (config == null)
            {
                return;
@@ -82,7 +82,7 @@
        private void DrawDungeonInfo(Dungeon _dungeon)
        {
            var dungeonId = model.DungeonMap(_dungeon);
            var dungeonId = model.GetDungeonId(_dungeon);
            var config = Config.Instance.Get<DungeonConfig>(dungeonId);
            m_DungeonName.text = config.FBName;
@@ -92,7 +92,7 @@
            m_BossLevel.color = PlayerDatas.Instance.baseData.LV >= config.LVLimitMin ?
                UIHelper.GetUIColor(TextColType.Green, true) : UIHelper.GetUIColor(TextColType.Red, true);
            model.TryGetDungeonRecord(_dungeon.mapId, out dungeonRecord);
            model.TryGetRecord(_dungeon.mapId, out dungeonRecord);
            int prestar = 1;
            int star = 0;
            dungeonRecord.lineGrades.TryGetValue(config.LineID, out star);
System/Dungeon/TrialDungeonSelectWin.cs
@@ -71,7 +71,7 @@
        {
            ParseTrials();
            var mapID = model.DungeonTrialMaps()[0];
            var mapID = model.GetTrialMaps()[0];
            DungeonOpenTimeConfig dungeonOpenTimeModel = Config.Instance.Get<DungeonOpenTimeConfig>(mapID);
            var completedTimes = dailyQuestModel.GetDailyQuestCompletedTimes((int)DailyQuestType.Trial);
            var totalTimes = dailyQuestModel.GetDailyQuestTotalTimes((int)DailyQuestType.Trial);
@@ -113,7 +113,7 @@
        private void ParseTrials()
        {
            foreach (var mapID in model.DungeonMapDungeons(model.currentDungeon.mapId)) {
            foreach (var mapID in model.GetDungeonIds(model.currentDungeon.mapId)) {
                DungeonConfig _tagDungeonModel = Config.Instance.Get<DungeonConfig>(mapID);
                dungeons.Add(new Dungeon(model.currentDungeon.mapId, _tagDungeonModel.LineID));
            }
System/Dungeon/TrialExchangeWin.cs
@@ -44,11 +44,11 @@
            model.selectEquipClass = 1;
            m_SelectClassBehaviour.gameObject.SetActive(false);
            m_SelectClassUp.transform.localEulerAngles = Vector3.zero.SetZ(180);
            foreach (var mapID in dungeonModel.DungeonMapDungeons(60010))
            foreach (var mapID in dungeonModel.GetDungeonIds(60010))
            {
                DungeonConfig _tagDungeonModel = Config.Instance.Get<DungeonConfig>(mapID);
                DungeonRecord dungeonRecord;
                if (dungeonModel.TryGetDungeonRecord(60010, out dungeonRecord))
                if (dungeonModel.TryGetRecord(60010, out dungeonRecord))
                {
                    if (dungeonRecord.lineGrades != null && dungeonRecord.lineGrades.ContainsKey(_tagDungeonModel.LineID)
                        && dungeonRecord.lineGrades[_tagDungeonModel.LineID] > 0)
System/FairyAu/FairyBoss.cs
@@ -94,7 +94,7 @@
                    MessageWin.Inst.ShowFixedTip(Language.Get("L1020"));
                    return;
                }
                ModelCenter.Instance.GetModel<DungeonModel>().SingleChallengeDungeon(fairyBossModel.MapId);
                ModelCenter.Instance.GetModel<DungeonModel>().SingleChallenge(fairyBossModel.MapId);
            }
        }
System/FairyAu/FairyBossModel.cs
@@ -176,7 +176,7 @@
        private void GetDungeonContinueTime()
        {
            var _list = dungeonModel.DungeonMapDungeons(MapId);
            var _list = dungeonModel.GetDungeonIds(MapId);
            var _dungeonCfg = Config.Instance.Get<DungeonConfig>(_list[0]);
            var _stepTime = _dungeonCfg.StepTime;
            _stepTime = _stepTime.Replace("[", string.Empty);
System/FairyAu/FairyFeastBehaviour.cs
@@ -49,7 +49,7 @@
        private void UpdateMissionEvent()
        {
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (mapId == 31230)
            {
                Display();
@@ -58,7 +58,7 @@
        private void Display()
        {
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var collected = dungeonModel.mission.hasCollect;
            m_GotoFeast.gameObject.SetActive(mapId == 31230 && collected != 1 && !nearNpc);
        }
@@ -83,7 +83,7 @@
        private void OnGotoFeast()
        {
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (mapId == 31230)
            {
                SnxxzGame.Instance.StartCoroutine(Co_HeroMoveToActor(model.fairyFeastDeskNpc));
System/FairyAu/FairyGrabBossModel.cs
@@ -429,7 +429,7 @@
                return false;
            }
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(mapId);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(mapId);
            if (dataMapId == BossHomeModel.BOSSHOME_MAPID || dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID)
            {
                _error = 4;
@@ -454,7 +454,7 @@
                    FuncOpen.Instance.ProcessorFuncErrorTip(139);
                    break;
                case 4:
                    var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
                    var tip = string.Empty;
@@ -465,7 +465,7 @@
                        if (vipLevel < vipNeed)
                        {
                            var moneyNeed = bossHomeModel.GetVipLackCost(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                            var dungeonId = dungeonModel.DungeonMap(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                            var dungeonId = dungeonModel.GetDungeonId(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                            tip = Language.Get("QuitRemindBossHome", dungeonConfig.FBName, vipNeed, moneyNeed);
                        }
System/FairyAu/FairyLeagueWin.cs
@@ -464,7 +464,7 @@
                model.DisplayErrorTip(_error);
                return;
            }
            ModelCenter.Instance.GetModel<DungeonModel>().SingleChallengeDungeon(FairyLeagueModel.FAIRY_LEAGUE_DUNGEON);
            ModelCenter.Instance.GetModel<DungeonModel>().SingleChallenge(FairyLeagueModel.FAIRY_LEAGUE_DUNGEON);
        }
        private void OnRuneBtn()
System/FairyAu/FairyModel.cs
@@ -733,7 +733,7 @@
            {
                if (StageManager.Instance.CurrentStage is DungeonStage)
                {
                    var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    if (mapId == FairyLeagueModel.FAIRY_LEAGUE_DUNGEON)
                    {
                        return true;
@@ -752,7 +752,7 @@
            {
                if (InFairyLeagueDungeon)
                {
                    fairyLeagueBeginTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.WaitStart);
                    fairyLeagueBeginTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.WaitStart);
                    if (DateTime.Now < fairyLeagueBeginTime)
                    {
                        fairyLeagueDugeonCoolDown = true;
@@ -765,7 +765,7 @@
        {
            if (InFairyLeagueDungeon)
            {
                fairyLeagueBeginTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.WaitStart);
                fairyLeagueBeginTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.WaitStart);
                if (DateTime.Now < fairyLeagueBeginTime)
                {
                    fairyLeagueDugeonCoolDown = true;
System/FindPrecious/BossHomeModel.cs
@@ -219,7 +219,7 @@
        public void OnMapInitOk()
        {
            var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == BOSSHOME_MAPID)
            {
                MapTransferUtility.Instance.MoveToNPC(selectedBoss);
System/FindPrecious/BossHomeWin.cs
@@ -140,7 +140,7 @@
        private void GotoKillBoss()
        {
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == BossHomeModel.BOSSHOME_MAPID)
            {
                var vipLevel = PlayerDatas.Instance.baseData.VIPLv;
@@ -148,7 +148,7 @@
                if (vipLevel < vipNeed)
                {
                    var moneyNeed = model.GetVipLackCost(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                    var dungeonId = dungeonModel.DungeonMap(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                    var dungeonId = dungeonModel.GetDungeonId(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                    var config = Config.Instance.Get<DungeonConfig>(dungeonId);
                    ConfirmCancel.ShowPopConfirm(
                        Language.Get("Mail101"),
@@ -254,7 +254,7 @@
            var error = 0;
            if (TestEnterDungeon(out error))
            {
                dungeonModel.SingleChallengeDungeon(BossHomeModel.BOSSHOME_MAPID, model.selectedFloor - 1);
                dungeonModel.SingleChallenge(BossHomeModel.BOSSHOME_MAPID, model.selectedFloor - 1);
            }
            else
            {
@@ -278,7 +278,7 @@
                return false;
            }
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == BossHomeModel.BOSSHOME_MAPID
                && PlayerDatas.Instance.baseData.dungeonLineId == model.selectedFloor - 1)
            {
@@ -328,7 +328,7 @@
                                else
                                {
                                    var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
                                    dungeonModel.SingleChallengeDungeon(BossHomeModel.BOSSHOME_MAPID, model.selectedFloor - 1);
                                    dungeonModel.SingleChallenge(BossHomeModel.BOSSHOME_MAPID, model.selectedFloor - 1);
                                }
                            }
                        }
System/FindPrecious/DemonJarDamageRankWin.cs
@@ -28,7 +28,7 @@
        protected override void OnPreOpen()
        {
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            m_RankBehaviour.Init(dataMapId);
        }
System/FindPrecious/DemonJarModel.cs
@@ -144,7 +144,7 @@
                var bossId = sortedBossIds[i];
                var config = Config.Instance.Get<DemonJarConfig>(bossId);
                var grade = dungeonModel.GetDungeonGrade(new Dungeon(DEMONJAR_MAPID, config.LineID));
                var grade = dungeonModel.GetGrade(new Dungeon(DEMONJAR_MAPID, config.LineID));
                if (config.CanEnterTimes > 0 && grade > 0)
                {
                    continue;
@@ -199,8 +199,8 @@
        public int GetSurplusTimes()
        {
            var totalTimes = dungeonModel.GetDungeonTotalTimes(DEMONJAR_MAPID);
            var enterTimes = dungeonModel.GetDungeonEnterTimes(DEMONJAR_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(DEMONJAR_MAPID);
            var enterTimes = dungeonModel.GetEnterTimes(DEMONJAR_MAPID);
            return totalTimes - enterTimes;
        }
@@ -267,7 +267,7 @@
                    if (PlayerDatas.Instance.baseData.LV == GeneralConfig.Instance.demonJarRedPoint)
                    {
                        var count = dungeonModel.GetDungeonTotalTimes(DEMONJAR_MAPID) - dungeonModel.GetDungeonEnterTimes(DEMONJAR_MAPID);
                        var count = dungeonModel.GetTotalTimes(DEMONJAR_MAPID) - dungeonModel.GetEnterTimes(DEMONJAR_MAPID);
                        redpoint.state = count > 0 ? RedPointState.Quantity : RedPointState.None;
                        redpoint.count = count;
                    }
@@ -329,7 +329,7 @@
        {
            if (DEMONJAR_MAPID == _dataMapId && PlayerDatas.Instance.baseData.LV >= GeneralConfig.Instance.demonJarRedPoint)
            {
                var count = dungeonModel.GetDungeonTotalTimes(_dataMapId) - dungeonModel.GetDungeonEnterTimes(_dataMapId);
                var count = dungeonModel.GetTotalTimes(_dataMapId) - dungeonModel.GetEnterTimes(_dataMapId);
                redpoint.state = count > 0 ? RedPointState.Quantity : RedPointState.None;
                redpoint.count = count;
            }
@@ -339,7 +339,7 @@
        {
            if (PlayerDatas.Instance.baseData.LV >= GeneralConfig.Instance.demonJarRedPoint)
            {
                var count = dungeonModel.GetDungeonTotalTimes(DEMONJAR_MAPID) - dungeonModel.GetDungeonEnterTimes(DEMONJAR_MAPID);
                var count = dungeonModel.GetTotalTimes(DEMONJAR_MAPID) - dungeonModel.GetEnterTimes(DEMONJAR_MAPID);
                redpoint.state = count > 0 ? RedPointState.Quantity : RedPointState.None;
                redpoint.count = count;
            }
@@ -371,7 +371,7 @@
                    {
                        this.findPreciousModel.RequestSubscribeBoss((int)_bossId, true);
                        var model = ModelCenter.Instance.GetModel<DungeonModel>();
                        var grade = model.GetDungeonGrade(new Dungeon(DEMONJAR_MAPID, config.LineID));
                        var grade = model.GetGrade(new Dungeon(DEMONJAR_MAPID, config.LineID));
                        if ((config.CanEnterTimes == 0 || grade == 0) && this.findPreciousModel.IsBossAlive((int)_bossId))
                        {
                            this.findPreciousModel.AddOneBossRebornNotify((int)_bossId);
System/FindPrecious/DemonJarVictoryWin.cs
@@ -73,7 +73,7 @@
        {
            base.LateUpdate();
            var endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var endTime = model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            if (endTime > DateTime.Now)
            {
                timer -= Time.deltaTime;
@@ -103,7 +103,7 @@
        {
            yield return new WaitForSeconds(_delay);
            var endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var endTime = model.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var seconds = (endTime - DateTime.Now).TotalSeconds;
            timer = 0f;
            m_ExitTimer.text = Language.Get("DungeonVictoryWin_Btn_Exit_1", Mathf.Clamp((int)seconds, 0, int.MaxValue));
System/FindPrecious/DemonJarWin.cs
@@ -53,8 +53,8 @@
        protected override void OnPreOpen()
        {
            totalTimes = dungeonModel.GetDungeonTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetDungeonEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            m_Times.text = StringUtility.Contact(totalTimes - enterTimes, "/", DemonJarModel.TOTALTIME_LIMIT);
            OnRemaintimeUpdate(DemonJarModel.DEMONJAR_MAPID);
@@ -190,7 +190,7 @@
            var privilege = vipModel.GetVipPrivilegeCnt(VipPrivilegeType.DemonJarDouble) == 1;
            if (privilege)
            {
                var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                if (dataMapId == DemonJarModel.DEMONJAR_MAPID)
                {
                    SysNotifyMgr.Instance.ShowTip("CantChangeInDemon");
@@ -220,7 +220,7 @@
                var config = Config.Instance.Get<DemonJarConfig>(model.selectedBoss);
                if (config.LineID == GeneralConfig.Instance.demonJarHintLineId && PlayerDatas.Instance.baseData.LV < GeneralConfig.Instance.demonJarHintLevelLimit)
                {
                    var grade = dungeonModel.GetDungeonGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                    var grade = dungeonModel.GetGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                    if (grade <= 0)
                    {
                        ConfirmCancel.ShowPopConfirm(
@@ -230,19 +230,19 @@
                            {
                                if (ok)
                                {
                                    dungeonModel.SingleChallengeDungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                                    dungeonModel.SingleChallenge(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                                }
                            }
                            );
                    }
                    else
                    {
                        dungeonModel.SingleChallengeDungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                        dungeonModel.SingleChallenge(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                    }
                }
                else
                {
                    dungeonModel.SingleChallengeDungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                    dungeonModel.SingleChallenge(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                }
            }
            else
@@ -278,7 +278,7 @@
                                if (_ok)
                                {
                                    var config = Config.Instance.Get<DemonJarConfig>(model.selectedBoss);
                                    dungeonModel.SingleChallengeDungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                                    dungeonModel.SingleChallenge(DemonJarModel.DEMONJAR_MAPID, config.LineID);
                                }
                                if (_toggle)
@@ -299,15 +299,15 @@
                return;
            }
            totalTimes = dungeonModel.GetDungeonTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetDungeonEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            m_Times.text = StringUtility.Contact(totalTimes - enterTimes, "/", DemonJarModel.TOTALTIME_LIMIT);
            if ((totalTimes - enterTimes) < DemonJarModel.TOTALTIME_LIMIT)
            {
                DateTime endTime;
                if (dungeonModel.TryGetDungeonCountRemainTime(DemonJarModel.DEMONJAR_MAPID, out endTime))
                if (dungeonModel.TryGetCountRemainTime(DemonJarModel.DEMONJAR_MAPID, out endTime))
                {
                    m_CountRemainTime.gameObject.SetActive(true);
                    m_CountRemainTime.Begin(endTime);
@@ -326,8 +326,8 @@
        private void OnBuyTimesOk()
        {
            totalTimes = dungeonModel.GetDungeonTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetDungeonEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
            enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
            m_Times.text = StringUtility.Contact(totalTimes - enterTimes, "/", DemonJarModel.TOTALTIME_LIMIT);
            if (totalTimes - enterTimes >= DemonJarModel.TOTALTIME_LIMIT)
System/FindPrecious/ElderGodAngerWin.cs
@@ -147,7 +147,7 @@
        private void UpdateExpelCoolDown()
        {
            var endTime = model.GetDungeonCoolDownEndTime(DungeonCoolDownType.ElderGodAreaDeadTime);
            var endTime = model.GetCoolDownEndTime(DungeonCoolDownType.ElderGodAreaDeadTime);
            var seconds = (endTime - DateTime.Now).TotalSeconds;
            m_ElderGodBBContent.text = Language.Get("ElderGodBB5", Mathf.Clamp((int)seconds, 0, int.MaxValue));
        }
System/FindPrecious/ElderGodAreaExitWin.cs
@@ -55,7 +55,7 @@
        {
            base.LateUpdate();
            var endTime = dungeonModel.GetDungeonCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            var endTime = dungeonModel.GetCoolDownEndTime(DungeonCoolDownType.LeaveMap);
            if (endTime > DateTime.Now)
            {
                timer -= Time.deltaTime;
System/FindPrecious/ElderGodAreaModel.cs
@@ -125,7 +125,7 @@
        public void OnMapInitOk()
        {
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == ELDERGODAREA_MAPID)
            {
                MapTransferUtility.Instance.MoveToNPC(selectedBoss);
System/FindPrecious/ElderGodAreaWin.cs
@@ -47,8 +47,8 @@
        protected override void OnPreOpen()
        {
            var enterTimes = dungeonModel.GetDungeonEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetDungeonTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var enterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            m_Times.text = Language.Get("Dungeon_LeavingTimes", totalTimes - enterTimes);
        }
@@ -122,15 +122,15 @@
        private bool TestEnterDungeon(out int _error)
        {
            var enterTimes = dungeonModel.GetDungeonEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetDungeonTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var enterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            if (enterTimes >= totalTimes)
            {
                _error = 1;
                return false;
            }
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID)
            {
                _error = 2;
System/FindPrecious/FindPreciousBossRebornBehaviour.cs
@@ -45,24 +45,10 @@
        {
            if (model.currentBossNotify != 0)
            {
                var type = model.GetBossFindPreciousType(model.currentBossNotify);
                if (type == FindPreciousType.DemonJar)
                {
                    if (demonJarModel.GetSurplusTimes() <= 0)
                    {
                        m_ContainerBossReborn.gameObject.SetActive(false);
                    }
                }
                else
                {
                }
                m_ContainerBossReborn.gameObject.SetActive(true);
                var bossId = model.currentBossNotify;
                var config = Config.Instance.Get<NPCConfig>(bossId);
                if (config != null)
                {
                    m_BossIcon.SetSprite(config.HeadPortrait);
@@ -155,7 +141,7 @@
        private void GotoKillBossHomeBoss(int _bossId)
        {
            var config = Config.Instance.Get<BossHomeConfig>(_bossId);
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == BossHomeModel.BOSSHOME_MAPID)
            {
@@ -171,7 +157,7 @@
                    if (vipLevel < vipNeed)
                    {
                        var moneyNeed = bossHomeModel.GetVipLackCost(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                        var dungeonId = dungeonModel.DungeonMap(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                        var dungeonId = dungeonModel.GetDungeonId(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                        var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                        ConfirmCancel.ShowPopConfirm(
                            Language.Get("Mail101"),
@@ -210,7 +196,7 @@
        private void GotoKillElderGodAreaBoss(int _bossId)
        {
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID)
            {
                MapTransferUtility.Instance.MoveToNPC(_bossId);
@@ -270,7 +256,7 @@
            {
                bossHomeModel.selectedFloor = _floor;
                bossHomeModel.selectedBoss = _bossId;
                dungeonModel.SingleChallengeDungeon(BossHomeModel.BOSSHOME_MAPID, bossHomeModel.selectedFloor - 1);
                dungeonModel.SingleChallenge(BossHomeModel.BOSSHOME_MAPID, bossHomeModel.selectedFloor - 1);
            }
            else
            {
@@ -331,7 +317,7 @@
                                else
                                {
                                    var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
                                    dungeonModel.SingleChallengeDungeon(BossHomeModel.BOSSHOME_MAPID, _floor - 1);
                                    dungeonModel.SingleChallenge(BossHomeModel.BOSSHOME_MAPID, _floor - 1);
                                }
                            }
                        }
@@ -342,8 +328,8 @@
        private bool TestEnterElderGodAreaDungeon(out int _error)
        {
            var enterTimes = dungeonModel.GetDungeonEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetDungeonTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var enterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
            if (enterTimes >= totalTimes)
            {
                _error = 1;
System/FindPrecious/FindPreciousModel.cs
@@ -193,7 +193,7 @@
                        if (Config.Instance.ContainKey<DemonJarConfig>(bossId))
                        {
                            var config = Config.Instance.Get<DemonJarConfig>(bossId);
                            var grade = dungeonModel.GetDungeonGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                            var grade = dungeonModel.GetGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                            if ((config.CanEnterTimes == 0 || grade == 0))
                            {
                                AddOneBossRebornNotify(bossId);
@@ -464,7 +464,7 @@
                    if (IsBossAlive(bossId))
                    {
                        var config = Config.Instance.Get<DemonJarConfig>(bossId);
                        var grade = dungeonModel.GetDungeonGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                        var grade = dungeonModel.GetGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
                        if ((config.CanEnterTimes == 0 || grade == 0))
                        {
                            AddOneBossRebornNotify(bossId);
System/FindPrecious/PersonalBossModel.cs
@@ -128,8 +128,8 @@
            }
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var enterTimes = dungeonModel.GetDungeonEnterTimes(PERSONALBOSS_MAPID);
            var totalTimes = dungeonModel.GetDungeonTotalTimes(PERSONALBOSS_MAPID);
            var enterTimes = dungeonModel.GetEnterTimes(PERSONALBOSS_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(PERSONALBOSS_MAPID);
            if (enterTimes >= totalTimes)
            {
@@ -137,7 +137,7 @@
                return;
            }
            var ticketItem = dungeonModel.GetDungeonTicketCost(PERSONALBOSS_MAPID);
            var ticketItem = dungeonModel.GetTicketCost(PERSONALBOSS_MAPID);
            var own = playerPack.GetItemCountByID(PackType.rptItem, ticketItem.id);
            if (own < ticketItem.count)
@@ -170,7 +170,7 @@
                return PersonalBossData.ChallengableLevelCompare(data1, data2);
            });
            var dungeonId = dungeonModel.DungeonMap(PERSONALBOSS_MAPID, 0);
            var dungeonId = dungeonModel.GetDungeonId(PERSONALBOSS_MAPID, 0);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            dungeonTicket = dungeonConfig == null ? 0 : dungeonConfig.TicketID;
@@ -179,7 +179,7 @@
        public void OnMapInitOk()
        {
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            switch (dataMapId)
            {
System/FindPrecious/PersonalBossWin.cs
@@ -37,8 +37,8 @@
        protected override void OnPreOpen()
        {
            totalTimes = dungeonModel.GetDungeonTotalTimes(PersonalBossModel.PERSONALBOSS_MAPID);
            enterTimes = dungeonModel.GetDungeonEnterTimes(PersonalBossModel.PERSONALBOSS_MAPID);
            totalTimes = dungeonModel.GetTotalTimes(PersonalBossModel.PERSONALBOSS_MAPID);
            enterTimes = dungeonModel.GetEnterTimes(PersonalBossModel.PERSONALBOSS_MAPID);
            m_Times.text = StringUtility.Contact(totalTimes - enterTimes, "/", totalTimes);
            m_Times.color = UIHelper.GetUIColor((totalTimes - enterTimes) > 0 ? TextColType.Green : TextColType.Red, true);
System/FindPrecious/WorldBossWin.cs
@@ -144,7 +144,7 @@
        private bool TestGotoKillBoss(out int _error)
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(mapId);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(mapId);
            if (dataMapId == BossHomeModel.BOSSHOME_MAPID || dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID)
            {
@@ -168,7 +168,7 @@
            switch (_error)
            {
                case 1:
                    var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                    var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
                    var tip = string.Empty;
@@ -179,7 +179,7 @@
                        if (vipLevel < vipNeed)
                        {
                            var moneyNeed = bossHomeModel.GetVipLackCost(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                            var dungeonId = dungeonModel.DungeonMap(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                            var dungeonId = dungeonModel.GetDungeonId(BossHomeModel.BOSSHOME_MAPID, PlayerDatas.Instance.baseData.dungeonLineId);
                            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                            tip = Language.Get("QuitRemindBossHome", dungeonConfig.FBName, vipNeed, moneyNeed);
                        }
System/Guard/GuardModel.cs
@@ -80,7 +80,7 @@
        private void OnStageLoadFinish()
        {
            var _mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var _mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (_mapId == 31080)
            {
                SnxxzGame.Instance.StartCoroutine(Co_DungeonDuardCheck());
System/HeavenBattle/HeavenBattleWin.cs
@@ -318,7 +318,7 @@
        private void ClickMatchBtn()
        {
            dungeonModel.SingleChallengeDungeon(dungeonModel.currentDungeon);
            dungeonModel.SingleChallenge(dungeonModel.currentDungeon);
            CloseWin();
        }
System/HeavenBattle/XMZZMissionDetailsWin.cs
@@ -67,8 +67,8 @@
        private void ShowMission()
        {
            var mission = model.mission;
            var dataMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dataMapId, mission.lineID);
            var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dataMapId, mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (config != null)
@@ -82,7 +82,7 @@
                }
                else
                {
                    var dungeonId = model.DungeonMap(dataMapId, mission.lineID);
                    var dungeonId = model.GetDungeonId(dataMapId, mission.lineID);
                    var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                    m_MainLineTask.text = dungeonConfig.FBName;
                }
@@ -92,8 +92,8 @@
        private void UpdateMissions()
        {
            var mission = model.mission;
            var dateMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dateMapId, mission.lineID);
            var dateMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dateMapId, mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (mission.step != dungeonStep)
@@ -133,8 +133,8 @@
        private void UpdateMissionContent(DungeonMissionData _mission, int _targetIndex, MissionBar _missionBar)
        {
            var dateMapId = model.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.DungeonHintMap(dateMapId, _mission.lineID);
            var dateMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var hintId = model.GetDungeonHintId(dateMapId, _mission.lineID);
            var config = Config.Instance.Get<DungeonHintConfig>(hintId);
            if (config == null)
            {
System/HttpRequest/HttpBehaviour.cs
@@ -26,6 +26,11 @@
    bool ok = false;
    string message = string.Empty;
    static HttpBehaviour()
    {
        ServicePointManager.ServerCertificateValidationCallback += RemoteCertificateValidationCallback;
    }
    public static void Create(string _url, string _method, string _content, string _contentType, int _retry = 3, Action<bool, string> _result = null)
    {
        var carrier = new GameObject();
@@ -35,7 +40,7 @@
        behaviour.Begin(_url, _method, _content, _contentType, _retry, _result);
    }
    public void Begin(string _url, string _method, string _content, string _contentType, int _retry = 3, Action<bool, string> _result = null)
    void Begin(string _url, string _method, string _content, string _contentType, int _retry = 3, Action<bool, string> _result = null)
    {
        this.url = _url;
        this.method = _method;
@@ -57,7 +62,6 @@
            request.ReadWriteTimeout = 2000;
            request.Proxy = null;
            request.KeepAlive = false;
            ServicePointManager.ServerCertificateValidationCallback += RemoteCertificateValidationCallback;
        }
        catch (Exception ex)
        {
@@ -113,47 +117,48 @@
    private static bool RemoteCertificateValidationCallback(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
    {
        if (sslPolicyErrors == SslPolicyErrors.None)
            return true;
        var _acceptCertificate = true;
        if ((sslPolicyErrors &
             SslPolicyErrors.RemoteCertificateNotAvailable) == SslPolicyErrors.RemoteCertificateNotAvailable)
        {
            _acceptCertificate = false;
            return true;
        }
        var acceptCertificate = true;
        if ((sslPolicyErrors & SslPolicyErrors.RemoteCertificateNotAvailable) == SslPolicyErrors.RemoteCertificateNotAvailable)
        {
            acceptCertificate = false;
        }
        else
        {
            if ((sslPolicyErrors &
                 SslPolicyErrors.RemoteCertificateNameMismatch) == SslPolicyErrors.RemoteCertificateNameMismatch)
            if ((sslPolicyErrors & SslPolicyErrors.RemoteCertificateNameMismatch) == SslPolicyErrors.RemoteCertificateNameMismatch)
            {
                _acceptCertificate = false;
                acceptCertificate = false;
            }
            if ((sslPolicyErrors &
                 SslPolicyErrors.RemoteCertificateChainErrors) == SslPolicyErrors.RemoteCertificateChainErrors)
            if ((sslPolicyErrors & SslPolicyErrors.RemoteCertificateChainErrors) == SslPolicyErrors.RemoteCertificateChainErrors)
            {
                foreach (X509ChainStatus item in chain.ChainStatus)
                {
                    if (item.Status != X509ChainStatusFlags.RevocationStatusUnknown &&
                        item.Status != X509ChainStatusFlags.OfflineRevocation)
                    {
                        break;
                    }
                    if (item.Status != X509ChainStatusFlags.NoError)
                    {
                        _acceptCertificate = false;
                        acceptCertificate = false;
                    }
                }
            }
        }
        if (_acceptCertificate == false)
        if (acceptCertificate == false)
        {
            _acceptCertificate = true;
            acceptCertificate = true;
        }
        return _acceptCertificate;
        return acceptCertificate;
    }
    void Update()
    {
        if (Time.time > timeOut && !getResult)
System/KnapSack/Logic/ItemOverdueModel.cs
@@ -136,7 +136,7 @@
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            var lineId = PlayerDatas.Instance.baseData.dungeonLineId;
            var dungeonId = dungeonModel.DungeonMap(dungeonModel.GetDungeonDataIdByMapId(mapId), lineId);
            var dungeonId = dungeonModel.GetDungeonId(dungeonModel.GetDataMapIdByMapId(mapId), lineId);
            if (dungeonId == 0)
            {
                return true;
System/Login/LoginWin.cs
@@ -26,6 +26,7 @@
        [SerializeField] RectTransform m_ContainerEnterGame;
        [SerializeField] RectTransform m_ContainerAccount;
        [SerializeField] Image m_ServerState;
        [SerializeField] Text m_ServerStateDescription;
        [SerializeField] Text m_ServerName;
        [SerializeField] protected InputField m_Account;
        [SerializeField] Button m_EnterGame;
@@ -129,15 +130,19 @@
                case ServerState.Maintain:
                case ServerState.Predicted:
                    m_ServerState.SetSprite("XT_FWQ_TB4");
                    m_ServerStateDescription.text = Language.Get("ServerStatus4");
                    break;
                case ServerState.Normal:
                    m_ServerState.SetSprite("XT_FWQ_TB2");
                    m_ServerStateDescription.text = Language.Get("ServerStatus3");
                    break;
                case ServerState.Busy:
                    m_ServerState.SetSprite("XT_FWQ_TB3");
                    m_ServerStateDescription.text = Language.Get("ServerStatus2");
                    break;
                case ServerState.Hot:
                    m_ServerState.SetSprite("XT_FWQ_TB1");
                    m_ServerStateDescription.text = Language.Get("ServerStatus1");
                    break;
            }
        }
System/MainInterfacePanel/ChatFrame.cs
@@ -338,7 +338,7 @@
           
            if (OneKeyList.Contains(PlayerDatas.Instance.baseData.MapID))
            {
                var dataMapId = modelD.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
                var dataMapId = modelD.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
                var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
                string language = string.Empty;
                if (dataMapId == GeneralConfig.Instance.ruinsTranscriptMapId)
@@ -349,7 +349,7 @@
                {
                    var vipLevel = PlayerDatas.Instance.baseData.VIPLv;
                    var vipNeed = bossHomeModel.GetFloorVipRequirement(PlayerDatas.Instance.baseData.dungeonLineId + 1);
                    var dungeonId = modelD.DungeonMap(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                    var dungeonId = modelD.GetDungeonId(dataMapId, PlayerDatas.Instance.baseData.dungeonLineId);
                    var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                    if (vipLevel < vipNeed)
System/MainInterfacePanel/HoistingWin.cs
@@ -80,9 +80,9 @@
            Content.gameObject.SetActive(true);
          
            DungeonRecord dungeonRecord;
            dungeonModel.TryGetDungeonRecord(31080, out dungeonRecord);
            dungeonModel.TryGetRecord(31080, out dungeonRecord);
            var times = dungeonRecord == null ? 0 : dungeonRecord.enterTimes;
            if (FuncOpen.Instance.IsFuncOpen(86) && dungeonModel.GetDungeonTotalTimes(31080) > times)//仙界秘境
            if (FuncOpen.Instance.IsFuncOpen(86) && dungeonModel.GetTotalTimes(31080) > times)//仙界秘境
            {
                FairyLandButton.gameObject.SetActive(true);
            }
System/MainInterfacePanel/InGamePushContainer.cs
@@ -224,14 +224,14 @@
                            show = !GeneralConfig.Instance.bossHomeNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.ElderGodArea:
                            var elderGodEnterTimes = dungeonModel.GetDungeonEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            var elderGodTotalTimes = dungeonModel.GetDungeonTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            var elderGodEnterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            var elderGodTotalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            killable = elderGodTotalTimes > elderGodEnterTimes;
                            show = !GeneralConfig.Instance.elderGodNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.DemonJar:
                            var totalTimes = dungeonModel.GetDungeonTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                            var enterTimes = dungeonModel.GetDungeonEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                            var totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                            var enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                            killable = totalTimes > enterTimes;
                            show = !GeneralConfig.Instance.demonJarNoRebornRemindMaps.Contains(mapId);
                            break;
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -904,7 +904,7 @@
            m_CollectNPCID = npcID;
            m_CollectNPCSID = sid;
            m_CollectBtn.gameObject.SetActive(true);
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            m_CollectIcon.SetSprite(mapId == 31230 ? "TY_UI_8" : "TY_UI_6");
            m_CollectIcon.SetNativeSize();
            m_CollectBtnText.text = mapId == 31230 ? Language.Get("Collect_FairyFeast") : Language.Get("Collect_Normal");
@@ -977,7 +977,7 @@
                    ShowCastSkill();//显示技能组隐藏按钮组(强制切换)
                }
                var _cfg = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                var _skillId = SkillConfig.FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                if (_skillId != 0)
                {
                    if (ModelCenter.Instance.GetModel<SkillModel>().GetXpSkillID() != _skillId)
System/MainWin/SkillContainer.cs
@@ -430,7 +430,7 @@
            if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill)
            {
                var _cfg = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                var _skillId = SkillConfig.FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                if (_skillId != 0)
                {
                    if (ModelCenter.Instance.GetModel<SkillModel>().GetXpSkillID() == _skillId)
System/Message/RichFbEvent.cs
@@ -17,7 +17,7 @@
            case RichTextEventEnum.ENTERFB: {
                    int id = 0;
                    if(int.TryParse(href.mSplits["enterfb"],out id)) {
                        ModelCenter.Instance.GetModel<DungeonModel>().SingleChallengeDungeon(id);
                        ModelCenter.Instance.GetModel<DungeonModel>().SingleChallenge(id);
                    }
                }
                break;
System/PlayerDead/PlayerDeadModel.cs
@@ -147,7 +147,7 @@
        }
        else
        {
            _dungeonOpenTimeModel = Config.Instance.Get<DungeonOpenTimeConfig>(dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID));
            _dungeonOpenTimeModel = Config.Instance.Get<DungeonOpenTimeConfig>(dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID));
            if (_dungeonOpenTimeModel == null)
                return;
System/Realm/RealmCollectWin.cs
@@ -52,7 +52,7 @@
            endTime = TimeUtility.ServerNow.AddMilliseconds(PlayerDatas.Instance.realm.CollectTime);
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            m_FairyFeastTip.gameObject.SetActive(mapId == 31230);
        }
System/Realm/RealmUpWin.cs
@@ -351,7 +351,7 @@
                    var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
                    if (teamModel.myTeam.inTeam && teamModel.myTeam.iamCaptainer)
                    {
                        ModelCenter.Instance.GetModel<DungeonModel>().GroupChallengeDungeon(RealmModel.REALM_DUNGEON_ID, 1);
                        ModelCenter.Instance.GetModel<DungeonModel>().GroupChallenge(RealmModel.REALM_DUNGEON_ID, 1);
                    }
                    else
                    {
@@ -361,7 +361,7 @@
                }
                else
                {
                    ModelCenter.Instance.GetModel<DungeonModel>().SingleChallengeDungeon(RealmModel.REALM_DUNGEON_ID);
                    ModelCenter.Instance.GetModel<DungeonModel>().SingleChallenge(RealmModel.REALM_DUNGEON_ID);
                }
            }
            else
System/RuneTower/RuneTowerModel.cs
@@ -123,7 +123,7 @@
        public void RequestChallengeTower()
        {
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            dungeonModel.SingleChallengeDungeon(RUNETOWER_MAPID, 0);
            dungeonModel.SingleChallenge(RUNETOWER_MAPID, 0);
        }
        public void RequestSetDungeonAction()
System/RuneTower/RuneTowerSweepBuyWin.cs
@@ -74,7 +74,7 @@
            if (TestBuyTime(out error))
            {
                CloseClick();
                dungeonModel.SweepDungeon(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
                dungeonModel.RequestSweep(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
            }
            else
            {
@@ -123,7 +123,7 @@
                             if (_ok)
                             {
                                 CloseClick();
                                 dungeonModel.SweepDungeon(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
                                 dungeonModel.RequestSweep(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
                             }
                         }
                     );
System/RuneTower/RuneTowerSweepResultWin.cs
@@ -217,6 +217,8 @@
                yield return null;
            }
            yield return null;
            m_ResultScrollRect.content.anchoredPosition = m_ResultScrollRect.content.anchoredPosition.SetY(end);
            foreach (var behaviour in resultBehavioursBuf)
            {
System/RuneTower/RuneTowerWin.cs
@@ -164,7 +164,7 @@
                }
                else
                {
                    dungeonModel.SweepDungeon(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
                    dungeonModel.RequestSweep(new Dungeon(RuneTowerModel.RUNETOWER_MAPID, 0));
                }
            }
            else
System/Skill/SkillAccordWin.cs
@@ -478,7 +478,7 @@
            if (AchievementGoto.achievementType == AchievementGoto.ExcuteSkill)
            {
                var _cfg = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
                var _skillId = ModelCenter.Instance.GetModel<AchievementModel>().FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                var _skillId = SkillConfig.FindSkillByJob(_cfg.Condition, PlayerDatas.Instance.baseData.Job);
                if (_skillId != 0)
                {
                    m_AchieveSkillId = _skillId;
System/TaiChi/TaiChilDungeonEntranceWin.cs
@@ -96,7 +96,7 @@
                }
                else
                {
                    MessageWin.Inst.ShowFixedTip(Language.Get("L1020"));
                    SysNotifyMgr.Instance.ShowTip("Join_Space_Lost");
                }
              
            }
System/TaiChi/WytjGameWin.cs
@@ -207,21 +207,27 @@
                        npcDesText.text = Language.Get("Wytj0");
                        break;
                    case 1:
                        SoundPlayer.Instance.PlayUIAudio(733);
                        npcDesText.text = Language.Get("Wytj1");
                        break;
                    case 2:
                        SoundPlayer.Instance.PlayUIAudio(734);
                        npcDesText.text = Language.Get("Wytj2");
                        break;
                    case 3:
                        SoundPlayer.Instance.PlayUIAudio(735);
                        npcDesText.text = Language.Get("Wytj3");
                        break;
                    case 4:
                        SoundPlayer.Instance.PlayUIAudio(736);
                        npcDesText.text = Language.Get("Wytj4");
                        break;
                    case 5:
                        SoundPlayer.Instance.PlayUIAudio(737);
                        npcDesText.text = Language.Get("Wytj5");
                        break;
                    case 6:
                        SoundPlayer.Instance.PlayUIAudio(738);
                        npcDesText.text = Language.Get("Wytj6");
                        break;
                }
@@ -274,10 +280,12 @@
                case Stand_1_Key:
                    break;
                case Star1_Key:
                    SoundPlayer.Instance.PlayUIAudio(57);
                    break;
                case Star3_Key:   
                    StartPlayDiceAni();
                    taiChiModel.SendQuest(1);
                    SoundPlayer.Instance.PlayUIAudio(57);
                    break;
                case Rock_Key:
                    break;
System/Team/GroupDungeonChallengeProcessor.cs
@@ -40,9 +40,9 @@
                    default:
                        int error = 0;
                        var dungeon = new Dungeon(_mapId, _lineId);
                        if (dungeonModel.TestChallangeDungeon(dungeon, out error))
                        if (dungeonModel.TestChallange(dungeon, out error))
                        {
                            dungeonModel.GroupChallengeDungeon(dungeon);
                            dungeonModel.GroupChallenge(dungeon);
                        }
                        else
                        {
@@ -57,7 +57,7 @@
        private void ProcessEnterDungeonError(int _error)
        {
            var dungeonId = dungeonModel.DungeonMap(mapId, lineId);
            var dungeonId = dungeonModel.GetDungeonId(mapId, lineId);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            switch (_error)
@@ -99,7 +99,7 @@
                if (_isAutoMatch)
                {
                    var dungeon = new Dungeon(GeneralConfig.Instance.ruinsTranscriptMapId, main.LayerNumberNow);
                    dungeonModel.GroupChallengeDungeon(dungeon);
                    dungeonModel.GroupChallenge(dungeon);
                }
                else
                {
System/Team/MyTeamWin.cs
@@ -332,7 +332,7 @@
                var targetConfig = Config.Instance.Get<TeamTargetConfig>(mission.mapId);
                if (targetConfig != null)
                {
                    var dungeonId = dungeonModel.DungeonMap(mission.mapId, mission.mapEx);
                    var dungeonId = dungeonModel.GetDungeonId(mission.mapId, mission.mapEx);
                    var config = Config.Instance.Get<DungeonConfig>(dungeonId);
                    m_Mission.text = config.FBName;
                }
@@ -386,7 +386,7 @@
        {
            if (model.myTeam.inTeam)
            {
                var dungeonId = dungeonModel.DungeonMap(model.myTeam.mission.mapId, model.myTeam.mission.mapEx);
                var dungeonId = dungeonModel.GetDungeonId(model.myTeam.mission.mapId, model.myTeam.mission.mapEx);
                if (dungeonId == 0)
                {
                    m_ChallengeDungeon.gameObject.SetActive(false);
@@ -426,7 +426,7 @@
        private void UpdateAutoPrepareButton()
        {
            var multipleFB = false;
            var dungeonId = dungeonModel.DungeonMap(model.myTeam.mission.mapId, model.myTeam.mission.mapEx);
            var dungeonId = dungeonModel.GetDungeonId(model.myTeam.mission.mapId, model.myTeam.mission.mapEx);
            if (dungeonId != 0)
            {
                var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
System/Team/TeamData.cs
@@ -108,7 +108,8 @@
                for (int i = 0; i < members.Count; i++)
                {
                    var member = members[i];
                    if (member.id != PlayerDatas.Instance.baseData.PlayerID && member.mapId == PlayerDatas.Instance.baseData.MapID)
                    if (member.id != PlayerDatas.Instance.baseData.PlayerID
                        && member.mapId == PlayerDatas.Instance.baseData.MapID)
                    {
                        count++;
                    }
@@ -127,7 +128,8 @@
                if (memberCount > 0)
                {
                    Teammate mate;
                    if (TryGetMemberByPlayerId((int)PlayerDatas.Instance.baseData.PlayerID, out mate))
                    var playerId = (int)PlayerDatas.Instance.baseData.PlayerID;
                    if (TryGetMemberByPlayerId(playerId, out mate))
                    {
                        return mate.isCaptainer;
                    }
@@ -210,7 +212,7 @@
            }
        }
        public int GetOnlineMemberCnt()
        public int GetOnlineMemberCount()
        {
            var onlineCount = 0;
            for (int i = 0; i < members.Count; i++)
System/Team/TeamInvitationBehaviour.cs
@@ -8,26 +8,18 @@
{
    public class TeamInvitationBehaviour : ScrollItem
    {
        [SerializeField]
        Image m_Realm;
        [SerializeField]
        Text m_PlayerName;
        [SerializeField]
        Text m_Job;
        [SerializeField]
        Image m_LevelSign;
        [SerializeField]
        Text m_Level;
        [SerializeField] Image m_Realm;
        [SerializeField] Text m_PlayerName;
        [SerializeField] Text m_Job;
        [SerializeField] Text m_Mission;
        [SerializeField] Image m_LevelSign;
        [SerializeField] Text m_Level;
        [SerializeField] Button m_Select;
        [SerializeField] Image m_Selected;
        [SerializeField]
        Button m_Select;
        [SerializeField]
        Image m_Selected;
        TeamModel m_Model;
        TeamModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<TeamModel>()); } }
        TeamModel model { get { return ModelCenter.Instance.GetModel<TeamModel>(); } }
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
        TeamInvitation invitation;
        public override void Display(object _data)
@@ -51,6 +43,19 @@
            m_LevelSign.gameObject.SetActive(isNirvanaLevel);
            m_Level.text = isNirvanaLevel ? (invitation.level - GeneralConfig.Instance.greatMasterStartLV).ToString() : invitation.level.ToString();
            var mission = invitation.mission;
            var targetConfig = Config.Instance.Get<TeamTargetConfig>(mission.mapId);
            if (targetConfig != null)
            {
                var dungeonId = dungeonModel.GetDungeonId(mission.mapId, mission.mapEx);
                var config = Config.Instance.Get<DungeonConfig>(dungeonId);
                m_Mission.text = config.FBName;
            }
            else
            {
                m_Mission.text = Language.Get("RightHereMap");
            }
            m_Selected.gameObject.SetActive(invitation.playerId == model.currentSelectedInvitation);
            m_Select.RemoveAllListeners();
System/Team/TeamInvitationWin.cs
@@ -14,15 +14,12 @@
    public class TeamInvitationWin : Window
    {
        [SerializeField]
        CyclicScroll m_InvitationScroll;
        [SerializeField]
        Button m_Close;
        [SerializeField]
        Button m_Confirm;
        TeamModel m_Model;
        TeamModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<TeamModel>()); } }
        [SerializeField] CyclicScroll m_InvitationScroll;
        [SerializeField] Button m_Close;
        [SerializeField] Button m_Confirm;
        TeamModel model { get { return ModelCenter.Instance.GetModel<TeamModel>(); } }
        #region Built-in
        protected override void BindController()
@@ -55,7 +52,6 @@
        }
        #endregion
        private void ShowInvitations()
        {
System/Team/TeamModel.cs
@@ -254,7 +254,7 @@
            var mapId = _mapId == NONE_MISSION ? 0 : _mapId == CURRENTMAP_MISSION ? PlayerDatas.Instance.baseData.MapID : _mapId;
            var mapEx = _lineId <= 0 ? 0 : _lineId;
            var dungeonId = dungeonModel.DungeonMap(mapId, mapEx);
            var dungeonId = dungeonModel.GetDungeonId(mapId, mapEx);
            var limitLevelMin = 0;
            var limitLevelMax = 0;
@@ -349,7 +349,7 @@
                    lineId = myTeam.mission.mapEx;
                }
                var dungeonId = dungeonModel.DungeonMap(mapId, lineId);
                var dungeonId = dungeonModel.GetDungeonId(mapId, lineId);
                var missionName = string.Empty;
                if (dungeonId == 0)
                {
@@ -575,7 +575,7 @@
                }
                else
                {
                    var dungeonId = ModelCenter.Instance.GetModel<DungeonModel>().DungeonMap(_mission.mapId, _mission.mapEx);
                    var dungeonId = ModelCenter.Instance.GetModel<DungeonModel>().GetDungeonId(_mission.mapId, _mission.mapEx);
                    var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                    minLevel = dungeonConfig.LVLimitMin;
                    maxLevel = dungeonConfig.LVLimitMax;
@@ -917,7 +917,7 @@
            if (!oldInTeam && myTeam.inTeam)
            {
                var dungeonId = dungeonModel.DungeonMap(myTeam.mission.mapId, myTeam.mission.mapEx);
                var dungeonId = dungeonModel.GetDungeonId(myTeam.mission.mapId, myTeam.mission.mapEx);
                if (dungeonId == 311101)
                {
                    var bigRealmIndex = GetBigRealmIndex();
@@ -1039,7 +1039,7 @@
            }
            else
            {
                var dungeonId = dungeonModel.DungeonMap(_mapId, _mapEx);
                var dungeonId = dungeonModel.GetDungeonId(_mapId, _mapEx);
                var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
                return PlayerDatas.Instance.baseData.LV >= dungeonConfig.LVLimitMin;
            }
System/Team/TeamPrepareWin.cs
@@ -67,7 +67,7 @@
            alreadyAutoPrepare = false;
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dungeonId = dungeonModel.DungeonMap(model.teamPrepare.mapId, model.teamPrepare.mapEx);
            var dungeonId = dungeonModel.GetDungeonId(model.teamPrepare.mapId, model.teamPrepare.mapEx);
            var dungeonConfig = Config.Instance.Get<DungeonConfig>(dungeonId);
            m_DungeonName.text = dungeonConfig.FBName;
System/Team/TeamSubMissionBehaviour.cs
@@ -50,7 +50,7 @@
            }
            else
            {
                var dungeonId = dungeonModel.DungeonMap(_mapId, _lineId);
                var dungeonId = dungeonModel.GetDungeonId(_mapId, _lineId);
                var config = Config.Instance.Get<DungeonConfig>(dungeonId);
                m_Mission.text = config.FBName;
            }
System/Team/TeamTargetJoinLimitWin.cs
@@ -90,7 +90,7 @@
            var mapId = _mapId == TeamModel.NONE_MISSION ? 0 : _mapId == TeamModel.CURRENTMAP_MISSION ? PlayerDatas.Instance.baseData.MapID : _mapId;
            var mapEx = _mapEx <= 0 ? 0 : _mapEx;
            var dungeonId = dungeonModel.DungeonMap(mapId, mapEx);
            var dungeonId = dungeonModel.GetDungeonId(mapId, mapEx);
            if (mapId == 0)
            {
@@ -199,7 +199,7 @@
                }
            }
            var key = dungeonModel.DungeonMap(mapId, mapEx);
            var key = dungeonModel.GetDungeonId(mapId, mapEx);
            if (key == 0)
            {
System/Treasure/DemonTreasureCollectPanel.cs
@@ -134,7 +134,7 @@
                            if (_ok)
                            {
                                var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
                                dungeonModel.SingleChallengeDungeon(treasureConfig.MapId, treasureConfig.LineId);
                                dungeonModel.SingleChallenge(treasureConfig.MapId, treasureConfig.LineId);
                            }
                        }
                        );
@@ -142,7 +142,7 @@
                else
                {
                    var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
                    dungeonModel.SingleChallengeDungeon(treasureConfig.MapId, treasureConfig.LineId);
                    dungeonModel.SingleChallenge(treasureConfig.MapId, treasureConfig.LineId);
                }
            }
System/Treasure/TreasureAnimation.cs
@@ -48,6 +48,7 @@
        }
        #region const
        const int POTENTIALUNLOCKSFX = 5190;
        public const int SPIRALSFX = 5126;
        const int CONVERGESFX = 5127;
        public const float LINE_NORMAL_LENGTH = 187f;
@@ -81,6 +82,7 @@
        public event Action OnAchievementTweenComplete;
        public event Action<int> OnUnlockPotentialComplete;
        public event Action<int> OnPotentialLevelUpComplete;
        public event Action<int> OnPotentialLineAnimComplete;
        TreasureShowStep m_Step = TreasureShowStep.None;
        TreasureShowStep m_BeforeStep = TreasureShowStep.None;
@@ -151,29 +153,29 @@
        IEnumerator Co_PotentialLevelUp(int _index, int level)
        {
            yield return StartCoroutine(Co_PotentialSpiral(_index));
            yield return StartCoroutine(Co_PotentialSpiral(_index, SPIRALSFX));
            if (displayTreasure != model.selectedTreasure)
            {
                stepComplete = true;
                yield break;
            }
            UIEffect effect = null;
            if (level == 1)
            {
                effect = EffectMgr.Instance.PlayUIEffect(POTENTIAL_LINESFX, 2100, transform, false);
                if (effect == null)
                {
                    stepComplete = true;
                    yield break;
                }
                effect.keep = true;
                effect.maskArea = m_PotentialLineMasks[_index];
                effect.SetMask();
                yield return StartCoroutine(Co_DisplayPotentialLine(_index,effect));
            }
            //UIEffect effect = null;
            //if (level == 1)
            //{
            //    effect = EffectMgr.Instance.PlayUIEffect(POTENTIAL_LINESFX, 2100, transform, false);
            //    if (effect == null)
            //    {
            //        stepComplete = true;
            //        yield break;
            //    }
            //    effect.keep = true;
            //    effect.maskArea = m_PotentialLineMasks[_index];
            //    effect.SetMask();
            //    yield return StartCoroutine(Co_DisplayPotentialLine(_index,effect));
            //}
            if (displayTreasure != model.selectedTreasure)
            {
                StopPotentialLineEffect(effect);
                //StopPotentialLineEffect(effect);
                stepComplete = true;
                yield break;
            }
@@ -182,8 +184,34 @@
                OnPotentialLevelUpComplete(_index);
            }
            stepComplete = true;
            yield return null;
            //yield return null;
            //StopPotentialLineEffect(effect);
        }
        public void DisplayPotentialLine(int _index)
        {
            stepComplete = false;
            StartCoroutine(Co_PotentialLineAnim(_index));
        }
        IEnumerator Co_PotentialLineAnim(int _index)
        {
            UIEffect effect = EffectMgr.Instance.PlayUIEffect(POTENTIAL_LINESFX, 2100, transform, false);
            if (effect == null)
            {
                stepComplete = true;
                yield break;
            }
            effect.keep = true;
            effect.maskArea = m_PotentialLineMasks[_index];
            effect.SetMask();
            yield return StartCoroutine(Co_DisplayPotentialLine(_index, effect));
            stepComplete = true;
            StopPotentialLineEffect(effect);
            if (OnPotentialLineAnimComplete != null)
            {
                OnPotentialLineAnimComplete(_index);
            }
        }
        private void StopPotentialLineEffect(UIEffect _effect)
@@ -197,9 +225,9 @@
            }
        }
        IEnumerator Co_PotentialSpiral(int _index)
        IEnumerator Co_PotentialSpiral(int _index, int effectId)
        {
            var effect = EffectMgr.Instance.PlayUIEffect(SPIRALSFX, 2700, m_TreasurePotentials[_index].transform, false);
            var effect = EffectMgr.Instance.PlayUIEffect(effectId, 2700, m_TreasurePotentials[_index].transform, false);
            var duration = effect.duration;
            var _time = 0f;
            while (_time < duration)
@@ -252,7 +280,8 @@
        IEnumerator Co_UnlockTreasurePotential(int _index)
        {
            yield return StartCoroutine(Co_PotentialSpiral(_index));
            StartCoroutine(Co_PotentialSpiral(_index, POTENTIALUNLOCKSFX));
            yield return WaitingForSecondConst.WaitMS600;
            if (displayTreasure != model.selectedTreasure)
            {
                stepComplete = true;
@@ -765,11 +794,11 @@
                m_PotentialPointSclTweens[_index].Play();
                m_PotentialPointSclTweens[_index].SetEndState();
            }
            stepComplete = true;
            if (OnStepComplete != null)
            {
                OnStepComplete(TreasureShowStep.FirstPotential);
            }
            stepComplete = true;
        }
        private void OnEnterPotential()
System/Treasure/TreasureComponent.cs
@@ -28,6 +28,7 @@
        private SkinnedMeshRenderer treasureSkin;
        private Transform bottom;
        private Transform name;
        private TextMesh condition;
        #region 红点
        private Transform potentialRed;
@@ -49,6 +50,7 @@
        static Dictionary<TreasureCategory, GameObjectPoolManager.GameObjectPool> m_BottomPoolDict = new Dictionary<TreasureCategory, GameObjectPoolManager.GameObjectPool>();
        static Dictionary<TreasureState, GameObjectPoolManager.GameObjectPool> m_StatePoolDict = new Dictionary<TreasureState, GameObjectPoolManager.GameObjectPool>();
        static GameObjectPoolManager.GameObjectPool m_ConditionPool;
        static Vector3 m_CacheBottomScale = Vector3.zero;
        TreasureModel m_Model;
@@ -59,6 +61,8 @@
                return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<TreasureModel>());
            }
        }
        AchievementModel achievementModel { get { return ModelCenter.Instance.GetModel<AchievementModel>(); } }
        public void SetActive(bool _active)
        {
@@ -84,6 +88,7 @@
                RecycleLockEffect();
                RecycleCollectingSfx();
                RecycleRedpoint();
                RecycleCondition();
                RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
            }
            interactProcessor.SetActive(_active);
@@ -307,16 +312,19 @@
                    RecycleCollectingSfx();
                    RequestTreasureEffect();
                    RecycleLockEffect();
                    RecycleCondition();
                    break;
                case TreasureState.Collecting:
                    RequestTreasureEffect();
                    RequestCollectingSfx();
                    RecycleLockEffect();
                    RecycleCondition();
                    break;
                case TreasureState.Locked:
                    RecycleCollectingSfx();
                    RecycleTreasureEffect();
                    RequestLockEffect();
                    RequestCondition();
                    break;
            }
            if (model.GetTreasureUnlockShow(UI3DTreasureSelectStage.Instance.currentCategory) == _treasure.id)
@@ -585,6 +593,78 @@
            }
        }
        void RequestCondition()
        {
            RecycleCondition();
            if (category != TreasureCategory.Human)
            {
                return;
            }
            string displayStr = string.Empty;
            if (model.IsVersionUnOpenTreasure(treasureId))
            {
                displayStr = "=";
            }
            else
            {
                Achievement achievement = null;
                var achievementId = 0;
                var unlock = false;
                if (model.TryGetTreasureUnlockAchievement(treasureId, out achievementId))
                {
                    if (achievementModel.TryGetAchievement(achievementId, out achievement))
                    {
                        unlock = true;
                    }
                }
                if (unlock && !achievement.completed)
                {
                    var _achievementConfig = Config.Instance.Get<SuccessConfig>(achievementId);
                    var _missionId = _achievementConfig.Condition[0];
                    var _taskConfig = Config.Instance.Get<PyTaskConfig>(_missionId);
                    if (_taskConfig == null)
                    {
                        return;
                    }
                    if (_achievementConfig.Type == 3)
                    {
                        displayStr = StringUtility.Contact(_taskConfig.lv, "+");
                    }
                }
            }
            if (string.IsNullOrEmpty(displayStr))
            {
                return;
            }
            if (m_ConditionPool == null)
            {
                var _prefab = UILoader.LoadPrefab("TreasureCondition");
                m_ConditionPool = GameObjectPoolManager.Instance.RequestPool(_prefab);
            }
            condition = m_ConditionPool.Request().GetComponent<TextMesh>();
            condition.gameObject.SetActive(true);
            condition.transform.SetParent(root);
            condition.transform.localPosition = Vector3.zero;
            condition.transform.LookAt(UI3DTreasureSelectStage.Instance.center);
            condition.transform.localPosition = new Vector3(0, -1.75f, 0f);
            condition.transform.localScale = new Vector3(-1, 1, 1);
            condition.text = displayStr;
            LayerUtility.SetLayer(condition.gameObject, LayerUtility.UILayer, true);
        }
        void RecycleCondition()
        {
            if (m_ConditionPool != null && condition != null)
            {
                m_ConditionPool.Release(condition.gameObject);
                condition = null;
            }
        }
        public Vector3 GetAdaptiveDistance(Vector3 _distance)
        {
            var normal = Constants.DESIGN_RESOLUTION.x / Constants.DESIGN_RESOLUTION.y;
@@ -617,6 +697,7 @@
            RecycleBackLight();
            RecycleLockEffect();
            RecycleRedpoint();
            RecycleCondition();
            RequestSpecialEffect();
            Treasure _treasure;
@@ -653,6 +734,7 @@
        public void PlayUnlockShow()
        {
            RecycleLockEffect();
            RecycleCondition();
            try
            {
                var _effect = SFXPlayUtility.Instance.Play(category == TreasureCategory.Demon ? 5157 : 5132, treasureRoot);
System/Treasure/TreasureDemonBehaviour.cs
@@ -142,7 +142,7 @@
            if (_cfg != null)
            {
                model.collectingDemon = model.selectedTreasure;
                ModelCenter.Instance.GetModel<DungeonModel>().SingleChallengeDungeon(TreasureModel.TREASURE_DATAMAPID, _cfg.LineId);
                ModelCenter.Instance.GetModel<DungeonModel>().SingleChallenge(TreasureModel.TREASURE_DATAMAPID, _cfg.LineId);
            }
        }
    }
System/Treasure/TreasureDungeonVictoryWin.cs
@@ -55,7 +55,7 @@
        {
            base.OnActived();
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var config = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
            StartCoroutine(Co_DelayDisplay(config.DelayTime * 0.001f));
System/Treasure/TreasureLevelUpWin.cs
@@ -638,7 +638,7 @@
                if (PlayerDatas.Instance.baseData.LV >= _cfg.ChallengeLevel)
                {
                    model.collectingHuman = model.selectedTreasure;
                    dungeonModel.SingleChallengeDungeon(TreasureModel.TREASURE_DATAMAPID, _cfg.LineId);
                    dungeonModel.SingleChallenge(TreasureModel.TREASURE_DATAMAPID, _cfg.LineId);
                }
            }
        }
System/Treasure/TreasureModel.cs
@@ -470,7 +470,7 @@
        public int GetTreasureIdByMapIdAndLineId(int _mapId, int _lineId)
        {
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(_mapId);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(_mapId);
            var allConfigs = Config.Instance.GetAllValues<TreasureConfig>();
            foreach (var config in allConfigs)
            {
@@ -887,7 +887,7 @@
                return;
            }
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var mapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var mapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (mapId == 41110)
            {
                return;
System/Treasure/TreasurePotentialBriefInfo.cs
@@ -19,6 +19,7 @@
        [SerializeField] Button m_Button;
        [SerializeField] UIEffect m_PotentialSfx;
        [SerializeField] Image m_Select;
        [SerializeField] Image m_Icon;
        //[SerializeField] ScaleTween m_SelectScale;
        public TreasurePotential potential { get; private set; }
@@ -63,7 +64,8 @@
            }
            m_Level.text = _unlock ? StringUtility.Contact(_potential.level, "/", maxLevel) : string.Empty;
            m_Level.transform.localScale = Vector3.one;
            m_PotentialName.text = config.SkillName;// _unlock ? config.SkillName : string.Empty;
            DisplayName(_unlock, config);
            model.potentialLevelChangeEvent -= OnPotentialLevelUp;
            model.potentialLevelChangeEvent += OnPotentialLevelUp;
@@ -97,19 +99,30 @@
            bool _unlock = potential != null && model.IsPotentialUnlock(model.selectedTreasure, potential.id);
            m_Level.text = _unlock ? StringUtility.Contact(potential.level, "/", maxLevel) : string.Empty;
            m_Level.transform.localScale = Vector3.one;
            m_PotentialName.text = config.SkillName;// _unlock ? config.SkillName : string.Empty;
            DisplayName(_unlock, config);
        }
        void DisplayName(bool unlock, SkillConfig config)
        {
            m_PotentialName.text = config.SkillName;
            m_PotentialName.color = UIHelper.GetUIColor(TextColType.LightYellow);
            if (!unlock)
            {
                var requirement = string.Empty;
                if (config.LearnSkillReq > 0 && config.LearnSkillLV > 0)
                {
                    var preskillConfig = Config.Instance.Get<SkillConfig>(config.LearnSkillReq);
                    requirement = Language.Get("Hallows_NeedSkillLVStart", preskillConfig.SkillName, config.LearnSkillLV);
                    m_PotentialName.text = requirement;
                    m_PotentialName.color = UIHelper.GetUIColor(TextColType.Red);
                }
            }
        }
        public void OnPotentialSelected(int _potentialId)
        {
            //m_SelectScale.SetEndState();
            m_Select.gameObject.SetActive(_potentialId == potential.id);
        }
        //public void DisplaySelectSfxScale()
        //{
        //    m_SelectScale.Play();
        //}
        private void OnPotentialLevelUp(int _treasureId, int _potential)
        {
@@ -128,10 +141,12 @@
            m_PotentialSfx.loop = true;
            m_DeadPotentailTween.enabled = false;
            m_DeadPotentailTween.SetStartState();
            m_Icon.material = MaterialUtility.GetUIDefaultGraphicMaterial();
            switch (_state)
            {
                case 0:
                    m_DeadPotentailTween.enabled = true;
                    m_Icon.material = MaterialUtility.GetDefaultSpriteGrayMaterial();
                    break;
                case 1:
                    m_PotentialSfx.effect = 5128;
System/Treasure/TreasurePotentialLines.cs
@@ -29,6 +29,14 @@
                / TreasureAnimation.LINE_NORMAL_LENGTH * TreasureAnimation.LINE_NORMAL_SCALE);
            animator.Play(TreasureAnimation.POTENTIAL_LINE_STATE_2, 0, 0);
        }
        public void Dispose()
        {
            for (int i = 0; i < m_Lines.Length; i++)
            {
                m_Lines[i].StopImediatly();
            }
        }
    }
}
System/Treasure/TreasurePotentialPanel.cs
@@ -160,7 +160,10 @@
                    behaviour.gameObject.SetActive(true);
                    behaviour.treasurePotential = this;
                    behaviour.DisplayBaseInfo(m_Treasure.potentials[i], _state);
                    m_PotentialLine.Display(i, m_Treasure.potentials[i].level >= 1);
                    if (_state != 2 && m_TreasureAnimation.step == TreasureAnimation.TreasureShowStep.UnLock)
                    {
                        m_PotentialLine.Display(i, model.IsPotentialUnlock(m_Treasure.id, m_Treasure.potentials[i].id));
                    }
                }
                else
                {
@@ -220,6 +223,9 @@
            m_TreasureAnimation.OnPotentialLevelUpComplete -= OnPotentialLevelUpComplete;
            m_TreasureAnimation.OnPotentialLevelUpComplete += OnPotentialLevelUpComplete;
            m_TreasureAnimation.OnPotentialLineAnimComplete -= OnPotentialLineAnimComplete;
            m_TreasureAnimation.OnPotentialLineAnimComplete += OnPotentialLineAnimComplete;
            model.potentialBookSelectEvent -= DisplayPotentialBook;
            model.potentialBookSelectEvent += DisplayPotentialBook;
@@ -240,6 +246,8 @@
                behaviour.Dispose();
            }
            m_PotentialLine.Dispose();
            model.potentialBookSelectEvent -= DisplayPotentialBook;
            model.onPotentialLevelUpResultEvent -= OnPotentialLevelUp;
            model.potentialLevelUpdate -= PotentialLevelUpdate;
@@ -250,6 +258,7 @@
            m_TreasureAnimation.OnUnlockPotentialComplete -= OnUnlockPotentialComplete;
            m_TreasureAnimation.OnPotentialLevelUpComplete -= OnPotentialLevelUpComplete;
            RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
            m_TreasureAnimation.OnPotentialLineAnimComplete -= OnPotentialLineAnimComplete;
            m_SelectedPotential = 0;
        }
@@ -265,7 +274,6 @@
        private void OnPotentialLevelUpComplete(int _index)
        {
            var potential = m_Treasure.potentials[_index];
            m_PotentialLine.Display(_index, true);
            potentialBriefInfos[_index].DisplayStateSfx();
            potentialBriefInfos[_index].StartLevelTween();
            var _nextPotential = GetNextPotential(potential.id);
@@ -290,6 +298,15 @@
        private void OnUnlockPotentialComplete(int _index)
        {
            selectedPotential = m_Treasure.potentials[_index].id;
            m_TreasureAnimation.DisplayPotentialLine(_index);
        }
        private void OnPotentialLineAnimComplete(int _index)
        {
            if (_index < potentialBriefInfos.Length)
            {
                m_PotentialLine.Display(_index, true);
            }
        }
        private void OnStepComplete(TreasureAnimation.TreasureShowStep _step)
@@ -304,6 +321,7 @@
                        m_TreasureAnimation.UnlockTreasurePotential(0);
                        model.SetPotentialUnlockShow(model.selectedTreasure);
                    }
                    DisplayLines();
                    break;
                case TreasureAnimation.TreasureShowStep.FirstPotential:
                    if (FuncOpen.Instance.IsFuncOpen(82))
@@ -314,6 +332,25 @@
                        model.SetPotentialUnlockShow(model.selectedTreasure);
                    }
                    break;
            }
        }
        void DisplayLines()
        {
            if (m_Treasure == null)
            {
                return;
            }
            for (int i = 0; i < potentialBriefInfos.Length; i++)
            {
                if (i < m_Treasure.potentials.Count)
                {
                    m_PotentialLine.Display(i, model.IsPotentialUnlock(m_Treasure.id, m_Treasure.potentials[i].id));
                }
                else
                {
                    m_PotentialLine.Display(i, false);
                }
            }
        }
@@ -741,10 +778,6 @@
                }
                if (potentialBriefInfos[i].potential.id == id)
                {
                    if (level == 1)
                    {
                        m_PotentialLine.Display(i, false);
                    }
                    m_TreasureAnimation.DisplayPotentialLevelUp(i, level);
                    break;
                }
System/Treasure/TreasureSoulWin.cs
@@ -266,7 +266,7 @@
                        if (!model.IsCompleteLockAchievement(model.selectSoul))
                        {
                            m_Active.gameObject.SetActive(false);
                            m_GotoRealm.gameObject.SetActive(true);
                            m_GotoRealm.gameObject.SetActive(false);
                        }
                        else
                        {
UI/Common/EnableAccordingToMap.cs
@@ -38,7 +38,7 @@
            }
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId != 0)
            {
UI/Common/UI3DShowHero.cs
@@ -329,8 +329,15 @@
            if (itemID == 0)
            {
                // 这里不再读取默认的副手装备,而是根据套装读取默认的手臂装备
                newSecondary = clothesId + 2900;
                if (job == 1)
                {
                    // 这里不再读取默认的副手装备,而是根据套装读取默认的手臂装备
                    newSecondary = clothesId + 2900;
                }
                else
                {
                    newSecondary = config.BaseEquip[2];
                }
            }
            else
            {
UI/HUD/NPCDialogueBubble.cs
@@ -22,7 +22,7 @@
        public static DialogueBubble TimingShow(int _npcId, Transform _target, Camera _camera)
        {
            var dataMapId = dungeonModel.GetDungeonDataIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            var dialogue = GetDialogue(_npcId, dataMapId);
            if (dialogue == null)
            {
Utility/EnumHelper.cs
@@ -551,6 +551,7 @@
    CDBPlayerRefresh_FuncDef = 185,  // 功能层防御  185
    CDBPlayerRefresh_TreasureScore = 186, //寻宝商店积分
    CDBPlayerRefresh_Danjing = 187,              // 丹精 187
    CDBPlayerRefresh_NPCHurtAddPer,//对怪物伤害加成 188
};
/** 物品加成类型 */
@@ -938,7 +939,7 @@
    StoneBasePer = 83, //宝石基础属性
    RealmBasePer = 84, //境界基础属性
    PetSkillAtkRate = 85, //宠物技能伤害
    NpcHurtAddPer = 89,//对怪物伤害加成
}
//UI图标类型
public enum SpriteFileType
Utility/LanguageVerify.cs
@@ -94,7 +94,7 @@
        var account = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account;
        var playerId = PlayerDatas.Instance.baseData.PlayerID;
        var playerName = PlayerDatas.Instance.baseData.PlayerName;
        var playerName = UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName);
        var tables = new Dictionary<string, string>();
        tables["game_code"] = "snxxz";
@@ -113,7 +113,7 @@
        tables["edit_uid"] = account;
        tables["edit_rid"] = playerId.ToString();
        tables["edit_name"] = UIHelper.ServerStringTrim(playerName);
        tables["edit_name"] = playerName;
        tables["notice"] = op_type == 2 ? string.Empty : verifyContent;
        var ts = System.DateTime.UtcNow - new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
Utility/OperationLogCollect.cs
@@ -148,7 +148,7 @@
        tables["AccountID"] = ModelCenter.Instance.GetModel<LoginModel>().sdkLoginResult.account;
        tables["RoleID"] = StringUtility.Contact(isFairy ? UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.FamilyName) : string.Empty,
           isFairy ? "-" : string.Empty, UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName));
        tables["ToRoleID"] = toPlayer;
        tables["ToRoleID"] = UIHelper.ServerStringTrim(toPlayer);
        tables["Level"] = PlayerDatas.Instance.baseData.LV.ToString();
        tables["VIPLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString();
        tables["Content"] = WWW.EscapeURL(UIHelper.TrimContentToServer(content));
Utility/UIHelper.cs
@@ -229,6 +229,8 @@
                return PlayerDatas.Instance.extersion.ComboDamPer;
            case AttrEnum.SkillHurtPrecent:
                return PlayerDatas.Instance.extersion.skillAtkRateReduce;
            case AttrEnum.NpcHurtAddPer:
                return PlayerDatas.Instance.extersion.NpcHurtAddPer;
        }
        return 0;
    }