From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../XMainClient/LevelRewardGerenalHandler.cs | 748 +++++++++++++++++++++ 1 file changed, 748 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/LevelRewardGerenalHandler.cs (limited to 'Client/Assets/Scripts/XMainClient/LevelRewardGerenalHandler.cs') diff --git a/Client/Assets/Scripts/XMainClient/LevelRewardGerenalHandler.cs b/Client/Assets/Scripts/XMainClient/LevelRewardGerenalHandler.cs new file mode 100644 index 00000000..e5c81086 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/LevelRewardGerenalHandler.cs @@ -0,0 +1,748 @@ +using System; +using KKSG; +using UILib; +using UnityEngine; +using XMainClient.UI; +using XMainClient.UI.UICommon; +using XUtliPoolLib; + +namespace XMainClient +{ + internal class LevelRewardGerenalHandler : DlgHandlerBase + { + protected override string FileName + { + get + { + return "Battle/LevelReward/LevelRewardGerenalFrame"; + } + } + + private XLevelRewardDocument doc = null; + + private IXUILabel[] m_level_req = new IXUILabel[3]; + + private IXUISprite[] m_level_req_done = new IXUISprite[3]; + + private IXUILabel m_left_time; + + private Transform m_star_frame; + + private Transform[] m_stars = new Transform[3]; + + private IXUITweenTool m_star_tween; + + private Transform[] m_star_fx = new Transform[3]; + + private IXUISlider m_exp_bar; + + private IXUILabel m_exp_bar_level; + + private IXUILabel m_exp_bar_percent; + + private IXUILabel m_guild_exp_buff; + + private Transform m_item_list; + + public XUIPool m_item_pool = new XUIPool(XSingleton.singleton.m_uiTool); + + public IXUILabel m_watch; + + public IXUILabel m_like; + + public IXUILabel m_score; + + public IXUISprite m_return; + + public IXUILabel m_return_label; + + private IXUILabel m_guild_exp; + + private GameObject m_goldGroupReward; + + private Transform m_help_tip; + + private Transform m_noneReward_tip; + + private Transform m_seal_tip; + + private float _exp_percent = 0f; + + private bool _show_exp_bar = false; + + private uint _time_token = 0u; + + private IXUILabel m_QQVipTip; + + private GameObject m_QQVipIcon; + + private GameObject m_QQSVipIcon; + + private GameObject m_QQGameCenter; + + private GameObject m_WXGameCenter; + + private IUIDummy m_snapshot; + + private uint m_show_time_token = 0u; + + private uint m_shareTimeToken = 0u; + + protected override void Init() + { + base.Init(); + this.doc = XDocuments.GetSpecificDocument(XLevelRewardDocument.uuID); + this.InitUI(); + } + + private void InitUI() + { + this.m_star_frame = base.PanelObject.transform.Find("Bg/Stars"); + for (int i = 0; i < 3; i++) + { + this.m_level_req[i] = (base.PanelObject.transform.Find(string.Format("Bg/StarsReq/Req{0}/Tip", i + 1)).GetComponent("XUILabel") as IXUILabel); + this.m_level_req_done[i] = (base.PanelObject.transform.Find(string.Format("Bg/StarsReq/Req{0}/Done", i + 1)).GetComponent("XUISprite") as IXUISprite); + this.m_stars[i] = base.PanelObject.transform.Find(string.Format("Bg/Stars/Star{0}", i + 1)); + this.m_star_fx[i] = base.PanelObject.transform.Find(string.Format("Bg/Stars/Star{0}/Fx", i + 1)); + } + this.m_star_tween = (base.PanelObject.GetComponent("XUIPlayTween") as IXUITweenTool); + this.m_left_time = (base.PanelObject.transform.Find("Bg/Time").GetComponent("XUILabel") as IXUILabel); + this.m_exp_bar = (base.PanelObject.transform.Find("Bg/ExpBar").GetComponent("XUISlider") as IXUISlider); + this.m_exp_bar_level = (base.PanelObject.transform.Find("Bg/ExpBar/Level").GetComponent("XUILabel") as IXUILabel); + this.m_exp_bar_percent = (base.PanelObject.transform.Find("Bg/ExpBar/Percent").GetComponent("XUILabel") as IXUILabel); + this.m_guild_exp_buff = (base.PanelObject.transform.Find("Bg/ExpBar/ExpBuff").GetComponent("XUILabel") as IXUILabel); + this.m_item_list = base.PanelObject.transform.Find("Bg/ItemList"); + Transform transform = base.PanelObject.transform.Find("Bg/ItemList/ScrollView/Item"); + this.m_item_pool.SetupPool(transform.parent.gameObject, transform.gameObject, 6u, false); + this.m_watch = (base.PanelObject.transform.Find("Watch").GetComponent("XUILabel") as IXUILabel); + this.m_like = (base.PanelObject.transform.Find("Like").GetComponent("XUILabel") as IXUILabel); + this.m_score = (base.PanelObject.transform.Find("Bg/Score").GetComponent("XUILabel") as IXUILabel); + this.m_return = (base.PanelObject.transform.Find("Bg/Return").GetComponent("XUISprite") as IXUISprite); + this.m_return_label = (base.PanelObject.transform.Find("Bg/Return/Text").GetComponent("XUILabel") as IXUILabel); + this.m_guild_exp = (base.PanelObject.transform.Find("Bg/GuildExp").GetComponent("XUILabel") as IXUILabel); + this.m_goldGroupReward = base.PanelObject.transform.Find("Bg/RewardHunt").gameObject; + this.m_help_tip = base.PanelObject.transform.Find("Bg/HelperTip"); + this.m_noneReward_tip = base.PanelObject.transform.Find("Bg/NoneRewardTip"); + this.m_seal_tip = base.PanelObject.transform.Find("Bg/SealTip"); + this.m_QQVipTip = (base.PanelObject.transform.Find("Bg/QQVIPTS").GetComponent("XUILabel") as IXUILabel); + this.m_QQVipIcon = base.PanelObject.transform.Find("Bg/QQVIPTS/QQVIP").gameObject; + this.m_QQSVipIcon = base.PanelObject.transform.Find("Bg/QQVIPTS/QQSVIP").gameObject; + this.m_QQGameCenter = base.PanelObject.transform.Find("Bg/QQ").gameObject; + this.m_WXGameCenter = base.PanelObject.transform.Find("Bg/Wechat").gameObject; + this.m_snapshot = (base.PanelObject.transform.Find("Bg/Snapshot/Snapshot").GetComponent("UIDummy") as IUIDummy); + } + + protected override void OnShow() + { + base.OnShow(); + SceneType currentStage = this.doc.CurrentStage; + if (currentStage <= SceneType.SCENE_DRAGON) + { + if (currentStage <= SceneType.SCENE_NEST) + { + if (currentStage != SceneType.SCENE_BATTLE) + { + if (currentStage != SceneType.SCENE_NEST) + { + goto IL_7A; + } + goto IL_71; + } + } + else if (currentStage != SceneType.SCENE_ABYSSS) + { + if (currentStage != SceneType.SCENE_DRAGON) + { + goto IL_7A; + } + goto IL_71; + } + } + else if (currentStage <= SceneType.SCENE_ENDLESSABYSS) + { + if (currentStage != SceneType.SCENE_GODDESS && currentStage != SceneType.SCENE_ENDLESSABYSS) + { + goto IL_7A; + } + } + else if (currentStage != SceneType.SCENE_GUILD_CAMP) + { + switch (currentStage) + { + case SceneType.SCENE_ACTIVITY_ONE: + case SceneType.SCENE_ACTIVITY_THREE: + break; + case SceneType.SCENE_ACTIVITY_TWO: + goto IL_71; + default: + goto IL_7A; + } + } + this.OnShowWithStarReq(); + goto IL_83; + IL_71: + this.OnShowWithPoint(); + goto IL_83; + IL_7A: + this.OnShowWithNothing(); + IL_83: + this._show_exp_bar = false; + this._time_token = XSingleton.singleton.SetTimer((float)XSingleton.singleton.GetInt("LevelFinishShowExpBarTime") / 10f, new XTimerMgr.ElapsedEventHandler(this.ShowExpTween), null); + this.RefreshPlatformAbilityInfo(this.doc.CurrentStage); + } + + protected override void OnHide() + { + XSingleton.singleton.KillTimer(this.m_show_time_token); + XSingleton.singleton.EnableMainDummy(false, null); + base.OnHide(); + } + + public override void OnUnload() + { + XSingleton.singleton.OnUIUnloadMainDummy(this.m_snapshot); + XSingleton.singleton.KillTimer(this.m_show_time_token); + XSingleton.singleton.KillTimer(this._time_token); + XSingleton.singleton.KillTimer(this.m_shareTimeToken); + this.m_shareTimeToken = 0u; + base.OnUnload(); + } + + private void ShowExpTween(object o) + { + this._show_exp_bar = true; + } + + private void OnShowWithStarReq() + { + this.ShowGerenalUI(); + this.ShowStarReq(); + } + + private void OnShowWithPoint() + { + this.ShowGerenalUI(); + this.ShowScore(); + } + + private void OnShowWithNothing() + { + this.ShowGerenalUI(); + } + + private void OnReturnClicked(IXUISprite sp) + { + this.doc.SendLeaveScene(); + } + + private void ShowStarReq() + { + int num = 0; + for (int i = 0; i < XLevelRewardDocument.Table.Table.Length; i++) + { + bool flag = XLevelRewardDocument.Table.Table[i].scendid == this.doc.CurrentScene; + if (flag) + { + num = i; + break; + } + } + this.m_level_req[0].SetVisible(true); + this.m_level_req[1].SetVisible(true); + this.m_level_req[2].SetVisible(true); + this.m_level_req[1].SetText(LevelRewardGerenalHandler.GetReqText(XLevelRewardDocument.Table.Table[num], 1)); + this.m_level_req[2].SetText(LevelRewardGerenalHandler.GetReqText(XLevelRewardDocument.Table.Table[num], 2)); + int num2 = 0; + while (num2 < this.doc.GerenalBattleData.Stars.Count && num2 < 3) + { + bool flag2 = this.doc.GerenalBattleData.Stars[num2] == 1u; + if (flag2) + { + this.m_level_req_done[num2].SetVisible(true); + } + else + { + this.m_level_req_done[num2].SetVisible(false); + } + num2++; + } + } + + public static string GetReqText(StageRankTable.RowData rowData, int index) + { + uint num = (index == 1) ? rowData.star2[0] : rowData.star3[0]; + uint key = (index == 1) ? rowData.star2[1] : rowData.star3[1]; + uint num2 = (index == 1) ? rowData.star2[2] : rowData.star3[2]; + string result; + switch (num) + { + case 1u: + { + bool flag = num2 == 0u; + if (flag) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NO_TIME_LIMIT"); + } + else + { + bool flag2 = num2 % 60u == 0u; + string text; + if (flag2) + { + text = string.Format("{0}{1}", num2 / 60u, XStringDefineProxy.GetString("MINUTE_DUARATION")); + } + else + { + text = string.Format("{0}{1}{2}{3}", new object[] + { + num2 / 60u, + XStringDefineProxy.GetString("MINUTE_TIME"), + num2 % 60u, + XStringDefineProxy.GetString("SECOND_DUARATION") + }); + } + result = XStringDefineProxy.GetString("LEVEL_FINISH_TIME_LIMIT", new object[] + { + text + }); + } + break; + } + case 2u: + { + bool flag3 = num2 == 0u; + if (flag3) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NO_HP_LIMIT"); + } + else + { + result = string.Format("{0}{1}%", XStringDefineProxy.GetString("LEVEL_FINISH_HP_LIMIT"), num2); + } + break; + } + case 3u: + { + bool flag4 = num2 == 0u; + if (flag4) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NO_FOUND"); + } + else + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_FOUND_LIMIT", new object[] + { + num2 + }); + } + break; + } + case 4u: + { + bool flag5 = num2 == 0u; + if (flag5) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NO_BEHIT"); + } + else + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_BEHIT_LIMIT", new object[] + { + num2 + }); + } + break; + } + case 5u: + { + XEntityStatistics.RowData byID = XSingleton.singleton.EntityStatistics.GetByID(key); + bool flag6 = byID == null; + if (flag6) + { + result = string.Empty; + } + else + { + bool flag7 = num2 == 100u; + if (flag7) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NPC_NO_HURT", new object[] + { + byID.Name + }); + } + else + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NPC_HURT_LIMIT", new object[] + { + byID.Name, + num2 + }); + } + } + break; + } + case 6u: + { + bool flag8 = num2 == 0u; + if (flag8) + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_NO_COMBO"); + } + else + { + result = XStringDefineProxy.GetString("LEVEL_FINISH_COMBO_LIMIT", new object[] + { + num2 + }); + } + break; + } + case 7u: + result = XStringDefineProxy.GetString("LEVEL_FINISH_POINT", new object[] + { + num2 + }); + break; + case 8u: + result = XStringDefineProxy.GetString("LEVEL_FINISH_SURVIVE", new object[] + { + num2 + }); + break; + case 9u: + result = XStringDefineProxy.GetString("LEVEL_FINISH_TEAM", new object[] + { + num2 + }); + break; + default: + result = string.Empty; + break; + } + return result; + } + + private void ShowScore() + { + this.m_score.SetVisible(true); + this.m_score.SetText(XStringDefineProxy.GetString("LEVEL_FINISH_SCORE", new object[] + { + this.doc.GerenalBattleData.Score + })); + } + + private void ShowGerenalUI() + { + uint rank = this.doc.GerenalBattleData.Rank; + for (int i = 0; i < 3; i++) + { + bool flag = (long)i < (long)((ulong)rank); + if (flag) + { + this.m_stars[i].gameObject.SetActive(true); + this.m_star_tween.SetTweenGroup(i + 1); + this.m_star_tween.PlayTween(true, -1f); + this.m_star_fx[i].gameObject.SetActive((long)i == (long)((ulong)(rank - 1u))); + } + else + { + this.m_stars[i].gameObject.SetActive(false); + this.m_star_fx[i].gameObject.SetActive(false); + } + } + this.m_star_frame.localPosition -= new Vector3(this.m_stars[0].localPosition.x * (3u - rank) / 2f, 0f); + for (int j = 0; j < 3; j++) + { + this.m_level_req[j].SetVisible(false); + this.m_level_req_done[j].SetVisible(false); + } + this.m_left_time.SetText(string.Format("{0} {1}", XStringDefineProxy.GetString("LEVEL_FINISH_TIME"), XSingleton.singleton.TimeFormatString((int)this.doc.GerenalBattleData.LevelFinishTime, 2, 3, 4, false, true))); + this.m_score.SetVisible(false); + this.m_exp_bar_level.SetText(string.Format("Lv.{0}", this.doc.GerenalBattleData.StartLevel)); + this.m_exp_bar.Value = this.doc.GerenalBattleData.StartPercent; + this.m_exp_bar_percent.SetText(""); + bool flag2 = this.doc.GerenalBattleData.GuildBuff != 0f; + if (flag2) + { + this.m_guild_exp_buff.SetText(XStringDefineProxy.GetString("LEVEL_FINISH_GUILD_BUFF", new object[] + { + this.doc.GerenalBattleData.GuildBuff.ToString("0") + })); + } + else + { + this.m_guild_exp_buff.SetText(""); + } + int num = (this.doc.GerenalBattleData.GuildDragonCoin == 0u) ? 0 : 1; + this.m_item_pool.ReturnAll(false); + float num2 = this.m_item_pool.TplPos.x; + for (int k = 0; k < this.doc.GerenalBattleData.Items.Count; k++) + { + GameObject gameObject = this.m_item_pool.FetchGameObject(true); + IXUISprite ixuisprite = gameObject.transform.Find("Icon").GetComponent("XUISprite") as IXUISprite; + IXUILabel ixuilabel = gameObject.transform.Find("Tip").GetComponent("XUILabel") as IXUILabel; + IXUILabel ixuilabel2 = gameObject.transform.Find("Guild").GetComponent("XUILabel") as IXUILabel; + XItemDrawerMgr.Param.bBinding = this.doc.Items[k].isbind; + XSingleton.singleton.normalItemDrawer.DrawItem(gameObject, (int)this.doc.Items[k].itemID, (int)this.doc.Items[k].itemCount, false); + gameObject.transform.localPosition = new Vector3(num2, this.m_item_pool.TplPos.y); + num2 += (float)this.m_item_pool.TplWidth; + ixuisprite.ID = (ulong)this.doc.Items[k].itemID; + bool isbind = this.doc.Items[k].isbind; + if (isbind) + { + ixuisprite.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(XSingleton.singleton.OnBindItemClick)); + } + else + { + ixuisprite.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(XSingleton.singleton.OnItemClick)); + } + ixuilabel.SetVisible(false); + ixuilabel2.SetVisible(false); + } + bool flag3 = num != 0; + if (flag3) + { + GameObject gameObject2 = this.m_item_pool.FetchGameObject(false); + IXUISprite ixuisprite2 = gameObject2.transform.Find("Icon").GetComponent("XUISprite") as IXUISprite; + IXUILabel ixuilabel3 = gameObject2.transform.Find("Tip").GetComponent("XUILabel") as IXUILabel; + IXUILabel ixuilabel4 = gameObject2.transform.Find("Guild").GetComponent("XUILabel") as IXUILabel; + XSingleton.singleton.normalItemDrawer.DrawItem(gameObject2, XFastEnumIntEqualityComparer.ToInt(ItemEnum.DRAGON_COIN), (int)this.doc.GerenalBattleData.GuildDragonCoin, false); + gameObject2.transform.localPosition = new Vector3(num2, this.m_item_pool.TplPos.y); + num2 += (float)this.m_item_pool.TplWidth; + ixuisprite2.ID = (ulong)((long)XFastEnumIntEqualityComparer.ToInt(ItemEnum.DRAGON_COIN)); + ixuisprite2.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(XSingleton.singleton.OnItemClick)); + ixuilabel3.SetVisible(false); + ixuilabel4.SetVisible(true); + } + bool flag4 = XSpectateSceneDocument.WhetherWathchNumShow((int)this.doc.WatchCount, (int)this.doc.LikeCount, (int)this.doc.CurrentStage); + if (flag4) + { + this.m_watch.SetVisible(true); + this.m_like.SetVisible(true); + this.m_watch.SetText(this.doc.WatchCount.ToString()); + this.m_like.SetText(this.doc.LikeCount.ToString()); + } + else + { + this.m_watch.SetVisible(false); + this.m_like.SetVisible(false); + } + string text = ""; + bool flag5 = this.doc.GerenalBattleData.GuildExp > 0u; + if (flag5) + { + text = string.Format("{0}{1}\n", text, XStringDefineProxy.GetString("LEVEL_FINISH_GUILD_EXP", new object[] + { + this.doc.GerenalBattleData.GuildExp + })); + } + bool flag6 = this.doc.GerenalBattleData.GuildContribution > 0u; + if (flag6) + { + text = string.Format("{0}{1}", text, XStringDefineProxy.GetString("LEVEL_FINISH_GUILD_ITEM", new object[] + { + this.doc.GerenalBattleData.GuildContribution + })); + } + bool flag7 = string.IsNullOrEmpty(text); + if (flag7) + { + this.m_guild_exp.SetVisible(false); + } + else + { + this.m_guild_exp.SetVisible(true); + this.m_guild_exp.SetText(text); + } + SceneTable.RowData sceneData = XSingleton.singleton.GetSceneData(this.doc.CurrentScene); + bool canDrawBox = sceneData.CanDrawBox; + if (canDrawBox) + { + this.m_return_label.SetText(XStringDefineProxy.GetString("LEVEL_FINISH_ENTER_CHEST")); + this.m_return.RegisterSpriteClickEventHandler(null); + XSingleton.singleton.SetTimer((float)XSingleton.singleton.GetInt("LevelFinishSelectChestWaitTime"), new XTimerMgr.ElapsedEventHandler(this.ShowSelectChestFrame), null); + } + else + { + this.m_return_label.SetText(XStringDefineProxy.GetString("LEVEL_FINISH_LEAVE_SCENE")); + this.m_return.RegisterSpriteClickEventHandler(new SpriteClickEventHandler(this.OnReturnClicked)); + this.m_shareTimeToken = XSingleton.singleton.SetTimer(4.3f, new XTimerMgr.ElapsedEventHandler(this.TryToShowShareView), null); + } + bool flag8 = this.doc.GerenalBattleData.GoldGroupReward == null; + if (flag8) + { + this.m_goldGroupReward.SetActive(false); + } + else + { + this.m_goldGroupReward.SetActive(true); + IXUISprite ixuisprite3 = this.m_goldGroupReward.transform.Find("Icon").GetComponent("XUISprite") as IXUISprite; + IXUILabel ixuilabel5 = this.m_goldGroupReward.transform.Find("Count").GetComponent("XUILabel") as IXUILabel; + ixuisprite3.SetSprite(XBagDocument.GetItemSmallIcon((int)this.doc.GerenalBattleData.GoldGroupReward.itemID, 0u)); + ixuilabel5.SetText(this.doc.GerenalBattleData.GoldGroupReward.itemCount.ToString()); + } + this.m_item_list.gameObject.SetActive(!this.doc.GerenalBattleData.isHelper && !this.doc.GerenalBattleData.noneReward); + this.m_help_tip.gameObject.SetActive(this.doc.GerenalBattleData.isHelper); + this.m_noneReward_tip.gameObject.SetActive(!this.doc.GerenalBattleData.isHelper && this.doc.GerenalBattleData.noneReward); + this.m_exp_bar.SetVisible(!this.doc.GerenalBattleData.isSeal); + this.m_seal_tip.gameObject.SetActive(this.doc.GerenalBattleData.isSeal); + XSingleton.singleton.EnableMainDummy(true, this.m_snapshot); + float interval = XSingleton.singleton.SetMainAnimationGetLength(XSingleton.singleton.Player.Present.PresentLib.Disappear); + this.m_show_time_token = XSingleton.singleton.SetTimer(interval, new XTimerMgr.ElapsedEventHandler(this.KillDummyTimer), null); + } + + private void TryToShowShareView(object param) + { + XSingleton.singleton.KillTimer(this.m_shareTimeToken); + this.m_shareTimeToken = 0u; + this.doc.ShowFirstPassShareView(); + } + + private void KillDummyTimer(object sender) + { + XSingleton.singleton.KillTimer(this.m_show_time_token); + XSingleton.singleton.SetMainAnimation(XSingleton.singleton.Player.Present.PresentLib.AttackIdle); + } + + private void ShowSelectChestFrame(object o) + { + this.doc.ShowSelectChestFrame(); + } + + public override void OnUpdate() + { + base.OnUpdate(); + bool flag = this.doc.GerenalBattleData.TotalExpPercent > 0f && this._show_exp_bar; + if (flag) + { + XLevelRewardDocument xlevelRewardDocument = this.doc; + xlevelRewardDocument.GerenalBattleData.TotalExpPercent = xlevelRewardDocument.GerenalBattleData.TotalExpPercent - this.doc.GerenalBattleData.GrowExpPercent; + bool flag2 = this.doc.GerenalBattleData.CurrentExpPercent + this.doc.GerenalBattleData.GrowExpPercent > 1f; + if (flag2) + { + this.doc.GerenalBattleData.CurrentExpPercent = this.doc.GerenalBattleData.CurrentExpPercent + this.doc.GerenalBattleData.GrowExpPercent - 1f; + XLevelRewardDocument xlevelRewardDocument2 = this.doc; + xlevelRewardDocument2.GerenalBattleData.StartLevel = xlevelRewardDocument2.GerenalBattleData.StartLevel + 1u; + } + else + { + this.doc.GerenalBattleData.CurrentExpPercent = this.doc.GerenalBattleData.CurrentExpPercent + this.doc.GerenalBattleData.GrowExpPercent; + } + bool flag3 = this.doc.GerenalBattleData.TotalExpPercent <= 0f; + if (flag3) + { + XLevelUpStatusDocument specificDocument = XDocuments.GetSpecificDocument(XLevelUpStatusDocument.uuID); + specificDocument.LevelRewardShowLevelUp(); + int powerpoint = (int)XSingleton.singleton.XPlayerData.GetAttr(XAttributeDefine.XAttr_POWER_POINT_Basic); + DlgBase.singleton.SetPowerpoint(powerpoint); + } + this.m_exp_bar.Value = this.doc.GerenalBattleData.CurrentExpPercent; + this.m_exp_bar_level.SetText(string.Format("Lv.{0}", this.doc.GerenalBattleData.StartLevel)); + this._exp_percent = this.doc.GerenalBattleData.TotalExp * Mathf.Min(1f, 1f - this.doc.GerenalBattleData.TotalExpPercent); + this.m_exp_bar_percent.SetText(string.Format("+{0}", this._exp_percent.ToString("0"))); + } + } + + private void RefreshPlatformAbilityInfo(SceneType type) + { + this.RefreshQQVipInfo(type); + this.RefreshQQWXGameCenterInfo(type); + } + + public void RefreshQQVipInfo(SceneType type) + { + bool flag = type != SceneType.SCENE_BATTLE && type != SceneType.SCENE_ABYSSS; + if (flag) + { + this.m_QQVipTip.SetVisible(false); + this.m_QQVipIcon.SetActive(false); + this.m_QQSVipIcon.SetActive(false); + } + else + { + QQVipInfoClient qqvipInfo = XPlatformAbilityDocument.Doc.QQVipInfo; + bool flag2 = XSingleton.singleton.Channel == XAuthorizationChannel.XAuthorization_QQ && XSingleton.singleton.IsSystemOpened(XSysDefine.XSys_QQVIP) && qqvipInfo != null; + if (flag2) + { + this.m_QQVipTip.SetVisible(qqvipInfo.is_svip || qqvipInfo.is_vip); + SeqList seqList = qqvipInfo.is_svip ? XSingleton.singleton.GetSequenceList("QQSVipLevelReward", true) : XSingleton.singleton.GetSequenceList("QQVipLevelReward", true); + bool flag3 = seqList.Count > 0; + if (flag3) + { + int itemID = seqList[0, 0]; + int num = seqList[0, 1]; + string @string = XStringDefineProxy.GetString(qqvipInfo.is_svip ? "QQVIP_GAMEEND_SVIP_TIP" : "QQVIP_GAMEEND_VIP_TIP", new object[] + { + num, + XSingleton.singleton.ChooseProfString(XBagDocument.GetItemConf(itemID).ItemName, 0u) + }); + this.m_QQVipTip.SetText(@string); + } + this.m_QQVipIcon.SetActive(qqvipInfo.is_vip && !qqvipInfo.is_svip); + this.m_QQSVipIcon.SetActive(qqvipInfo.is_svip); + } + else + { + this.m_QQVipTip.SetVisible(false); + this.m_QQVipIcon.SetActive(false); + this.m_QQSVipIcon.SetActive(false); + } + } + } + + private void RefreshQQWXGameCenterInfo(SceneType type) + { + bool flag = type != SceneType.SCENE_BATTLE; + if (flag) + { + this.m_QQGameCenter.SetActive(false); + this.m_WXGameCenter.SetActive(false); + } + else + { + StartUpType launchTypeServerInfo = XSingleton.singleton.GetLaunchTypeServerInfo(); + bool flag2 = XSingleton.singleton.Channel == XAuthorizationChannel.XAuthorization_QQ && XSingleton.singleton.IsSystemOpened(XSysDefine.XSys_Platform_StartPrivilege) && launchTypeServerInfo == StartUpType.StartUp_QQ; + if (flag2) + { + string[] andSeparateValue = XSingleton.singleton.GetAndSeparateValue("QQGameCenterLevelReward", XGlobalConfig.SequenceSeparator); + IXUILabel ixuilabel = this.m_QQGameCenter.transform.Find("T").GetComponent("XUILabel") as IXUILabel; + bool flag3 = andSeparateValue.Length == 2; + if (flag3) + { + ixuilabel.SetText(XStringDefineProxy.GetString("GAMECENTER_GAME_END_QQ", new object[] + { + XSingleton.singleton.ChooseProfString(XBagDocument.GetItemConf(int.Parse(andSeparateValue[0])).ItemName, 0u), + andSeparateValue[1] + })); + } + this.m_QQGameCenter.SetActive(true); + } + else + { + this.m_QQGameCenter.SetActive(false); + } + bool flag4 = XSingleton.singleton.Channel == XAuthorizationChannel.XAuthorization_WeChat && XSingleton.singleton.IsSystemOpened(XSysDefine.XSys_Platform_StartPrivilege) && launchTypeServerInfo == StartUpType.StartUp_WX; + if (flag4) + { + string[] andSeparateValue2 = XSingleton.singleton.GetAndSeparateValue("WXGameCenterLevelReward", XGlobalConfig.SequenceSeparator); + IXUILabel ixuilabel2 = this.m_WXGameCenter.transform.Find("T").GetComponent("XUILabel") as IXUILabel; + bool flag5 = andSeparateValue2.Length == 2; + if (flag5) + { + ixuilabel2.SetText(XStringDefineProxy.GetString("GAMECENTER_GAME_END_WX", new object[] + { + XSingleton.singleton.ChooseProfString(XBagDocument.GetItemConf(int.Parse(andSeparateValue2[0])).ItemName, 0u), + andSeparateValue2[1] + })); + } + this.m_WXGameCenter.SetActive(true); + } + else + { + this.m_WXGameCenter.SetActive(false); + } + } + } + } +} -- cgit v1.1-26-g67d0