求一个自己做的网站链接/广州seo优化推广
更新日期:2019年12月4日。
Github源码:[点我获取源码]
Gitee源码:[点我获取源码]
索引
- CustomModule自定义模块简介
- 使用CustomModule
- 新建自定义模块
- 执行模块生命周期
- 终止模块生命周期
- 外部访问模块
- 运行时检视面板
CustomModule自定义模块简介
框架内置了多个常用的模块,如果想要添加自己的模块,通过CustomModule添加自定义模块即可,自定义模块拥有与内置模块完全一样的生命周期。
使用CustomModule
新建自定义模块
自定义模块类,必须满足以下条件:
1.继承至CustomModuleBase
2.标记特性CustomModule
推荐使用快捷创建方式:
Project界面右键 -> Create -> HTFramework -> C# CustomModule Script
如下,我新建了一个名为MonsterController的自定义模块:
/// <summary>
/// 新建自定义模块
/// </summary>
[CustomModule("怪物管理器", true)]
public class MonsterController : CustomModuleBase
{/// <summary>/// 初始化模块/// </summary>public override void OnInitialization(){base.OnInitialization();Debug.Log("怪物管理器 完成初始化工作!");}/// <summary>/// 模块准备工作/// </summary>public override void OnPreparatory(){base.OnPreparatory();Debug.Log("怪物管理器 完成准备工作!");}/// <summary>/// 刷新模块/// </summary>public override void OnRefresh(){base.OnRefresh();Debug.Log("怪物管理器 开始工作!");}/// <summary>/// 终结模块/// </summary>public override void OnTermination(){base.OnTermination();}/// <summary>/// 暂停模块/// </summary>public override void OnPause(){base.OnPause();}/// <summary>/// 恢复模块/// </summary>public override void OnUnPause(){base.OnUnPause();}
}
CustomModule标记的第一个参数为自定义模块的名称,如果出现多个自定义模块名称重复的情况,则重复的模块不会被启用;第二个参数为是否启用此自定义模块。
执行模块生命周期
创建自定义模块完成并启用该模块后,我们直接运行主场景,该自定义模块便会自动加入到框架生命周期。
终止模块生命周期
框架内置模块是不允许提前终止生命周期的,他们只能跟随程序的退出而结束生命周期,而自定义模块则可以提前终止生命周期,你可以在任何时候终止一个自定义模块,不过终止之后将无法再启动:
//终止名为【怪物管理器】的自定义模块Main.m_CustomModule.TerminationModule("怪物管理器");
外部访问模块
通过如下方式外部访问自定义模块:
Main.m_CustomModule["怪物管理器"].Cast<MonsterController>().GenerateMonster();
运行时检视面板
在编辑器中运行时将会出现运行时检视面板(Runtime Data),主要用以调试或数据监测,目前面板如下:
1.CustomModules:显示当前启用的所有自定义模块。