少年修仙传客户端代码仓库
client_Wu Xijin
2019-01-22 301753e85218375dcbe4c1138d0f161ccdcc89da
5920 【前端】【1.5.100】诛仙塔功能开发
21个文件已修改
37个文件已添加
1754 ■■■■■ 已修改文件
Core/GameEngine/DataToCtl/PackageRegedit.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/JadeDynastyTowerConfig.cs 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/JadeDynastyTowerConfig.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/ConfigManager.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/PlayerDatas.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Rank/PlayerRankData.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H01_System/DTC0102_tagCDBPlayer.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA127_tagMCStartChangeMap.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB2_ActionMap/DTCB213_tagMCZhuXianTowerInfo.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB2_ActionMap/DTCB213_tagMCZhuXianTowerInfo.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HB2_ActionMap/HB213_tagMCZhuXianTowerInfo.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HB2_ActionMap/HB213_tagMCZhuXianTowerInfo.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/JadeDynastyTowerDungeonStage.cs 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/JadeDynastyTowerDungeonStage.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestWin.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonFightWin.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonModel.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonVictoryWin.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TargetBriefInfoWin.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerBehaviour.cs 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerBehaviour.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerFloorBehaviour.cs 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerFloorBehaviour.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerHintWin.cs 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerHintWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerModel.cs 198 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerModel.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerRankBehaviour.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerRankBehaviour.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerRewardBehaviour.cs 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerRewardBehaviour.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerUnLockWin.cs 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerUnLockWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerWin.cs 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadeDynastyTowerWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadyDynastyTowerVictoryWin.cs 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/JadyDynastyTowerVictoryWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/TowerWin.cs 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyTower/TowerWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/HighSettingTip.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/MainInterfaceWin.cs 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Message/RichTableEvent.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Rank/RankHeadCell.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Rank/RankModel.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneNewGotWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RuneTower/RuneTowerWin.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowBase/ModelCenter.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/EnumHelper.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/DataToCtl/PackageRegedit.cs
@@ -25,6 +25,7 @@
    public static void Init()
    {
        // 登记相应的数据体及对应的数据转逻辑类
        Register(typeof(HB213_tagMCZhuXianTowerInfo), typeof(DTCB213_tagMCZhuXianTowerInfo));
        Register(typeof(HB413_tagMCPlayerSkills), typeof(DTCB413_tagMCPlayerSkills));
        Register(typeof(HB212_tagMCZhuXianBossCnt), typeof(DTCB212_tagMCZhuXianBossCnt));
        Register(typeof(H0208_tagTalkCountry), typeof(DTC0208_tagTalkCountry));
Core/GameEngine/Model/Config/JadeDynastyTowerConfig.cs
New file
@@ -0,0 +1,101 @@
//--------------------------------------------------------
//    [Author]:            第二世界
//    [  Date ]:           Tuesday, January 22, 2019
//--------------------------------------------------------
using UnityEngine;
using System;
namespace TableConfig {
    public partial class JadeDynastyTowerConfig : ConfigBase {
        public int floorId { get ; private set ; }
        public int floorIndex { get ; private set ; }
        public string floorName { get ; private set; }
        public int[] rewardIdsLevelS;
        public int[] rewardCountsLevelS;
        public int[] rewardIdsLevelA;
        public int[] rewardCountsLevelA;
        public int[] rewardIdsLevelB;
        public int[] rewardCountsLevelB;
        public int unLockEquipPlace { get ; private set ; }
        public string specialRewardDescription { get ; private set; }
        public int fightPower { get ; private set ; }
        public override string getKey()
        {
            return floorId.ToString();
        }
        public override void Parse() {
            try
            {
                floorId=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0;
                floorIndex=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0;
                floorName = rawContents[2].Trim();
                string[] rewardIdsLevelSStringArray = rawContents[3].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardIdsLevelS = new int[rewardIdsLevelSStringArray.Length];
                for (int i=0;i<rewardIdsLevelSStringArray.Length;i++)
                {
                     int.TryParse(rewardIdsLevelSStringArray[i],out rewardIdsLevelS[i]);
                }
                string[] rewardCountsLevelSStringArray = rawContents[4].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardCountsLevelS = new int[rewardCountsLevelSStringArray.Length];
                for (int i=0;i<rewardCountsLevelSStringArray.Length;i++)
                {
                     int.TryParse(rewardCountsLevelSStringArray[i],out rewardCountsLevelS[i]);
                }
                string[] rewardIdsLevelAStringArray = rawContents[5].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardIdsLevelA = new int[rewardIdsLevelAStringArray.Length];
                for (int i=0;i<rewardIdsLevelAStringArray.Length;i++)
                {
                     int.TryParse(rewardIdsLevelAStringArray[i],out rewardIdsLevelA[i]);
                }
                string[] rewardCountsLevelAStringArray = rawContents[6].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardCountsLevelA = new int[rewardCountsLevelAStringArray.Length];
                for (int i=0;i<rewardCountsLevelAStringArray.Length;i++)
                {
                     int.TryParse(rewardCountsLevelAStringArray[i],out rewardCountsLevelA[i]);
                }
                string[] rewardIdsLevelBStringArray = rawContents[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardIdsLevelB = new int[rewardIdsLevelBStringArray.Length];
                for (int i=0;i<rewardIdsLevelBStringArray.Length;i++)
                {
                     int.TryParse(rewardIdsLevelBStringArray[i],out rewardIdsLevelB[i]);
                }
                string[] rewardCountsLevelBStringArray = rawContents[8].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewardCountsLevelB = new int[rewardCountsLevelBStringArray.Length];
                for (int i=0;i<rewardCountsLevelBStringArray.Length;i++)
                {
                     int.TryParse(rewardCountsLevelBStringArray[i],out rewardCountsLevelB[i]);
                }
                unLockEquipPlace=IsNumeric(rawContents[9]) ? int.Parse(rawContents[9]):0;
                specialRewardDescription = rawContents[10].Trim();
                fightPower=IsNumeric(rawContents[11]) ? int.Parse(rawContents[11]):0;
            }
            catch (Exception ex)
            {
                DebugEx.Log(ex);
            }
        }
    }
}
Core/GameEngine/Model/Config/JadeDynastyTowerConfig.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: bcb7d8fc32f347441a4024465ce1df51
timeCreated: 1548127880
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/GameEngine/Model/ConfigManager.cs
@@ -225,6 +225,7 @@
        AddAsyncTask<FashionDressConfig>();
        AddAsyncTask<WeekPartyPointConfig>();
        AddAsyncTask<SceneReplaceConfig>();
        AddAsyncTask<JadeDynastyTowerConfig>();
        AddAsyncTask<JadeDynastyBossConfig>();
        AddAsyncTask<JadeDynastySuitAttrConfig>();
Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -595,6 +595,7 @@
                        GameNetSystem.Instance.crossServerConnected_Loigc = false;
                        LoadingWin.targetMapResId = 1;
                        WindowCenter.Instance.Open<LoadingWin>();
                        GameNetSystem.Instance.DisconnectCrossServer();
                        var sendInfo = new CA108_tagCMRefreshMainServerRole();
                        GameNetSystem.Instance.SendInfo(sendInfo);
Core/GameEngine/Model/Player/Rank/PlayerRankData.cs
@@ -123,6 +123,7 @@
        OpenServerGodWeapon = 20,
        OpenServerRecharge = 21,
        OpenServerPet = 22,
        JadeDynastyTower=23,//诛仙塔排行榜
    }
    public class RankData
Core/NetworkPackage/DTCFile/ServerPack/H01_System/DTC0102_tagCDBPlayer.cs
@@ -152,6 +152,9 @@
                case RuneTowerModel.RUNETOWER_MAPID:
                    StageManager.Instance.Load<RuneTowerDungeonStage>(_mapConfig.MapID, vNetData.socketType);
                    break;
                case JadeDynastyTowerModel.DATA_MAPID:
                    StageManager.Instance.Load<JadeDynastyTowerDungeonStage>(_mapConfig.MapID, vNetData.socketType);
                    break;
                case DemonJarModel.DEMONJAR_SINGLEMAPID:
                    StageManager.Instance.Load<FakeDemonJarDungeonStage>(_mapConfig.MapID, vNetData.socketType);
                    break;
Core/NetworkPackage/DTCFile/ServerPack/HA1_Sys/DTCA127_tagMCStartChangeMap.cs
@@ -183,6 +183,9 @@
            case RuneTowerModel.RUNETOWER_MAPID:
                StageManager.Instance.Load<RuneTowerDungeonStage>(_mapConfig.MapID, package.socketType);
                break;
            case JadeDynastyTowerModel.DATA_MAPID:
                StageManager.Instance.Load<JadeDynastyTowerDungeonStage>(_mapConfig.MapID, package.socketType);
                break;
            case DemonJarModel.DEMONJAR_SINGLEMAPID:
                StageManager.Instance.Load<FakeDemonJarDungeonStage>(_mapConfig.MapID, package.socketType);
                break;
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 3e05761d690b75440a6be79207d0fb01
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 1d70ccd06161e0443b7a802ad94292f8
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 71e878ac60c49ad4f964dd2dbc725739
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: eed34091b0568664b9fb42f0634496c1
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HB2_ActionMap/DTCB213_tagMCZhuXianTowerInfo.cs
New file
@@ -0,0 +1,12 @@
using UnityEngine;
using System.Collections;
using Snxxz.UI;
// B2 13 诛仙塔通关层数 #tagMCZhuXianTowerInfo
public class DTCB213_tagMCZhuXianTowerInfo : DtcBasic {
    JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
    public override void Done(GameNetPackBasic vNetPack) {
        base.Done(vNetPack);
        var  vNetData = vNetPack as HB213_tagMCZhuXianTowerInfo;         model.UpdateHighestPassFloor(vNetData);
    }
}
Core/NetworkPackage/DTCFile/ServerPack/HB2_ActionMap/DTCB213_tagMCZhuXianTowerInfo.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: de61b4ddcb3826a46bedb2c821df0d52
timeCreated: 1548062939
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 32ceb8b7faf99f84a8b73ce53c5e3e4d
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAE_Truck.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 77f69c2b862d1704299a32d0d8eeb71e
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAF_Merge.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: fa14960fa44b0d1439bab471a764e34f
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HB0_Event.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: d914565b65f8e8145988734c4d915834
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HB2_ActionMap/HB213_tagMCZhuXianTowerInfo.cs
New file
@@ -0,0 +1,17 @@
using UnityEngine;
using System.Collections;
// B2 13 诛仙塔通关层数 #tagMCZhuXianTowerInfo
public class HB213_tagMCZhuXianTowerInfo : GameNetPackBasic {
    public uint Floor;    // 已通关层
    public HB213_tagMCZhuXianTowerInfo () {
        _cmd = (ushort)0xB213;
    }
    public override void ReadFromBytes (byte[] vBytes) {
        TransBytes (out Floor, vBytes, NetDataType.DWORD);
    }
}
Core/NetworkPackage/ServerPack/HB2_ActionMap/HB213_tagMCZhuXianTowerInfo.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 1796d4c1af065814eb764a01e6066e76
timeCreated: 1548062938
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Fight/Stage/Dungeon/JadeDynastyTowerDungeonStage.cs
New file
@@ -0,0 +1,56 @@
using Snxxz.UI;
using System.Collections;
using TableConfig;
using UnityEngine;
public class JadeDynastyTowerDungeonStage : DungeonStage
{
    Animator m_TowerAnimator;
    Camera m_ShowCamera;
    Vector3 defaultShowCameraPosition;
    Quaternion defaultShowCameraRotation;
    float defaultFov;
    JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
    public override void Initialize()
    {
        base.Initialize();
    }
    public override void UnInitialize()
    {
        StopAllCoroutines();
        base.UnInitialize();
    }
    protected override void OnStageLoadFinish()
    {
        base.OnStageLoadFinish();
        WindowCenter.Instance.Open<JadeDynastyTowerHintWin>();
    }
    public void PerformChallengeNextLevel()
    {
        WindowCenter.Instance.Close<DungeonGradeWin>();
        WindowCenter.Instance.Close<MapNameHintWin>();
        WindowCenter.Instance.Close<JadeDynastyTowerHintWin>();
        model.RequestRefreshMonster();
        if (PlayerDatas.Instance.hero != null)
        {
            PlayerDatas.Instance.hero.Behaviour.StartHandupAI();
        }
        var mapConfig = Config.Instance.Get<MapConfig>(PlayerDatas.Instance.baseData.MapID);
        var mapResConfig = DTCA127_tagMCStartChangeMap.GetMapResourcesConfig();
        SoundPlayer.Instance.PlayBackGroundMusic(mapResConfig.Music);
        WindowCenter.Instance.Open<DungeonEndCoolDownWin>();
        WindowCenter.Instance.Open<MapNameHintWin>();
        WindowCenter.Instance.Open<JadeDynastyTowerHintWin>();
    }
}
Fight/Stage/Dungeon/JadeDynastyTowerDungeonStage.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: eafd24ea78eb761498952163bd245977
timeCreated: 1547780317
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/DailyQuest/DailyQuestWin.cs
@@ -269,7 +269,7 @@
                case DailyQuestType.RuneTowerSweep:
                    RuneTowerWin.guideSweep = true;
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Open<RuneTowerWin>();
                    WindowCenter.Instance.Open<TowerWin>(false,0);
                    break;
                case DailyQuestType.BossHome:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
@@ -285,7 +285,7 @@
                    break;
                case DailyQuestType.RuneTower:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Open<RuneTowerWin>();
                    WindowCenter.Instance.Open<TowerWin>(false, 0);
                    break;
                case DailyQuestType.TreasureCollectSoul:
                    GotoTreasureCollectSoul();
@@ -319,6 +319,10 @@
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Open<LootPreciousFrameWin>(false, 3);
                    break;
                case DailyQuestType.JadeDynastyTower:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Open<TowerWin>(false, 1);
                    break;
                default:
                    CSharpCallLua.GotoLuaDailyQuest(_id);
                    break;
System/Dungeon/DungeonFightWin.cs
@@ -78,7 +78,7 @@
                && !CrossServerUtility.IsCrossServerOneVsOne());
            m_ContainerAncient.gameObject.SetActive(dataMapId == 31160);
            m_BossInfosContainer.gameObject.SetActive(
                dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID
                dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID
                || dataMapId == BossHomeModel.BOSSHOME_MAPID);
            m_GatherSoulDungeonBehaviour.gameObject.SetActive(dataMapId == GatherSoulDungeonModel.DUNGEON_MAPID);
@@ -260,7 +260,7 @@
                {
                    if (_ok)
                    {
                        if (dataMapId==CrossServerBossModel.DATA_MAPID)
                        if (dataMapId == CrossServerBossModel.DATA_MAPID)
                        {
                            var crossServerBossModel = ModelCenter.Instance.GetModel<CrossServerBossModel>();
                            crossServerBossModel.RequestExit();
@@ -434,6 +434,30 @@
                        model.ExitCurrentDungeon();
                    }
                    break;
                case JadeDynastyTowerModel.DATA_MAPID:
                    var jadeDynastyTowerModel = ModelCenter.Instance.GetModel<JadeDynastyTowerModel>();
                    jadeDynastyTowerModel.RequestAward();
                    if (model.dungeonResult.grade == 5)
                    {
                        if (!jadeDynastyTowerModel.IsTopFloor(jadeDynastyTowerModel.currentFloor))
                        {
                            var dungeonStage = StageManager.Instance.CurrentStage as JadeDynastyTowerDungeonStage;
                            dungeonStage.PerformChallengeNextLevel();
                            model.UpdateCoolDown(DungeonCoolDownType.LeaveMap, 0);
                            model.UpdateCoolDown(DungeonCoolDownType.TowerTake, 0);
                        }
                        else
                        {
                            model.ExitCurrentDungeon();
                        }
                    }
                    else
                    {
                        model.ExitCurrentDungeon();
                    }
                    WindowCenter.Instance.Close<JadyDynastyTowerVictoryWin>();
                    break;
                default:
                    model.ExitCurrentDungeon();
                    break;
System/Dungeon/DungeonModel.cs
@@ -306,7 +306,7 @@
            var send = new CA505_tagCMBeginFBWipeOut();
            send.MapID = (ushort)_dungeon.mapId;
            send.LineID = (ushort)_dungeon.lineId;
            send.LineID = (ushort)_dungeon.lineId;
            send.Cnt = 1;
            send.IsFinish = 1;
@@ -526,7 +526,7 @@
            if (ruinsTranscriptMapId == _dungeon.mapId)
            {
                OpenFloorChooseWin();
            }
            else
            {
@@ -539,7 +539,7 @@
            var mainModel = ModelCenter.Instance.GetModel<PlayerMainDate>();
            int WhyjNuber = mainModel.GetWHYJNum();
            mainModel.LayerNumberNow = WhyjNuber - 1;
            RequestChallangeDungeon(ruinsTranscriptMapId, WhyjNuber-1);
            RequestChallangeDungeon(ruinsTranscriptMapId, WhyjNuber - 1);
        }
        public void GroupChallenge(int _dungeonId, int _lineId = 0)
@@ -712,10 +712,10 @@
                        break;
                }
                switch(_type)
                switch (_type)
                {
                    case DungeonCoolDownType.WaitPlayer:
                        if(!WindowCenter.Instance.IsOpen<CrossServerOneVsOneWaitPlayerCoolDownWin>())
                        if (!WindowCenter.Instance.IsOpen<CrossServerOneVsOneWaitPlayerCoolDownWin>())
                        {
                            WindowCenter.Instance.Open<CrossServerOneVsOneWaitPlayerCoolDownWin>();
                        }
@@ -1052,6 +1052,9 @@
                        case GatherSoulDungeonModel.DUNGEON_MAPID:
                            WindowCenter.Instance.Open<DungeonGatherSoulVictoryWin>();
                            break;
                        case JadeDynastyTowerModel.DATA_MAPID:
                            WindowCenter.Instance.Open<JadyDynastyTowerVictoryWin>();
                            break;
                        default:
                            WindowCenter.Instance.Open<DungeonVictoryWin>();
                            break;
System/Dungeon/DungeonVictoryWin.cs
@@ -28,7 +28,7 @@
        [SerializeField] Text m_MagicEssence;
        [SerializeField, Header("仙缘币")] protected Transform m_ContainerXianyuanCoins;
        [SerializeField] Text m_XianyuanCoins;
        [SerializeField, Header("退出按钮")] ButtonEx m_Exit;
        [SerializeField, Header("退出按钮")] protected ButtonEx m_Exit;
        [SerializeField] protected Text m_ExitTimer;
        [SerializeField, Header("评级")] GameObject m_GradeBottom;
        [SerializeField] Image m_Grade;
@@ -108,13 +108,13 @@
        protected override void OnPreClose()
        {
        }
        protected override void OnAfterClose()
        {
            var iceCrystalVeinModel = ModelCenter.Instance.GetModel<IceCrystalVeinModel>();
            if (iceCrystalVeinModel.IsIceCrystalVein_Copy)
            {
                iceCrystalVeinModel.IsIceCrystalVein_Copy = false;
@@ -149,7 +149,7 @@
            }
        }
        private void ExitDungeon()
        protected virtual void ExitDungeon()
        {
            dungeonModel.ExitCurrentDungeon();
        }
@@ -373,7 +373,7 @@
            var fbEndInfo = dungeonModel.dungeonResult;
            var results = fbEndInfo.xianyuanCoin;
            bool isShow = true;
            if (fbEndInfo.dataMapID == 51010)
            {
                if (m_ContainerXianyuanCoins == null)
@@ -383,7 +383,7 @@
            }
            else
            {
                if(m_ContainerXianyuanCoins == null
                if (m_ContainerXianyuanCoins == null
                   || results == null || results.Length < 1)
                {
                    isShow = false;
@@ -394,19 +394,19 @@
            int getCoins = 0;
            int reason = 0;
            if(results != null && results.Length > 1)
            if (results != null && results.Length > 1)
            {
                getCoins = results[0];
                reason = results[1];
            }
            if(getCoins > 0 && reason == 0)
            if (getCoins > 0 && reason == 0)
            {
                m_XianyuanCoins.text = UIHelper.ReplaceLargeNum((ulong)getCoins);
            }
            else
            {
                switch(reason)
                switch (reason)
                {
                    case 1:
                        m_XianyuanCoins.text = UIHelper.AppendStringColor(TextColType.Red, Language.Get("DungeonAssist145"));
@@ -415,9 +415,9 @@
                        m_XianyuanCoins.text = UIHelper.AppendStringColor(TextColType.Red, Language.Get("DungeonAssist144"));
                        break;
                    default:
                        if(fbEndInfo.dataMapID == 51010)
                        if (fbEndInfo.dataMapID == 51010)
                        {
                            if(fbEndInfo.startRewardLineID != 0)
                            if (fbEndInfo.startRewardLineID != 0)
                            {
                                m_XianyuanCoins.text = UIHelper.AppendStringColor(TextColType.Red, Language.Get("DungeonAssist146"));
                            }
System/Dungeon/TargetBriefInfoWin.cs
@@ -35,7 +35,8 @@
        var mapId = PlayerDatas.Instance.baseData.MapID;
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(mapId);
        if (dataMapId == DemonJarModel.DEMONJAR_MAPID
            || dataMapId == JadeDynastyBossModel.JADEDYNASTY_MAP)
            || dataMapId == JadeDynastyBossModel.JADEDYNASTY_MAP
            || dataMapId == JadeDynastyTowerModel.DATA_MAPID)
        {
            if (_show)
            {
@@ -79,7 +80,8 @@
        var mapId = PlayerDatas.Instance.baseData.MapID;
        var dataMapId = ModelCenter.Instance.GetModel<DungeonModel>().GetDataMapIdByMapId(mapId);
        if (dataMapId == DemonJarModel.DEMONJAR_MAPID
            || dataMapId == JadeDynastyBossModel.JADEDYNASTY_MAP)
            || dataMapId == JadeDynastyBossModel.JADEDYNASTY_MAP
            || dataMapId == JadeDynastyTowerModel.DATA_MAPID)
        {
            DemonJarBossLifeBarWin win;
            if (!WindowCenter.Instance.IsOpen<DemonJarBossLifeBarWin>())
System/JadeDynastyTower.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 8f2922f78b99e304fb72e1cabe552f93
folderAsset: yes
timeCreated: 1547780194
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerBehaviour.cs
New file
@@ -0,0 +1,146 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using System;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerBehaviour : MonoBehaviour
    {
        [SerializeField] ScrollRect m_Tower;
        RectTransform m_RectTransform;
        RectTransform rectTransform { get { return m_RectTransform ?? (this.transform as RectTransform); } }
        float topHeight = 0f;
        float floorHeight = 0f;
        float bottomHeight = 0f;
        GameObject towerTop = null;
        GameObject towerBottom = null;
        JadeDynastyTowerFloorBehaviour towerTopBehaviour;
        bool hasCreateTowerResources = false;
        List<JadeDynastyTowerFloorBehaviour> floorBehaviours = new List<JadeDynastyTowerFloorBehaviour>();
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        public void Display()
        {
            var scrollRectTransform = m_Tower.transform as RectTransform;
            scrollRectTransform.localScale = Vector3.one;
            scrollRectTransform.anchoredPosition = Vector2.zero;
            DisplayTowerBaseInfo();
            MoveToTargetFloor(model.currentFloor);
        }
        public void Dispose()
        {
            m_Tower.scrollSensitivity = 1f;
        }
        void MoveToTargetFloor(int floor)
        {
            var floors = model.GetShowFloors();
            var floorConfig = Config.Instance.Get<JadeDynastyTowerConfig>(floor);
            var floorIndex = floors.IndexOf(floor);
            if (floorIndex < 2)
            {
                m_Tower.verticalNormalizedPosition = 0f;
            }
            else if (floorIndex > floors.Count - 3)
            {
                m_Tower.verticalNormalizedPosition = 1f;
            }
            else
            {
                m_Tower.verticalNormalizedPosition = 0.5f;
            }
        }
        private void DisplayTowerBaseInfo()
        {
            CreateTowerResources();
            var floors = model.GetShowFloors();
            var hasTop = model.IsTopFloor(floors[floors.Count - 1]);
            var normalCount = hasTop ? floors.Count - 1 : floors.Count;
            if (hasTop)
            {
                towerTopBehaviour.gameObject.SetActive(true);
                towerTopBehaviour.Display(floors[floors.Count - 1]);
            }
            else
            {
                towerTopBehaviour.gameObject.SetActive(false);
            }
            for (var i = 0; i < floorBehaviours.Count; i++)
            {
                var behaviour = floorBehaviours[i];
                if (i < normalCount)
                {
                    behaviour.gameObject.SetActive(true);
                    behaviour.Display(floors[floors.Count - (i + (hasTop ? 2 : 1))]);
                }
                else
                {
                    behaviour.gameObject.SetActive(false);
                }
            }
            var hasBottom = model.IsBottomFloor(floors[0]);
            towerBottom.gameObject.SetActive(hasBottom);
        }
        private void CreateTowerResources()
        {
            if (hasCreateTowerResources)
            {
                return;
            }
            towerTop = UIUtility.CreateWidget("JadeDynastyTower_Top", "Top");
            towerTop.transform.SetParentEx(m_Tower.content, Vector3.zero, Quaternion.identity, Vector3.one);
            towerTop.transform.SetAsFirstSibling();
            topHeight = ((RectTransform)towerTop.transform).rect.height;
            towerTopBehaviour = towerTop.AddMissingComponent<JadeDynastyTowerFloorBehaviour>();
            var floorPrefab = UILoader.LoadPrefab("JadeDynastyTower_Floor");
            floorHeight = ((RectTransform)floorPrefab.transform).rect.height;
            for (int i = 0; i < 5; i++)
            {
                var instance = Instantiate<GameObject>(floorPrefab);
                var floorBehaviour = instance.AddMissingComponent<JadeDynastyTowerFloorBehaviour>();
                instance.transform.SetParentEx(m_Tower.content, Vector3.zero, Quaternion.identity, Vector3.one);
                floorBehaviours.Add(floorBehaviour);
            }
            towerBottom = UIUtility.CreateWidget("JadeDynastyTower_Bottom", "Bottom");
            towerBottom.transform.SetParentEx(m_Tower.content, Vector3.zero, Quaternion.identity, Vector3.one);
            towerBottom.transform.SetAsLastSibling();
            bottomHeight = ((RectTransform)towerBottom.transform).rect.height;
            hasCreateTowerResources = true;
        }
        private void OnDisable()
        {
            StopAllCoroutines();
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerBehaviour.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: c138ff352bc67574abd362aee0fc583d
timeCreated: 1548050025
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerFloorBehaviour.cs
New file
@@ -0,0 +1,64 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerFloorBehaviour : MonoBehaviour
    {
        [SerializeField] Image m_Floor;
        [SerializeField] Button m_Selected;
        [SerializeField] TextEx m_FloorName;
        [SerializeField] Image m_Challenge;
        [SerializeField] Image m_Cover;
        [SerializeField] RectTransform m_ContainerSelected;
        [SerializeField] UIEffect m_GateEffect;
        RectTransform m_RectTransform;
        RectTransform rectTransform { get { return m_RectTransform ?? (this.transform as RectTransform); } }
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        int floorId = 0;
        public void Display(int _floorId)
        {
            this.floorId = _floorId;
            var isOpened = this.model.currentFloor >= this.floorId;
            var config = Config.Instance.Get<JadeDynastyTowerConfig>(floorId);
            m_FloorName.text = config.floorName;
            m_Cover.gameObject.SetActive(this.model.currentFloor > this.floorId);
            if (this.model.currentFloor == this.floorId)
            {
                m_GateEffect.Play();
                m_Challenge.gameObject.SetActive(true);
                m_ContainerSelected.gameObject.SetActive(true);
                m_FloorName.color = UIHelper.GetUIColor(TextColType.NavyYellow);
            }
            else
            {
                m_GateEffect.Stop();
                m_Challenge.gameObject.SetActive(false);
                m_ContainerSelected.gameObject.SetActive(false);
                m_FloorName.color = UIHelper.s_LightYellow;
            }
        }
        public void Dispose()
        {
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerFloorBehaviour.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 1e7ee76654016d1448b8fd5f9f680822
timeCreated: 1548051421
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerHintWin.cs
New file
@@ -0,0 +1,90 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerHintWin : Window
    {
        [SerializeField] Text m_Floor;
        [SerializeField] ItemBehaviour m_Reward;
        [SerializeField] RectTransform m_UnLockEquipPlace;
        [SerializeField] Text m_Description;
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
        }
        protected override void OnPreOpen()
        {
            Display();
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void Display()
        {
            var config = Config.Instance.Get<JadeDynastyTowerConfig>(model.currentFloor);
            m_Floor.text = config.floorName;
            var isLastFloor = model.IsTopFloor(model.currentFloor);
            if (isLastFloor && model.currentFloor == model.highestPassFloor)
            {
                m_Reward.gameObject.SetActive(true);
                m_UnLockEquipPlace.gameObject.SetActive(false);
                m_Reward.SetItem(config.rewardIdsLevelS[0], config.rewardCountsLevelS[0]);
            }
            else
            {
                var isSpecialFloor = config.unLockEquipPlace > 0;
                if (isSpecialFloor)
                {
                    m_UnLockEquipPlace.gameObject.SetActive(true);
                    m_Reward.gameObject.SetActive(false);
                }
                else
                {
                    m_UnLockEquipPlace.gameObject.SetActive(false);
                    m_Reward.gameObject.SetActive(true);
                    m_Reward.SetItem(config.rewardIdsLevelS[0], config.rewardCountsLevelS[0]);
                }
            }
            m_Description.text = config.specialRewardDescription;
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerHintWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: b81f1f23b9a4ed14aadd6d8281558a6b
timeCreated: 1548076363
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerModel.cs
New file
@@ -0,0 +1,198 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerModel : Model, IPlayerLoginOk, IMapInitOk, IBeforePlayerDataInitialize
    {
        public const int DATA_MAPID = 31370;
        const int REDPOINTID = 1;
        const int FUNCTIONID = 164;
        public int highestPassFloor { get; private set; }
        public int currentFloor {
            get {
                if (IsTopFloor(highestPassFloor))
                {
                    return highestPassFloor;
                }
                else
                {
                    return highestPassFloor + 1;
                }
            }
        }
        public int specialUnLockFloor {
            get { return LocalSave.GetInt(StringUtility.Contact(PlayerDatas.Instance.baseData.PlayerID, "_JadeDynastyTowerUnLockFloor")); }
            set { LocalSave.SetInt(StringUtility.Contact(PlayerDatas.Instance.baseData.PlayerID, "_JadeDynastyTowerUnLockFloor"), value); }
        }
        public bool openJadeDynastyTower { get; set; }
        bool serverInited = false;
        Redpoint redpoint = new Redpoint(REDPOINTID);
        List<int> sortedFloors = new List<int>();
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
        public override void Init()
        {
            ParseConfig();
        }
        public override void UnInit()
        {
        }
        public void RequestChallenge()
        {
            var error = GetErrorOfChallenge();
            if (error == 0)
            {
                dungeonModel.RequestChallangeDungeon(DATA_MAPID, 0);
            }
            else
            {
                switch (error)
                {
                    case 1:
                        break;
                    case 2:
                        break;
                    default:
                        break;
                }
            }
        }
        public bool IsChallengable()
        {
            return GetErrorOfChallenge() == 0;
        }
        private int GetErrorOfChallenge()
        {
            //if (!FuncOpen.Instance.IsFuncOpen(FUNCTIONID))
            //  {
            //  return 1;
            //}
            var enterTimes = dungeonModel.GetEnterTimes(DATA_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(DATA_MAPID);
            if (enterTimes >= totalTimes)
            {
                return 2;
            }
            return 0;
        }
        public void RequestAward()
        {
            var sendInfo = new CA508_tagCMDoFBAction();
            sendInfo.ActionType = 1;
            sendInfo.ActionInfo = (uint)currentFloor;
            GameNetSystem.Instance.SendInfo(sendInfo);
        }
        public void RequestRefreshMonster()
        {
            var sendInfo = new CA508_tagCMDoFBAction();
            sendInfo.ActionType = 0;
            sendInfo.ActionInfo = (uint)currentFloor;
            GameNetSystem.Instance.SendInfo(sendInfo);
        }
        public void SetOpenJadeDynastyTowerWinDirty()
        {
            openJadeDynastyTower = true;
        }
        public List<int> GetShowFloors()
        {
            var currentIndex = sortedFloors.IndexOf(currentFloor);
            var floors = new List<int>();
            if (currentIndex < 2)
            {
                for (var i = 0; i <= 4; i++)
                {
                    floors.Add(sortedFloors[i]);
                }
            }
            else if (currentIndex >= sortedFloors.Count - 2)
            {
                for (var i = sortedFloors.Count - 4; i <= sortedFloors.Count - 1; i++)
                {
                    floors.Add(sortedFloors[i]);
                }
            }
            else
            {
                for (var i = currentIndex - 2; i <= currentIndex + 2; i++)
                {
                    floors.Add(sortedFloors[i]);
                }
            }
            return floors;
        }
        public bool IsTopFloor(int floor)
        {
            return floor == sortedFloors[sortedFloors.Count - 1];
        }
        public bool IsBottomFloor(int floor)
        {
            return floor == sortedFloors[0];
        }
        public void UpdateHighestPassFloor(HB213_tagMCZhuXianTowerInfo info)
        {
            var oldRecorder = highestPassFloor;
            highestPassFloor = (int)info.Floor;
            if (serverInited && highestPassFloor > oldRecorder)
            {
                var config = Config.Instance.Get<JadeDynastyTowerConfig>(highestPassFloor);
                if (config.unLockEquipPlace > 0)
                {
                    specialUnLockFloor = highestPassFloor;
                }
            }
        }
        public void OnPlayerLoginOk()
        {
            serverInited = true;
        }
        public void OnMapInitOk()
        {
            switch (PlayerDatas.Instance.baseData.MapID)
            {
                case DATA_MAPID:
                    RequestRefreshMonster();
                    break;
            }
        }
        private void ParseConfig()
        {
            var configs = Config.Instance.GetAllKeys<JadeDynastyTowerConfig>();
            foreach (var item in configs)
            {
                sortedFloors.Add(int.Parse(item));
            }
        }
        public void OnBeforePlayerDataInitialize()
        {
            serverInited = false;
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerModel.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 16f4d5f3b87a83c428ab29e4ce24d4c1
timeCreated: 1547780261
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerRankBehaviour.cs
New file
@@ -0,0 +1,78 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class JadeDynastyTowerRankBehaviour : MonoBehaviour
    {
        [SerializeField] RankCell[] m_RankCells;
        [SerializeField] Text m_MyRank;
        [SerializeField] Button m_ViewRank;
        public void Display(RankInfo[] rankInfos, int myRank)
        {
            for (var i = 0; i < m_RankCells.Length; i++)
            {
                var cell = m_RankCells[i];
                if (i < rankInfos.Length)
                {
                    var rankInfo = rankInfos[i];
                    cell.container.SetActive(true);
                    cell.name.text = string.IsNullOrEmpty(rankInfo.name) ? Language.Get("L1046") : rankInfo.name;
                    cell.floor.text = rankInfo.floor == 0 ? "" : Language.Get("JadeDynastyLayer", rankInfo.floor);
                    cell.time.text = rankInfo.time == 0 ? "" : Language.Get("JadeDynastyTime", 10000 - rankInfo.time);
                }
                else
                {
                    m_RankCells[i].container.SetActive(false);
                }
            }
            if (myRank == -1)
            {
                m_MyRank.text = Language.Get("L1045");
            }
            else
            {
                m_MyRank.text = Language.Get("L1092", myRank);
            }
        }
        private void Start()
        {
            m_ViewRank.SetListener(ViewRank);
        }
        private void ViewRank()
        {
        }
        public struct RankInfo
        {
            public string name;
            public int floor;
            public int time;
        }
        [System.Serializable]
        public struct RankCell
        {
            public GameObject container;
            public Text name;
            public Text floor;
            public Text time;
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerRankBehaviour.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f17f9c2e8f2d51b4696795c4088005e0
timeCreated: 1548056029
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerRewardBehaviour.cs
New file
@@ -0,0 +1,92 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerRewardBehaviour : MonoBehaviour
    {
        [SerializeField] ItemBehaviour[] m_RewardsLevelS;
        [SerializeField] ItemBehaviour[] m_RewardsLevelA;
        [SerializeField] ItemBehaviour[] m_RewardsLevelB;
        [SerializeField] RectTransform m_ExtraRewardContainer;
        [SerializeField] Text m_ExtraRewardFloor;
        [SerializeField] Text m_ExtraRewardDescription;
        public void Display(int floor)
        {
            var config = Config.Instance.Get<JadeDynastyTowerConfig>(floor);
            for (var i = 0; i < m_RewardsLevelS.Length; i++)
            {
                var behaviour = m_RewardsLevelS[i];
                if (i < config.rewardIdsLevelS.Length)
                {
                    var id = config.rewardIdsLevelS[i];
                    var count = config.rewardCountsLevelS[i];
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(id, count);
                }
                else
                {
                    behaviour.gameObject.SetActive(false);
                }
            }
            for (var i = 0; i < m_RewardsLevelA.Length; i++)
            {
                var behaviour = m_RewardsLevelA[i];
                if (i < config.rewardIdsLevelA.Length)
                {
                    var id = config.rewardIdsLevelA[i];
                    var count = config.rewardIdsLevelS[i];
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(id, count);
                }
                else
                {
                    behaviour.gameObject.SetActive(false);
                }
            }
            for (var i = 0; i < m_RewardsLevelB.Length; i++)
            {
                var behaviour = m_RewardsLevelB[i];
                if (i < config.rewardIdsLevelB.Length)
                {
                    var id = config.rewardIdsLevelB[i];
                    var count = config.rewardCountsLevelB[i];
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(id, count);
                }
                else
                {
                    behaviour.gameObject.SetActive(false);
                }
            }
            if (config.unLockEquipPlace != 0)
            {
                m_ExtraRewardContainer.gameObject.SetActive(true);
                m_ExtraRewardFloor.text = Language.Get("JadeDynastyExtraReward", config.floorIndex);
                m_ExtraRewardDescription.text = config.specialRewardDescription;
            }
            else
            {
                m_ExtraRewardContainer.gameObject.SetActive(false);
            }
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerRewardBehaviour.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e88c84b0168d5e04797b1964fd51f8db
timeCreated: 1548056741
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerUnLockWin.cs
New file
@@ -0,0 +1,90 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerUnLockWin : Window
    {
        [SerializeField] Text m_UnLockDescription;
        [SerializeField] Button m_Close;
        [SerializeField] Text m_CoolDown;
        float timer = 0f;
        float autoCloseTime = 0f;
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_Close.AddListener(Ensure);
        }
        protected override void OnPreOpen()
        {
            var config = Config.Instance.Get<JadeDynastyTowerConfig>(model.specialUnLockFloor);
            m_UnLockDescription.text = config.specialRewardDescription;
            autoCloseTime = Time.time + 10;
            m_CoolDown.text = Language.Get("RuneTower9", 10);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            model.specialUnLockFloor = 0;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        protected override void LateUpdate()
        {
            base.LateUpdate();
            timer += Time.deltaTime;
            if (timer > 1f)
            {
                timer = 0f;
                m_CoolDown.text = Language.Get("RuneTower9", Mathf.RoundToInt(autoCloseTime - Time.time));
            }
            if (Time.time > autoCloseTime)
            {
                Ensure();
            }
        }
        private void Ensure()
        {
            CloseClick();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<TowerWin>(false, 1);
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerUnLockWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 2eb5042a4c4698048a3548f4dfd13f85
timeCreated: 1548060437
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadeDynastyTowerWin.cs
New file
@@ -0,0 +1,163 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Friday, January 18, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TableConfig;
namespace Snxxz.UI
{
    public class JadeDynastyTowerWin : Window
    {
        [SerializeField] JadeDynastyTowerBehaviour m_TowerBehaviour;
        [SerializeField] JadeDynastyTowerRankBehaviour m_RankBehaviour;
        [SerializeField] JadeDynastyTowerRewardBehaviour m_RewardBehaviour;
        [SerializeField] TextEx m_FightPower;
        [SerializeField] TextEx m_ChallengeTimes;
        [SerializeField] Button m_Challenge;
        [SerializeField] TextEx m_ChallengeTitle;
        [SerializeField] ImageEx m_ChallengeImage;
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
        ChallengeButtonShowState challengeButtonShowState = ChallengeButtonShowState.Normal;
        float timer = 0f;
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_Challenge.SetListener(Challenge);
        }
        protected override void OnPreOpen()
        {
            ModelCenter.Instance.GetModel<RankModel>().SendBegRank(PlayerRankData.RankType.JadeDynastyTower);
        }
        protected override void OnAfterOpen()
        {
            PlayerDatas.Instance.rank.OnRefreshRank += DisplayRankInfo;
        }
        protected override void OnPreClose()
        {
            PlayerDatas.Instance.rank.OnRefreshRank -= DisplayRankInfo;
        }
        protected override void OnAfterClose()
        {
        }
        protected override void OnActived()
        {
            base.OnActived();
            DisplayBaseInfo();
            DisplayChallengeTimes();
            DisplayChallengeButton();
            DisplayFightPower();
            DisplayRankInfo(23);
        }
        protected override void LateUpdate()
        {
            base.LateUpdate();
            timer += Time.deltaTime;
            if (timer > 1f)
            {
                timer = 0f;
                DisplayChallengeButton();
            }
        }
        #endregion
        private void DisplayBaseInfo()
        {
            m_TowerBehaviour.Display();
            m_RewardBehaviour.Display(model.currentFloor);
        }
        private void DisplayChallengeTimes()
        {
            var enterTimes = dungeonModel.GetEnterTimes(JadeDynastyTowerModel.DATA_MAPID);
            var totalTimes = dungeonModel.GetTotalTimes(JadeDynastyTowerModel.DATA_MAPID);
            m_ChallengeTimes.text = StringUtility.Contact(totalTimes - enterTimes, "/", totalTimes);
            m_ChallengeTimes.colorType = enterTimes >= totalTimes ? TextColType.Red : TextColType.DarkGreen;
        }
        private void DisplayChallengeButton()
        {
            var suplursSeconds = 0f;
            var coolDown = dungeonModel.GetEnterCoolDown(JadeDynastyTowerModel.DATA_MAPID);
            suplursSeconds = coolDown != null ? coolDown.suplursSeconds : 0f;
            if (suplursSeconds > 0)
            {
                m_ChallengeTitle.text = Language.Get("JadeDynastyCD", Mathf.RoundToInt(suplursSeconds));
                challengeButtonShowState = ChallengeButtonShowState.CoolDown;
            }
            else
            {
                m_ChallengeTitle.text = Language.Get("Multiple_Challenge");
                challengeButtonShowState = ChallengeButtonShowState.Normal;
            }
        }
        private void DisplayFightPower()
        {
            var config = Config.Instance.Get<JadeDynastyTowerConfig>(model.currentFloor);
            m_FightPower.text = config.fightPower.ToString();
            var reached = PlayerDatas.Instance.baseData.FightPoint >= config.fightPower;
            m_FightPower.colorType = reached ? TextColType.Green : TextColType.Red;
        }
        private void DisplayRankInfo(int type)
        {
            var rankInfos = new JadeDynastyTowerRankBehaviour.RankInfo[3];
            var rankDatas = PlayerDatas.Instance.rank.GetRankList(23);
            if (rankDatas != null)
            {
                for (var i = 0; i < Mathf.Min(3, rankDatas.Count); i++)
                {
                    var data = rankDatas[i];
                    rankInfos[i] = new JadeDynastyTowerRankBehaviour.RankInfo()
                    {
                        name = data.Name1,
                        floor = (int)data.cmpValue,
                        time = (int)data.cmpValue2
                    };
                }
            }
            var myRank = PlayerDatas.Instance.rank.GetSelfRank(23);
            m_RankBehaviour.Display(rankInfos, myRank);
        }
        private void Challenge()
        {
            model.RequestChallenge();
        }
        enum ChallengeButtonShowState
        {
            Normal,
            CoolDown,
        }
    }
}
System/JadeDynastyTower/JadeDynastyTowerWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: bae03e23d1b1dca4b95782067bbf6855
timeCreated: 1547780514
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/JadyDynastyTowerVictoryWin.cs
New file
@@ -0,0 +1,125 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, January 22, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class JadyDynastyTowerVictoryWin : DungeonVictoryWin
    {
        [SerializeField] RectTransform m_AwardContainer;
        [SerializeField] Button m_Award;
        [SerializeField] Text m_AwardTimer;
        JadeDynastyTowerModel model { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_Award.SetListener(Award);
        }
        protected override void OnPreOpen()
        {
            m_ContainerPoivt.gameObject.SetActive(false);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        protected override void Display()
        {
            base.RequireDungeonExit();
            m_ContainerPoivt.gameObject.SetActive(true);
            base.DrawPassTime();
            base.DrawGetExp();
            base.DrawItemRewards();
            base.DrawPassGrade();
            DisplayAwardAndExitButton();
        }
        protected override void ExitDungeon()
        {
            base.ExitDungeon();
            model.SetOpenJadeDynastyTowerWinDirty();
        }
        protected override void DrawExitTimer(int seconds)
        {
            if (m_ExitTimer.gameObject.activeInHierarchy)
            {
                m_AwardTimer.text = Language.Get("CoinTaskWin_Btn_Receive");
                m_ExitTimer.text = Language.Get("DungeonVictoryWin_Btn_Exit_1", Mathf.Clamp(seconds, 0, int.MaxValue));
            }
            else
            {
                m_AwardTimer.text = Language.Get("JadeDynastyRewardTime", Mathf.Clamp(seconds, 0, int.MaxValue));
                m_ExitTimer.text = Language.Get("DemonDungeonExit");
            }
        }
        private void ChallengeNextRuneTower()
        {
            var dungeonStage = StageManager.Instance.CurrentStage as JadeDynastyTowerDungeonStage;
            dungeonStage.PerformChallengeNextLevel();
            dungeonModel.UpdateCoolDown(DungeonCoolDownType.LeaveMap, 0);
            dungeonModel.UpdateCoolDown(DungeonCoolDownType.TowerTake, 0);
            CloseClick();
        }
        private void DisplayAwardAndExitButton()
        {
            if (dungeonModel.dungeonResult.grade == 5)
            {
                m_Exit.gameObject.SetActive(false);
            }
            else
            {
                m_Exit.gameObject.SetActive(true);
            }
        }
        private void Award()
        {
            model.RequestAward();
            if (model.IsTopFloor(model.currentFloor))
            {
                dungeonModel.ExitCurrentDungeon();
            }
            else
            {
                ChallengeNextRuneTower();
            }
        }
    }
}
System/JadeDynastyTower/JadyDynastyTowerVictoryWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 89e8fcf205119574cba510641f9efe0f
timeCreated: 1548121676
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/JadeDynastyTower/TowerWin.cs
New file
@@ -0,0 +1,93 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 21, 2019
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class TowerWin : Window
    {
        [SerializeField] FunctionButtonGroup m_FunctionGroup;
        [SerializeField] FunctionButton m_RuneTower;
        [SerializeField] FunctionButton m_JadeDynastyTower;
        [SerializeField] Button m_Close;
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_RuneTower.SetListener(OpenRuneTower);
            m_JadeDynastyTower.SetListener(OpenJadeDynastyTower);
            m_Close.SetListener(CloseClick);
        }
        protected override void OnPreOpen()
        {
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            CloseSubWindows();
            if (!WindowJumpMgr.Instance.IsJumpState)
            {
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
        }
        protected override void OnAfterClose()
        {
        }
        protected override void OnActived()
        {
            base.OnActived();
            m_FunctionGroup.TriggerByOrder(functionOrder);
        }
        #endregion
        private void OpenRuneTower()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open<RuneTowerWin>(true);
            functionOrder = m_RuneTower.order;
        }
        private void OpenJadeDynastyTower()
        {
            CloseSubWindows();
            WindowCenter.Instance.Open<JadeDynastyTowerWin>(true);
            functionOrder = m_JadeDynastyTower.order;
        }
        private void CloseSubWindows()
        {
            var windows = WindowConfig.Get().FindChildWindows("TowerWin");
            foreach (var item in windows)
            {
                WindowCenter.Instance.Close(item);
            }
        }
    }
}
System/JadeDynastyTower/TowerWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 8cc7d59e2c390fc45b2f054b45bdc4c7
timeCreated: 1548042171
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/MainInterfacePanel/HighSettingTip.cs
@@ -293,7 +293,7 @@
        void RuneTaButton()//符印塔
        {
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<RuneTowerWin>();
            WindowCenter.Instance.Open<TowerWin>(false, 0);
        }
        void OpenTreasure()
        {
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -147,8 +147,9 @@
        DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); } }
        IceCrystalVeinModel m_IceCrystalVeinModel;
        IceCrystalVeinModel iceCrystalVeinModel { get { return m_IceCrystalVeinModel ?? (m_IceCrystalVeinModel = ModelCenter.Instance.GetModel<IceCrystalVeinModel>()); } }
        JadeDynastyTowerModel jadeDynastyTowerModel { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        #region Built-in
        private bool IsUpdateBool=true;
        private bool IsUpdateBool = true;
        protected override void BindController()
        {
            m_MapSwitchingBehaviour.InitAwake();
@@ -251,7 +252,7 @@
            ChatTip.OnChatUpEvent += RefreshAdaptiveChat;
            GlobalTimeEvent.Instance.secondEvent += secondEvent;
            IsCrossServerOneVsOne();
        }
        private void CompletionOfTaskEvent(int obj)
@@ -671,6 +672,41 @@
                    }
                }
            }
            if (jadeDynastyTowerModel.specialUnLockFloor > 0 && !IsDungeon())
            {
                if (!WindowCenter.Instance.IsOpen("NewBieWin") && !WindowCenter.Instance.IsOpen("TreasureNewGotWin"))
                {
                    if (!WindowCenter.Instance.IsOpen("JadeDynastyTowerUnLockWin"))
                    {
                        WindowCenter.Instance.Open<JadeDynastyTowerUnLockWin>();
                    }
                }
            }
            if (jadeDynastyTowerModel.specialUnLockFloor > 0 && !IsDungeon())
            {
                if (!WindowCenter.Instance.IsOpen("NewBieWin") && !WindowCenter.Instance.IsOpen("TreasureNewGotWin"))
                {
                    if (!WindowCenter.Instance.IsOpen("JadeDynastyTowerUnLockWin"))
                    {
                        WindowCenter.Instance.Open<JadeDynastyTowerUnLockWin>();
                    }
                }
            }
            if (jadeDynastyTowerModel.openJadeDynastyTower && !IsDungeon())
            {
                if (!WindowCenter.Instance.IsOpen("NewBieWin") && !WindowCenter.Instance.IsOpen("TreasureNewGotWin"))
                {
                    if (!WindowCenter.Instance.IsOpen("TowerWin"))
                    {
                        WindowCenter.Instance.Open<TowerWin>(false, 1);
                        jadeDynastyTowerModel.openJadeDynastyTower = false;
                    }
                }
            }
            if (iceCrystalVeinModel.IsIceCrystalVeinCopy && !IsDungeon())//是否再次打开冰晶矿脉面板
            {
                if (!WindowCenter.Instance.IsOpen("NewBieWin") && !WindowCenter.Instance.IsOpen("TreasureNewGotWin"))
@@ -1048,7 +1084,7 @@
            ArticleExperience();//关于经验条
            if (_tCDBPlayerRefresh == PlayerDataRefresh.LV)
            {
                IsUpdateBool = true;
                IsUpdateBool = true;
            }
            if (_tCDBPlayerRefresh == PlayerDataRefresh.ExAttr5)//判断是否再跨服
            {
System/Message/RichTableEvent.cs
@@ -391,6 +391,19 @@
                                    }
                                }
                                break;
                            case "jadedynastytower":
                                {
                                    var _id = 0;
                                    if (_dict.ContainsKey("id") && int.TryParse(_dict["id"], out _id))
                                    {
                                        var config = Config.Instance.Get<JadeDynastyTowerConfig>(_id);
                                        if (config != null)
                                        {
                                            return config.floorName;
                                        }
                                    }
                                }
                                break;
                        }
                    }
                }
System/Rank/RankHeadCell.cs
@@ -110,6 +110,10 @@
                        //rankWhat.text = data.cmpValue2.ToString();
                        realmLv = (int)data.cmpValue;
                        break;
                    case PlayerRankData.RankType.JadeDynastyTower:
                        jobText.text = data.cmpValue +Language.Get("JadeDynastyBossDungeon_Floor") ;
                        rankWhat.text =(10000-data.cmpValue2) +Language.Get("RealmWin_Bewrite_35") ;
                        break;
                    default:
                        rankWhat.text = data.cmpValue.ToString();
                        realmLv = (int)data.value1;
System/Rank/RankModel.cs
@@ -1,10 +1,11 @@
using System.Collections;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Snxxz.UI
{
    [XLua.LuaCallCSharp]
    public class RankModel : Model
    public class RankModel : Model,IPlayerLoginOk
    {
        private int m_RankType = 0;
        public int rankType {
@@ -19,12 +20,23 @@
        public override void Init()
        {
        }
        }
        public void OnPlayerLoginOk()
        {
            SendBegRank(PlayerRankData.RankType.JadeDynastyTower);
        }
        public override void UnInit()
        {
        }
        public void SendBegRank(PlayerRankData.RankType rankType)
        {
            C1001_tagCWatchBillboard rankPack = new C1001_tagCWatchBillboard();
            rankPack.Type = (byte)rankType;
            GameNetSystem.Instance.SendInfo(rankPack);
        }
    }
}
System/RuneTower/RuneNewGotWin.cs
@@ -87,7 +87,7 @@
            CloseClick();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<RuneTowerWin>();
            WindowCenter.Instance.Open<TowerWin>(false, 0);
        }
    }
System/RuneTower/RuneTowerWin.cs
@@ -49,7 +49,6 @@
        [SerializeField] Button m_Sweep;
        [SerializeField] Text m_SweepButtonDescription;
        [SerializeField] Text m_SweepTip;
        [SerializeField] Button m_Close;
        ShowType showType = ShowType.RewardInfo;
        int runeSweepActionId = 0;
@@ -65,7 +64,6 @@
        protected override void AddListeners()
        {
            m_Close.AddListener(CloseClick);
            m_ViewBoss.AddListener(PopupBossInfo);
            m_ViewReward.AddListener(PopupRewardInfo);
            m_ViewPassedInfo.AddListener(PopupTowerPassInfo);
System/WindowBase/ModelCenter.cs
@@ -223,6 +223,7 @@
            RegisterModel<FashionDressModel>();
            RegisterModel<JadeDynastyBossModel>();
            RegisterModel<JadeDynastyDecomposeModel>();
            RegisterModel<JadeDynastyTowerModel>();
            RegisterModel<JadeDynastyEquipModel>();
            inited = true;
        }
System/WindowJump/WindowJumpMgr.cs
@@ -406,11 +406,11 @@
                SetJumpLogic<VipExperienceWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.RuneTower:
                SetJumpLogic<RuneTowerWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<TowerWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.RuneTowerSpec:
                RuneTowerWin.guideChallenge = true;
                SetJumpLogic<RuneTowerWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<TowerWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.WelfareFunc1:
            case JumpUIType.WelfareFunc2:
Utility/EnumHelper.cs
@@ -327,6 +327,7 @@
    GatherSoulDungeon = 30,
    CrossServerPk = 31,
    JadeDynastyBoss = 32,
    JadeDynastyTower=33,
}
public enum ActivityPrepareType