From e2c7e29df3a12ea6b191f60fa4a4d7a7c9b22f0a Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期四, 13 十二月 2018 11:57:47 +0800
Subject: [PATCH] 5398 子 【开发】【1.4】跨服竞技场 / 【前端】【1.4】跨服竞技场开发
---
System/CrossServerOneVsOne/CrossServerWin.cs | 19 +++++++--
System/CrossServerOneVsOne/MatchWin.cs | 20 +++++++++-
System/CrossServerOneVsOne/RankingWin.cs | 7 +++
System/CrossServerOneVsOne/CrossServerArenaWin.cs | 11 ++++-
System/CrossServerOneVsOne/CrossServerRewardModel.cs | 29 +++++++++++++-
5 files changed, 72 insertions(+), 14 deletions(-)
diff --git a/System/CrossServerOneVsOne/CrossServerArenaWin.cs b/System/CrossServerOneVsOne/CrossServerArenaWin.cs
index 26f9c1b..05d348b 100644
--- a/System/CrossServerOneVsOne/CrossServerArenaWin.cs
+++ b/System/CrossServerOneVsOne/CrossServerArenaWin.cs
@@ -16,7 +16,8 @@
[SerializeField] Text reaminNumText;
[SerializeField] Text seasonTimeText;
[SerializeField] Text openTimeText;
-
+ CrossServerRewardModel m_CrossServerRewardModel;
+ CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } }
CrossServerModel crossServerModel { get { return ModelCenter.Instance.GetModel<CrossServerModel>(); } }
#region Built-in
protected override void BindController()
@@ -26,6 +27,7 @@
protected override void AddListeners()
{
dayAwardBtn.AddListener(ClickDayAward);
+ matchBtn.AddListener(ClickMatch);
}
protected override void OnPreOpen()
@@ -96,10 +98,13 @@
{
WindowCenter.Instance.Open<CrossServerDayAwardsWin>();
}
-
+
private void ClickMatch()
{
-
+ CloseImmediately();
+ crossServerRewardModel.IsOpenMatch = true;
+ crossServerRewardModel.ResetTime();
+ WindowCenter.Instance.Open<MatchWin>();
}
}
diff --git a/System/CrossServerOneVsOne/CrossServerRewardModel.cs b/System/CrossServerOneVsOne/CrossServerRewardModel.cs
index 88242a2..ff5d1c9 100644
--- a/System/CrossServerOneVsOne/CrossServerRewardModel.cs
+++ b/System/CrossServerOneVsOne/CrossServerRewardModel.cs
@@ -24,7 +24,19 @@
public class CrossServerRewardModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk
{
public Dictionary<int, SeasonAwardClass> SegmentRewardDic = new Dictionary<int, SeasonAwardClass>();
- public ImpactRankModel.RankAwardItem SeasonRewardDic = new ImpactRankModel.RankAwardItem();
+ public ImpactRankModel.RankAwardItem SeasonRewardDic = new ImpactRankModel.RankAwardItem();
+ private bool m_IsOpenMatch;
+ public bool IsOpenMatch
+ {
+ get { return m_IsOpenMatch; }
+ set { m_IsOpenMatch = value; }
+ }
+ DateTime m_DateTime = DateTime.Now;
+ public DateTime Date_Time
+ {
+ get { return m_DateTime; }
+ set { m_DateTime = value; }
+ }
public override void Init()
{
GetSeasonAward();
@@ -33,13 +45,16 @@
public void OnBeforePlayerDataInitialize()
{
-
+ GlobalTimeEvent.Instance.secondEvent -= secondEvent;
+
}
public void OnPlayerLoginOk()
{
-
+ GlobalTimeEvent.Instance.secondEvent += secondEvent;
}
+
+
public override void UnInit()
{
@@ -93,6 +108,14 @@
}
SeasonRewardDic = _award;
}
+ public void ResetTime()
+ {
+ Date_Time= TimeUtility.ServerNow;
+ }
+ private void secondEvent()
+ {
+
+ }
}
diff --git a/System/CrossServerOneVsOne/CrossServerWin.cs b/System/CrossServerOneVsOne/CrossServerWin.cs
index af4ee06..1a808d2 100644
--- a/System/CrossServerOneVsOne/CrossServerWin.cs
+++ b/System/CrossServerOneVsOne/CrossServerWin.cs
@@ -27,7 +27,8 @@
[SerializeField] Button arenaBtn;
[SerializeField] Button seasonAwardBtn;
[SerializeField] Button honorStoreBtn;
-
+ CrossServerRewardModel m_CrossServerRewardModel;
+ CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } }
CrossServerModel crossServerModel { get { return ModelCenter.Instance.GetModel<CrossServerModel>(); } }
#region Built-in
protected override void BindController()
@@ -61,7 +62,7 @@
protected override void OnAfterOpen()
{
-
+
}
protected override void OnPreClose()
@@ -79,7 +80,7 @@
var playerData = PlayerDatas.Instance.baseData;
headImg.SetSprite(GeneralDefine.GetOtherJobHeadPortrait(playerData.Job, 0));
nameText.text = playerData.PlayerName;
- lvText.text = StringUtility.Contact("Lv.",playerData.LV);
+ lvText.text = StringUtility.Contact("Lv.", playerData.LV);
scoreSlider.minValue = 0;
scoreSlider.maxValue = 1;
UpdateScore();
@@ -94,7 +95,7 @@
curScoreText.text = crossServerModel.curScore.ToString();
int maxScore = 0;
bool isMaxRank = crossServerModel.TryGetMaxRank(out maxScore);
- if(!isMaxRank)
+ if (!isMaxRank)
{
scorePerText.text = StringUtility.Contact(crossServerModel.curScore, "/", maxScore);
scoreSlider.value = (float)crossServerModel.curScore / maxScore;
@@ -139,7 +140,14 @@
private void ClickArena()
{
CloseSubWindows();
- WindowCenter.Instance.Open<CrossServerArenaWin>();
+ if (crossServerRewardModel.IsOpenMatch)
+ {
+ WindowCenter.Instance.Open<MatchWin>();
+ }
+ else
+ {
+ WindowCenter.Instance.Open<CrossServerArenaWin>();
+ }
}
private void ClickRankAward()
@@ -173,6 +181,7 @@
WindowCenter.Instance.CloseImmediately<RankingWin>();
WindowCenter.Instance.CloseImmediately<SeasonRewardWin>();
WindowCenter.Instance.CloseImmediately<SegmentRewardWin>();
+ WindowCenter.Instance.CloseImmediately<MatchWin>();
}
#endregion
}
diff --git a/System/CrossServerOneVsOne/MatchWin.cs b/System/CrossServerOneVsOne/MatchWin.cs
index 9a1b7fa..565afde 100644
--- a/System/CrossServerOneVsOne/MatchWin.cs
+++ b/System/CrossServerOneVsOne/MatchWin.cs
@@ -16,7 +16,10 @@
public class MatchWin : Window
{
[SerializeField] Text m_Text_Timing;
- [SerializeField] Button m_CancelMatchBtn;
+ [SerializeField] Button m_CancelMatchBtn;
+ CrossServerRewardModel m_CrossServerRewardModel;
+ CrossServerRewardModel crossServerRewardModel { get { return m_CrossServerRewardModel ?? (m_CrossServerRewardModel = ModelCenter.Instance.GetModel<CrossServerRewardModel>()); } }
+ private DateTime dateTime = DateTime.Now;
#region Built-in
protected override void BindController()
{
@@ -24,6 +27,7 @@
protected override void AddListeners()
{
+ m_CancelMatchBtn.AddListener(OnClick);
}
protected override void OnPreOpen()
@@ -41,8 +45,20 @@
protected override void OnAfterClose()
{
}
+ protected override void LateUpdate()
+ {
+ dateTime = TimeUtility.ServerNow;
+ var time = dateTime-crossServerRewardModel.Date_Time ;
+ m_Text_Timing.text = time.TotalSeconds.ToString();
+ // DebugEx.LogError(time.TotalSeconds);
+ }
#endregion
-
+ private void OnClick()
+ {
+ crossServerRewardModel.IsOpenMatch = false;
+ CloseImmediately();
+ WindowCenter.Instance.Open<CrossServerArenaWin>();
+ }
}
}
diff --git a/System/CrossServerOneVsOne/RankingWin.cs b/System/CrossServerOneVsOne/RankingWin.cs
index 1747c90..f1abc9e 100644
--- a/System/CrossServerOneVsOne/RankingWin.cs
+++ b/System/CrossServerOneVsOne/RankingWin.cs
@@ -47,8 +47,13 @@
void OnCreateGridLineCell(ScrollerController gridCtrl)
{
gridCtrl.Refresh();
- for (int i = 1; i <= 100; i++)
+ for (int i = 0; i < 100; i++)
{
+ if (i == 0)
+ {
+ gridCtrl.AddCell(ScrollerDataType.Normal, i);
+ continue;
+ }
if (i % 2 != 0)
{
gridCtrl.AddCell(ScrollerDataType.Header, i);
--
Gitblit v1.8.0