提交小游戏项目

This commit is contained in:
2026-07-06 16:27:14 +08:00
commit 2a717c6a2f
7575 changed files with 710847 additions and 0 deletions
@@ -0,0 +1,25 @@
namespace TowerClimberChronicles
{
public class GamePlayCtrl : BaseCtrl
{
public static GamePlayCtrl Instance { get; private set; }
private GamePlayModel model;
#region
protected override void OnInit()
{
Instance = this;
//model = ModuleManager.Instance..GetModel(ModelConst.GamePlayModel) as GamePlayModel;
}
protected override void OnDispose()
{
Instance = null;
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 5ff5044d5d55ecf4fbcef0ef96ac02d0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,20 @@
namespace TowerClimberChronicles
{
public class GamePlayModel : BaseModel
{
#region
protected override void OnInit()
{
}
protected override void OnDispose()
{
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f50eab861828d694e887de8ec31da4a7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -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);
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c10e424c107e03046b74f0e41d85bc79
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,73 @@
namespace TowerClimberChronicles
{
public class GamePlayUICtrl : BaseUICtrl
{
private GamePlayUI ui;
private GamePlayModel model;
private uint openUIMsg = UICtrlMsg.GamePlayUI_Open;
private uint closeUIMsg = UICtrlMsg.GamePlayUI_Close;
#region
protected override void OnInit()
{
//model = ModuleManager.Instance.GetModel(ModelConst.GamePlayModel) as GamePlayModel;
}
protected override void OnDispose()
{
}
public override void OpenUI(object args = null)
{
if (ui == null)
{
ui = new GamePlayUI(this);
ui.Open(args);
}
}
public override void CloseUI(object args = null)
{
if (ui != null && !ui.isClose)
{
ui.Close();
}
ui = null;
}
#endregion
#region
public override uint GetOpenUIMsg(string uiName)
{
return openUIMsg;
}
public override uint GetCloseUIMsg(string uiName)
{
return closeUIMsg;
}
protected override void AddListener()
{
uiCtrlDispatcher.AddListener(openUIMsg, OpenUI);
uiCtrlDispatcher.AddListener(closeUIMsg, CloseUI);
}
protected override void RemoveListener()
{
uiCtrlDispatcher.RemoveListener(openUIMsg, OpenUI);
uiCtrlDispatcher.RemoveListener(closeUIMsg, CloseUI);
}
protected override void AddServerListener()
{
}
protected override void RemoveServerListener()
{
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7adc822efa0527e44bc87f511a74bf34
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: