Core/GameEngine/Login/Launch.cs
@@ -807,14 +807,17 @@ public class ConfigInitTask : LaunchTask { public override float expectTime { get { return LocalSave.GetFloat("ConfigInitTask_ExpectTime", 10f); } get { return LocalSave.GetFloat("ConfigInitTask_ExpectTime", inferredTime); } protected set { LocalSave.SetFloat("ConfigInitTask_ExpectTime", value); } } float threshold = 1f; float inferredTime = 3f; public override void Begin() { inferredTime = LocalSave.GetFloat("AssetCopyTask_ExpectTime", 30f) / 30f * 10f; m_CurrentStage = LaunchStage.ConfigInit; duration = Mathf.Max(0.1f, expectTime); threshold = Application.platform == RuntimePlatform.WindowsEditor ? 1f : 0.9f; Fight/Stage/Dungeon/DungeonStage.cs
@@ -231,6 +231,7 @@ break; case DemonJarModel.DEMONJAR_MAPID: case 31140: case JadeDynastyBossModel.JADEDYNASTY_MAP: WindowCenter.Instance.Open<DungeonPickUpItemCoolDownWin>(); break; case FairyLeagueModel.FAIRY_LEAGUE_DUNGEON: @@ -249,7 +250,8 @@ // 等待处理开启自动战斗 DungeonModel _dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>(); if (PlayerDatas.Instance.baseData.MapID == 52020 || PlayerDatas.Instance.baseData.MapID == 52010) || PlayerDatas.Instance.baseData.MapID == 52010 || PlayerDatas.Instance.baseData.MapID == JadeDynastyBossModel.JADEDYNASTY_MAP) { _dungeonModel.updateMissionEvent += HandleAutoFight; } Fight/Stage/StageManager.cs
@@ -455,16 +455,24 @@ yield return WaitingForSecondConst.WaitMS1000; var mapConfig = Config.Instance.Get<MapConfig>(PlayerDatas.Instance.baseData.MapID); if (mapConfig.MapFBType == (int)MapType.OpenCountry) if (CrossServerUtility.IsCrossServer()) { var sjzMapConfig = Config.Instance.Get<MapConfig>(10010); var position = new Vector3(sjzMapConfig.BornPoints[0].x, 0, sjzMapConfig.BornPoints[0].y); MapTransferUtility.Send_WorldTransfer(10010, position, MapTransferType.WorldTransport, 255, 0); var sendInfo = new CC003_tagCGForceQuitCrossState(); GameNetSystem.Instance.SendInfo(sendInfo); } else { ModelCenter.Instance.GetModel<DungeonModel>().ExitCurrentDungeon(); var mapConfig = Config.Instance.Get<MapConfig>(PlayerDatas.Instance.baseData.MapID); if (mapConfig.MapFBType == (int)MapType.OpenCountry) { var sjzMapConfig = Config.Instance.Get<MapConfig>(10010); var position = new Vector3(sjzMapConfig.BornPoints[0].x, 0, sjzMapConfig.BornPoints[0].y); MapTransferUtility.Send_WorldTransfer(10010, position, MapTransferType.WorldTransport, 255, 0); } else { ModelCenter.Instance.GetModel<DungeonModel>().ExitCurrentDungeon(); } } if (loadTimeOutCatcher != null) System/FairyAu/FairyMemberCell.cs
@@ -6,11 +6,14 @@ using UnityEngine.UI; namespace EnhancedUI.EnhancedScroller { [XLua.Hotfix] public class FairyMemberCell : ScrollerUI { FairyModel m_Model; FairyModel model { get { FairyModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<FairyModel>()); } } @@ -35,38 +38,41 @@ public override void Refresh(CellView cell) { int index = cell.index; if (index >= model.sortFairyMembers.Count) { if (index < 0 || index >= model.sortFairyMembers.Count) { return; } PlayerFairyData.FairyMember fairyMember = model.sortFairyMembers[index]; m_NameTxt.text = model.sortFairyMembers[index].Name; var fairyMember = model.sortFairyMembers[index]; if (fairyMember == null) { return; } m_NameTxt.text = fairyMember.Name; m_NameTxt.color = UIHelper.GetUIColor(fairyMember.PlayerID == PlayerDatas.Instance.PlayerId ? TextColType.Green : TextColType.NavyBrown, true); int realmLv = fairyMember.OfficialRank; if (realmLv > 0) { m_RealmImg.gameObject.SetActive(true); RealmConfig presentCfg = Config.Instance.Get<RealmConfig>(realmLv); if (presentCfg != null) { m_RealmImg.SetSprite(presentCfg.Img); } var realmConfig = Config.Instance.Get<RealmConfig>(realmLv); m_RealmImg.gameObject.SetActive(realmConfig != null); if (realmConfig != null) { m_RealmImg.SetSprite(realmConfig.Img); } else { m_RealmImg.gameObject.SetActive(false); } m_LvTxt.text = model.sortFairyMembers[index].LV.ToString(); m_LvTxt.text = fairyMember.LV.ToString(); m_DutyTxt.text = Language.Get(string.Format("L102{0}", fairyMember.FamilyLV + 1)); m_ContributeTxt.text = fairyMember.FamilyActiveValue.ToString(); if (model.sortFairyMembers[index].Exattr2 == 0) if (fairyMember.Exattr2 == 0) { m_TimeTxt.text = Language.Get("L1025"); } else { m_TimeTxt.text = UIHelper.GetFadeTime(model.sortFairyMembers[index].Exattr2) + Language.Get("L1026"); m_TimeTxt.text = UIHelper.GetFadeTime(fairyMember.Exattr2) + Language.Get("L1026"); } if (model.IsOnAllot) { if (model.IsOnAllot && m_AllotBtn != null) { m_AllotBtn.RemoveAllListeners(); m_AllotBtn.onClick.AddListener(() => { m_AllotBtn.onClick.AddListener(() => { OnAllot(fairyMember); }); } System/JadeDynastyBoss/JadeDynastyBossModel.cs
@@ -80,6 +80,7 @@ dungeonModel.updateDungeonBuyCnt += OnDungeonBuyCount; FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; packModel.RefreshItemCountAct += RefreshItemCountAct; PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent; } public void OnBeforePlayerDataInitialize() @@ -104,6 +105,7 @@ dungeonModel.updateDungeonBuyCnt -= OnDungeonBuyCount; FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; packModel.RefreshItemCountAct -= RefreshItemCountAct; PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent; } void ParseConfig() @@ -420,6 +422,15 @@ } } private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType) { if(refreshType==PlayerDataRefresh.OfficialRank || refreshType == PlayerDataRefresh.LV) { UpdateRedpoint(); } } private void RefreshItemCountAct(PackType packType, int arg2, int arg3) { if (packType == PackType.rptJadeDynastyEquip) @@ -436,8 +447,25 @@ { if (FuncOpen.Instance.IsFuncOpen(FUNCTIONID)) { var count = dungeonModel.GetTotalTimes(JADEDYNASTY_MAP) - dungeonModel.GetEnterTimes(JADEDYNASTY_MAP); redpoint.count = count; var existAnyChallengeable = false; var condition = 0; foreach (var boss in jadeDynastyBosses) { if (IsBossUnLocked(boss.bossNpcId, out condition)) { existAnyChallengeable = true; break; } } if (existAnyChallengeable) { var count = dungeonModel.GetTotalTimes(JADEDYNASTY_MAP) - dungeonModel.GetEnterTimes(JADEDYNASTY_MAP); redpoint.count = count; } else { redpoint.count = 0; } } else { System/JadeDynastyKnapSack/JadeDynastyDecomposeWin.cs
@@ -37,7 +37,7 @@ decomposeModel.UpdateSelectItemEvent += UpdateSelectItem; sortTable.onSortCloseEvent += CloseSortTable; sortTable.onSelectSortEvent += UpdateSelectEquipLv; sortTable.SetDefault(); sortTable.SetDefault(decomposeModel.selectEquipLv); SetDisplay(); } System/JadeDynastyKnapSack/JadeDynastyEquipWin.cs
@@ -8,6 +8,10 @@ { [SerializeField] Text fightPowerText; [SerializeField] Button decomposeBtn; [SerializeField] Button sortBtn; [SerializeField] Text sortText; [SerializeField] Image sortImage; [Header("诛仙装备位")] [SerializeField] Button stoneAttrBtn; [SerializeField] Button suitAttrBtn; @@ -18,6 +22,7 @@ PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } } RoleParticularModel particularModel { get { return ModelCenter.Instance.GetModel<RoleParticularModel>(); } } PackModelInterface modelInterface { get { return ModelCenter.Instance.GetModel<PackModelInterface>(); } } #region Built-in protected override void BindController() { @@ -28,6 +33,7 @@ decomposeBtn.AddListener(ClickDecompose); stoneAttrBtn.AddListener(ClickStoneAttr); suitAttrBtn.AddListener(ClickSuitAttr); sortBtn.AddListener(OnClickSort); } protected override void OnPreOpen() @@ -60,6 +66,20 @@ CreateItemLine(); UpdatePlayerUI3DModel(); UpdateFightPower(); TimeDownMgr.CoolTimeData data; if (TimeDownMgr.Instance.Get(TimeDownMgr.CoolTimeType.BagSort, out data)) { data.func = RefreshTime; sortImage.SetSprite("BlackBtn"); sortText.text = Language.Get("BagWin_SortCDbtn_Text_1", Mathf.CeilToInt(data.duration - data.time)); sortBtn.enabled = false; } else { sortImage.SetSprite("SecondBtn1"); sortText.text = Language.Get("BagWin_Sortbtn_Text_1"); sortBtn.enabled = true; } } private void CreateItemLine() @@ -113,6 +133,31 @@ } public void OnClickSort() { modelInterface.SendPackResetQuest(PackType.rptJadeDynastyItem); TimeDownMgr.Instance.Begin(TimeDownMgr.CoolTimeType.BagSort, 5.0f, RefreshTime); sortText.text = Language.Get("BagWin_SortCDbtn_Text_1", 5); sortImage.SetSprite("BlackBtn"); sortBtn.enabled = false; } private void RefreshTime(float time) { if (time <= 0) { sortImage.SetSprite("SecondBtn1"); sortText.text = Language.Get("BagWin_Sortbtn_Text_1"); sortBtn.enabled = true; } else { sortText.text = Language.Get("BagWin_SortCDbtn_Text_1", time); sortBtn.enabled = false; } } private void ClickDecompose() { WindowCenter.Instance.Open<JadeDynastyDecomposeWin>(); System/JadeDynastyKnapSack/JadeDynastySuitAttrBeh.cs
@@ -89,7 +89,7 @@ } else { titleText.text = Language.Get("进阶属性"); titleText.text = Language.Get("JadeDynastyEquip4"); } List<int> suitTypes = equipModel.suitTypeDict.Keys.ToList(); @@ -199,7 +199,7 @@ } else { equipsName = StringUtility.Contact(" ", equipName); equipsName = StringUtility.Contact(equipsName, " ", equipName); } } string conditionSB = Language.Get("JadeDynastyEquip1",equipsName,suitAttrData.suitLv); System/JadeDynastyTower/JadeDynastyTowerModel.cs
@@ -5,10 +5,11 @@ namespace Snxxz.UI { public class JadeDynastyTowerModel : Model, IPlayerLoginOk, IMapInitOk, IBeforePlayerDataInitialize public class JadeDynastyTowerModel : Model, IPlayerLoginOk, IMapInitOk, IBeforePlayerDataInitialize, ISwitchAccount { public const int DATA_MAPID = 31370; const int REDPOINTID = 1; const int REDPOINTID_01 = 21501; const int REDPOINTID_02 = 215; const int FUNCTIONID = 164; public int highestPassFloor { get; private set; } @@ -33,7 +34,13 @@ public bool openJadeDynastyTower { get; set; } bool serverInited = false; Redpoint redpoint = new Redpoint(REDPOINTID); bool redpointConfirm_01 = false; bool redpointConfirm_02 = false; Redpoint redpoint01 = new Redpoint(37, REDPOINTID_01); Redpoint redpoint02 = new Redpoint(REDPOINTID_02); List<int> sortedFloors = new List<int>(); DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } @@ -61,8 +68,10 @@ case 1: break; case 2: SysNotifyMgr.Instance.ShowTip("GeRen_chenxin_268121", DATA_MAPID); break; case 3: SysNotifyMgr.Instance.ShowTip("SingleEnterCD", DATA_MAPID); break; default: break; @@ -82,15 +91,15 @@ return 1; } var coolDown = dungeonModel.GetEnterCoolDown(JadeDynastyTowerModel.DATA_MAPID); if (coolDown != null && coolDown.suplursSeconds > 0) var enterTimes = dungeonModel.GetEnterTimes(DATA_MAPID); var totalTimes = dungeonModel.GetTotalTimes(DATA_MAPID); if (enterTimes >= totalTimes) { return 2; } var enterTimes = dungeonModel.GetEnterTimes(DATA_MAPID); var totalTimes = dungeonModel.GetTotalTimes(DATA_MAPID); if (enterTimes >= totalTimes) var coolDown = dungeonModel.GetEnterCoolDown(DATA_MAPID); if (coolDown != null && coolDown.suplursSeconds > 0) { return 3; } @@ -173,9 +182,28 @@ } } public void ConfirmRedpoint01() { redpointConfirm_01 = true; UpateRedpoint(); } public void ConfirmRedpoint02() { redpointConfirm_02 = true; UpateRedpoint(); } public void OnPlayerLoginOk() { serverInited = true; UpateRedpoint(); } public void OnSwitchAccount() { redpointConfirm_01 = false; redpointConfirm_02 = false; } public void OnMapInitOk() @@ -185,6 +213,29 @@ case DATA_MAPID: RequestRefreshMonster(); break; } } private void UpateRedpoint() { var challengable = IsChallengable(); if (!redpointConfirm_01) { redpoint01.state = challengable ? RedPointState.Simple : RedPointState.None; } else { redpoint01.state = RedPointState.None; } if (!redpointConfirm_02) { redpoint02.state = challengable ? RedPointState.Simple : RedPointState.None; } else { redpoint02.state = RedPointState.None; } } @@ -201,6 +252,8 @@ { serverInited = false; } } } System/JadeDynastyTower/JadeDynastyTowerRankBehaviour.cs
@@ -51,7 +51,7 @@ private void ViewRank() { WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.JadeDynastyTowerRank); } public struct RankInfo System/JadeDynastyTower/JadeDynastyTowerWin.cs
@@ -41,6 +41,7 @@ protected override void OnPreOpen() { model.ConfirmRedpoint02(); ModelCenter.Instance.GetModel<RankModel>().SendBegRank(PlayerRankData.RankType.JadeDynastyTower); } System/JadeDynastyTower/TowerWin.cs
@@ -19,6 +19,8 @@ [SerializeField] FunctionButton m_JadeDynastyTower; [SerializeField] Button m_Close; JadeDynastyTowerModel jadeDynastyTowerModel { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } } #region Built-in protected override void BindController() { @@ -33,6 +35,7 @@ protected override void OnPreOpen() { jadeDynastyTowerModel.ConfirmRedpoint01(); } protected override void OnAfterOpen() System/KnapSack/Logic/PackModelInterface.cs
@@ -1673,10 +1673,6 @@ } } } else { putOnModel = putOnModel2; } int equipScore1 = 0; if (putOnModel != null) System/OpenServerActivity/OpenServiceAchievementModel.cs
@@ -433,10 +433,7 @@ } private void SetRedPointId()//设置红点ID { if (RedPointDic.Count > 0) { return; } RedPointDic.Clear(); foreach (var key in WeekPartyDayInfoDic.Keys) { int RedPoint = Redpoint_key1 * 10 + key; System/Rank/RankHeadCell.cs
@@ -111,6 +111,7 @@ realmLv = (int)data.cmpValue; break; case PlayerRankData.RankType.JadeDynastyTower: realmLv = (int)data.value1; jobText.text = data.cmpValue +Language.Get("JadeDynastyBossDungeon_Floor") ; rankWhat.text =(10000-data.cmpValue2) +Language.Get("RealmWin_Bewrite_35") ; break; UI/Common/FrameEffect.cs
@@ -85,8 +85,8 @@ timer = 0f; tempSumTime = sumTime; m_Behaviour.sprite = m_Sprites[index]; m_Behaviour.overrideSprite = m_Sprites[index]; m_Behaviour.SetNativeSize(); } } UI/Common/SortTable.cs
@@ -80,12 +80,31 @@ _sortCell.sortTypeTxt.text = Language.Get(m_SortElements[cell.index].textKey); } public void SetDefault() public void SetDefault(int value = 0) { if (m_TargetDisplay != null && m_SortElements != null && m_SortElements.Count > 0) if(value == 0) { m_TargetDisplay.text = Language.Get(m_SortElements[0].textKey); if (m_TargetDisplay != null && m_SortElements != null && m_SortElements.Count > 0) { m_TargetDisplay.text = Language.Get(m_SortElements[0].textKey); } } else { if (m_TargetDisplay != null && m_SortElements != null && m_SortElements.Count > 0) { foreach(var key in m_SortElements) { if(key.type == value) { m_TargetDisplay.text = Language.Get(key.textKey); break; } } } } } }