strange IOC框架 塔防游戏实例应用 (五)
来源:互联网 发布:base64加密 c语言 编辑:程序博客网 时间:2024/05/15 08:33
源码地址: http://pan.baidu.com/s/1hrApFFI (注 : 当时没写完的Demo工程,主要看看MVC分层)
应用场景: 开始关卡
顺序逻辑:Viiew的Mediator里监听开始关卡按钮 -》 把参数传递发出开始关卡事件 -》 Command与Model交互并读取参数开始相应关卡
1.Mediator代码
public class Mediator_Select : EventMediator { [Inject] public View_Select View_Select { get; set; } /// <summary> /// 监听初始化 /// </summary> public override void OnRegister() { View_Select.Init(); View_Select.BtnStart.onClick.AddListener(OnBtnStartClick); View_Select.BtnHelp.onClick.AddListener(OnBtnHelpClick); View_Select.BtnBack.onClick.AddListener(OnBtnBtnBackClick); dispatcher.AddListener(ViewEventType.InitLevelCard, OnInitLevelCard); } public void OnDestroy() { View_Select.BtnStart.onClick.RemoveListener(OnBtnStartClick); View_Select.BtnHelp.onClick.RemoveListener(OnBtnHelpClick); View_Select.BtnBack.onClick.RemoveListener(OnBtnBtnBackClick); dispatcher.RemoveListener(ViewEventType.InitLevelCard, OnInitLevelCard); } /// <summary> /// 传递参数并发出事件 /// </summary> void OnBtnStartClick() { Args_StartLevel e = new Args_StartLevel() { LevelIndex = View_Select.m_selectIndex }; dispatcher.Dispatch(EventType.StartLevel,e); } void OnBtnBtnBackClick() { Game.Instance.LoadScene(1); } void OnBtnHelpClick() { } void OnInitLevelCard(IEvent e) { Args_InitLevelCard ee = e.data as Args_InitLevelCard; View_Select.LoadCardLevels(ee.levels, ee.GameProgress); }}
public class Command_StartLevel : EventCommand { [Inject] public Model_Game Model_Game { get; set; } public override void Execute() { Args_StartLevel e = evt.data as Args_StartLevel; Model_Game.StartLevel(e.LevelIndex); Game.Instance.LoadScene(3); }}
0 0
- strange IOC框架 塔防游戏实例应用 (五)
- strange IOC框架 塔防游戏实例应用 (一)
- strange IOC框架 塔防游戏实例应用 (二)
- strange IOC框架 塔防游戏实例应用 (三)
- strange IOC框架 塔防游戏实例应用 (四)
- cocos2d制作的塔防游戏(五)(共五篇)
- 从零开始-边学边做-塔防游戏-七彩三国(五)--SDL项目
- Cocos2D:塔防游戏制作之旅(五)
- spring实例应用(IoC)
- [Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--防御塔(五)之高级箭塔
- python实例-兔子和獾(塔防游戏)附源码
- Python学习笔记4--一个实例(塔防游戏)
- cocos2d-x游戏实例(10)-塔防游戏(修改地图图素,地图整体缩放)
- cocos2d-x游戏实例(10)-塔防游戏(修改地图图素,地图整体缩放)
- .Net AOP(五) 各种IoC框架下实现AOP
- .Net AOP(五) 各种IoC框架下实现AOP
- 塔防游戏
- 塔防游戏demo
- ElasticSearch基本查询工具
- 关于AS连接不到真机
- 如何控制input的样式
- why 主线程操作UI
- MyBatisConfig的常用配置
- strange IOC框架 塔防游戏实例应用 (五)
- 数据可视化对企业的重要性
- jvm
- 【java】使用二维数组输出矩阵
- Android DownloadManager
- Mac AndroidStudio Git 使用
- 表达式求值(OJ)
- c#练习——统计字符串中的数子字符的个数以及所有的数字字符
- 基于DragonBoard 410c 开发板的智能物料仓库调控系统之zigbee模块简介