| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using cfg.GfgCfg;
- using ET;
- using FairyGUI;
- using UI.MiniGame;
- using UnityEngine;
- namespace GFGGame
- {
- public class ResultTipsView : BaseWindow
- {
- private UI_ResultTipsUI _ui;
- private bool gameResult;
- private int timeResult;
- private int gameType;
- private int gameID;
- private List<ActivityOpenCfg> activityGameDate;
- private Dictionary<int, string> viewJumpView = new Dictionary<int, string>()
- { { 1, "FlipGameView" }, { 2, "TZFEGameView" } };
- //通关评价,不同关卡不同
- private List<int> CustemsNum = new List<int>()
- {
- 10,
- 30,
- 60,
- };
- private EffectUI _effectUI1;
- private EffectUI _effectUI2;
- private EffectUI _effectUI3;
- public override void Dispose()
- {
- EffectUIPool.Recycle(_effectUI1);
- _effectUI1 = null;
- EffectUIPool.Recycle(_effectUI2);
- _effectUI2 = null;
- EffectUIPool.Recycle(_effectUI3);
- _effectUI3 = null;
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- base.Dispose();
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_ResultTipsUI.PACKAGE_NAME;
- _ui = UI_ResultTipsUI.Create();
- this.viewCom = _ui.target;
- isfullScreen = true;
- _ui.m_exitBtn.onClick.Add(OnClickExit);
- _ui.m_againBtn.onClick.Add(OnClickAgain);
- _ui.m_rewardList.itemRenderer = RenderRewardList;
- _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_effectBg, "ui_Activity", "Game_Quad_Open");
- _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_effectSucces, "ui_Activity", "Game_Quad_Win");
- _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_effectFail, "ui_Activity", "Game_Quad_Lose");
- }
- protected override void OnShown()
- {
- base.OnShown();
- if ((this.viewData as object[]).Length >= 3)
- {
- gameResult = (bool)(this.viewData as object[])[0];
- gameType = (int)(this.viewData as object[])[1];
- timeResult = (int)(this.viewData as object[])[2];
- gameID = (int)(this.viewData as object[])[3];
- }
- UpdateView();
- ReqResultReward();
- }
- private void UpdateView()
- {
- ItemCfg itemCfg;
- string consumeText;
- switch (gameType)
- {
- case 1:
- var cardGameDate = CommonDataManager.Tables.TblCardGameCfg.GetOrDefault(gameID);
- CustemsNum[0] = cardGameDate.TimeStar3;
- CustemsNum[1] = cardGameDate.TimeStar2;
- CustemsNum[2] = cardGameDate.TimeStar1;
- if (cardGameDate.ComsumePass.Count > 0)
- {
- itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(cardGameDate.ComsumePass[0].ItemId);
- consumeText = cardGameDate.ComsumePass[0].Count.ToString();
- }
- else
- {
- itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(3000017);
- consumeText = "";
- }
- _ui.m_consumeIcon.url = ResPathUtil.GetIconPath(itemCfg.Res, "png");
- _ui.m_consumeTxt.text = consumeText;
- break;
- case 2:
- var MergeGameDate = CommonDataManager.Tables.TblMerge2048GameCfg.GetOrDefault(gameID);
- CustemsNum[0] = MergeGameDate.TimeStar3;
- CustemsNum[1] = MergeGameDate.TimeStar2;
- CustemsNum[2] = MergeGameDate.TimeStar1;
- if (MergeGameDate.ComsumePass.Count > 0)
- {
- itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(MergeGameDate.ComsumePass[0].ItemId);
- consumeText = MergeGameDate.ComsumePass[0].Count.ToString();
- }
- else
- {
- itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(3000017);
- consumeText = "";
- }
- _ui.m_consumeIcon.url = ResPathUtil.GetIconPath(itemCfg.Res, "png");
- _ui.m_consumeTxt.text = consumeText;
- break;
- case 3:
- break;
- default:
- break;
- }
- _ui.m_t0.Play();
- if (gameResult)
- {
- _ui.m_failTxt.visible = false;
- _ui.m_success.visible = true;
- _ui.m_effectFail.visible = false;
- _ui.m_effectSucces.visible = true;
- _ui.m_resultTxt.text = "通关奖励";
- _ui.m_resultTitle.url = "ui://MiniGame/shengli_bt";
- UpdateStar();
- }
- else
- {
- _ui.m_failTxt.visible = true;
- _ui.m_success.visible = false;
- _ui.m_effectSucces.visible = false;
- _ui.m_effectFail.visible = true;
- _ui.m_resultTxt.text = "失败奖励";
- _ui.m_resultTitle.url = "ui://MiniGame/shibai_bt";
- }
- _ui.m_resultTitle.visible = false;
- _ui.m_bg.visible = false;
- activityGameDate = CommonDataManager.Tables.TblActivityOpenCfg.DataList
- .Where(a => a.Type == ConstLimitTimeActivityType.ActLimitStlyc).ToList();
- }
- private void UpdateStar()
- {
- int starNum = 0;
- for (int i = CustemsNum.Count - 1; i >= 0; i--)
- {
- if (timeResult <= CustemsNum[i])
- {
- starNum += 1;
- }
- }
- switch (starNum)
- {
- case 1:
- _ui.m_star1.url = "ui://MiniGame/tb_zx_pt_star";
- _ui.m_star2.url = "ui://MiniGame/tb_zx_pt_star_grey";
- _ui.m_star3.url = "ui://MiniGame/tb_zx_pt_star_grey";
- break;
- case 2:
- _ui.m_star1.url = "ui://MiniGame/tb_zx_pt_star";
- _ui.m_star2.url = "ui://MiniGame/tb_zx_pt_star";
- _ui.m_star3.url = "ui://MiniGame/tb_zx_pt_star_grey";
- break;
- case 3:
- _ui.m_star1.url = "ui://MiniGame/tb_zx_pt_star";
- _ui.m_star2.url = "ui://MiniGame/tb_zx_pt_star";
- _ui.m_star3.url = "ui://MiniGame/tb_zx_pt_star";
- break;
- default:
- _ui.m_star1.visible = false;
- _ui.m_star2.visible = false;
- _ui.m_star3.visible = false;
- break;
- }
- }
- protected override void OnHide()
- {
- base.OnHide();
- }
- private void OnClickExit()
- {
- this.Hide();
- ViewManager.Hide(viewJumpView[gameType]);
- ViewManager.Show<GameStartView>();
- EventAgent.DispatchEvent(ConstMessage.TZFE_GAME_UPDATE);
- }
- private async void OnClickAgain()
- {
- this.Hide();
- var result = await MiniGameProxy.ReqMiniGameStart(gameID, gameType, activityGameDate[0].Id);
- if (!result)
- {
- ViewManager.Hide(viewJumpView[gameType]);
- return;
- }
- ViewManager.Show(viewJumpView[gameType], new object[] { gameID });
- }
- private void RenderRewardList(int index, GObject obj)
- {
- UI_rewardItem item = UI_rewardItem.Proxy(obj);
- ItemCfg itemCfg =
- CommonDataManager.Tables.TblItemCfg.GetOrDefault(MiniGameDateManager.Instance.itemList[index].ConfigId);
- if (itemCfg != null)
- {
- item.m_icon.url = ResPathUtil.GetIconPath(itemCfg.Res, "png");
- item.m_Count.text = MiniGameDateManager.Instance.itemList[index].Count.ToString();
- }
- UI_rewardItem.ProxyEnd();
- }
- private async void ReqResultReward()
- {
- var result = await MiniGameProxy.ReqMiniGameEnd(gameID, gameType, timeResult, gameResult,
- activityGameDate[0].Id, false);
- if (!result)
- {
- this.Hide();
- ViewManager.Hide(viewJumpView[gameType]);
- return;
- }
- _ui.m_rewardList.numItems = MiniGameDateManager.Instance.itemList.Count;
- }
- }
- }
|