提交小游戏项目
This commit is contained in:
@@ -0,0 +1,179 @@
|
||||
|
||||
using FGUI.ZM_Common_01;
|
||||
using UnityEngine;
|
||||
using FairyGUI;
|
||||
using Newtonsoft.Json.Serialization;
|
||||
|
||||
namespace TowerClimberChronicles
|
||||
{
|
||||
public class GamePlayUI : BaseUI
|
||||
{
|
||||
private GamePlayUICtrl ctrl;
|
||||
private GamePlayModel model;
|
||||
private FGUI.ZM_Game_04.com_GamePlay ui;
|
||||
|
||||
public GamePlayUI(GamePlayUICtrl ctrl) : base(ctrl)
|
||||
{
|
||||
uiName = UIConst.GamePlayUI;
|
||||
this.ctrl = ctrl;
|
||||
}
|
||||
|
||||
protected override void SetUIInfo(UIInfo uiInfo)
|
||||
{
|
||||
uiInfo.packageName = "ZM_Game_04";
|
||||
uiInfo.assetName = "com_GamePlay";
|
||||
uiInfo.layerType = UILayerType.Normal;
|
||||
uiInfo.isNeedOpenAnim = false;
|
||||
uiInfo.isNeedCloseAnim = false;
|
||||
uiInfo.isNeedUIMask = false;
|
||||
}
|
||||
|
||||
#region 生命周期
|
||||
protected override void OnInit()
|
||||
{
|
||||
//model = ModuleManager.Instance.GetModel(ModelConst.GamePlayModel) as GamePlayModel;
|
||||
}
|
||||
|
||||
protected override void OnClose()
|
||||
{
|
||||
}
|
||||
|
||||
protected override void OnBind()
|
||||
{
|
||||
ui = baseUI as FGUI.ZM_Game_04.com_GamePlay;
|
||||
}
|
||||
|
||||
protected override void OnOpenBefore(object args)
|
||||
{
|
||||
InitView();
|
||||
}
|
||||
|
||||
protected override void OnOpen(object args)
|
||||
{
|
||||
}
|
||||
|
||||
protected override void OnHide()
|
||||
{
|
||||
}
|
||||
|
||||
protected override void OnDisplay(object args)
|
||||
{
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 消息
|
||||
protected override void AddListener()
|
||||
{
|
||||
GameDispatcher.Instance.AddListener(GameMsg.GameAddTime, AddtimeSuccess);
|
||||
GameDispatcher.Instance.AddListener(GameMsg.GameReset, GameReset);
|
||||
GameDispatcher.Instance.AddListener(GameMsg.GamePauseEnd, GamePauseEnd);
|
||||
GameDispatcher.Instance.AddListener(GameMsg.GameSuccess, GameSuccess);
|
||||
}
|
||||
protected override void RemoveListener()
|
||||
{
|
||||
GameDispatcher.Instance.RemoveListener(GameMsg.GameAddTime, AddtimeSuccess);
|
||||
GameDispatcher.Instance.RemoveListener(GameMsg.GameReset, GameReset);
|
||||
GameDispatcher.Instance.RemoveListener(GameMsg.GamePauseEnd, GamePauseEnd);
|
||||
GameDispatcher.Instance.RemoveListener(GameMsg.GameSuccess, GameSuccess);
|
||||
}
|
||||
#endregion
|
||||
void GameSuccess(object A = null)
|
||||
{
|
||||
HallManager.Instance.UpdateSecondEvent -= UpdateSecond;
|
||||
uiCtrlDispatcher.Dispatch(UICtrlMsg.GameEndUI_Open, true);
|
||||
|
||||
}
|
||||
void GamePauseEnd(object A = null)
|
||||
{
|
||||
HallManager.Instance.UpdateSecondEvent += UpdateSecond;
|
||||
}
|
||||
|
||||
void GameReset(object A = null)
|
||||
{
|
||||
HallManager.Instance.UpdateSecondEvent += UpdateSecond;
|
||||
remain_time = start_time;
|
||||
SetTimeText();
|
||||
|
||||
}
|
||||
private int remain_time;
|
||||
private int start_time = 120;
|
||||
private int add_time = 60;
|
||||
|
||||
//初始化页面逻辑
|
||||
private void InitView()
|
||||
{
|
||||
remain_time = start_time;
|
||||
HallManager.Instance.UpdateSecondEvent += UpdateSecond;
|
||||
SetTimeText();
|
||||
ui.btn_pause.SetClick(() =>
|
||||
{
|
||||
HallManager.Instance.UpdateSecondEvent -= UpdateSecond;
|
||||
// Time.timeScale = 0;
|
||||
uiCtrlDispatcher.Dispatch(UICtrlMsg.GamePauseUI_Open);
|
||||
|
||||
});
|
||||
|
||||
ui.btn_time.SetClick(() =>
|
||||
{
|
||||
GameHelper.ShowVideoAd("AddTime", (issuccess) =>
|
||||
{
|
||||
if (issuccess)
|
||||
{
|
||||
remain_time += add_time;
|
||||
SetTimeText();
|
||||
GameHelper.ShowTips("Add Time Success!");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
ui.btn_tips.SetClick(() =>
|
||||
{
|
||||
if (is_open_tips) uiCtrlDispatcher.Dispatch(UICtrlMsg.GameTipUI_Open);
|
||||
else
|
||||
{
|
||||
|
||||
GameHelper.ShowVideoAd("ShowTips", (issuccess) =>
|
||||
{
|
||||
if (issuccess)
|
||||
{
|
||||
is_open_tips = true;
|
||||
uiCtrlDispatcher.Dispatch(UICtrlMsg.GameTipUI_Open);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
private bool is_open_tips = false;
|
||||
void AddtimeSuccess(object a = null)
|
||||
{
|
||||
remain_time += add_time;
|
||||
SetTimeText();
|
||||
GameHelper.ShowTips("Add Time Success!");
|
||||
HallManager.Instance.UpdateSecondEvent += UpdateSecond;
|
||||
}
|
||||
void UpdateSecond()
|
||||
{
|
||||
remain_time--;
|
||||
if (remain_time < 0)
|
||||
{
|
||||
HallManager.Instance.UpdateSecondEvent -= UpdateSecond;
|
||||
uiCtrlDispatcher.Dispatch(UICtrlMsg.GameAddTimeUI_Open);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetTimeText();
|
||||
}
|
||||
|
||||
}
|
||||
void SetTimeText()
|
||||
{
|
||||
ui.btn_time.title = CommonHelper.TimeFormat(remain_time, CountDownType.Minute);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user