当前位置: 首页 > news >正文

joomla 做外贸网站 好的网上培训

joomla 做外贸网站 好的,网上培训,桂林网站,企业网站设计开题报告本篇我们通过使用单例模式来创建一个公共执行器,使得原本应该在Update()、FixedUpdate()中的指令都可以统一放在一个对象中执行,且可进行添加和移除操作。 1. 创建单例模式改造器:SingletonMono 我们先创建一个单例模式改造器,使…

本篇我们通过使用单例模式来创建一个公共执行器,使得原本应该在Update()、FixedUpdate()中的指令都可以统一放在一个对象中执行,且可进行添加和移除操作。

1. 创建单例模式改造器:SingletonMono

我们先创建一个单例模式改造器,使得其它类想要使用单例模式都可以直接继承该类:

using UnityEngine;public class SingletonMono<T> : MonoBehaviour where T : SingletonMono<T>
{public static T Instance;protected virtual void Awake(){if (Instance == null){Instance = (T)this;}else{Destroy(gameObject);}}
}

2. 公共执行器:MonoManager

关于 PlayerInputControl 类的相关解释可参考文章:[步骤] 启用Unity全新输入系统。

using System;
using UnityEngine;public class MonoManager : SingletonMono<MonoManager>
{[HideInInspector] public PlayerInputControl input;private void OnEnable(){if (input == null)input = new PlayerInputControl();input.Enable();}private void OnDisable(){input?.Disable();}private Action updateAction;private Action lateUpdateAction;private Action fixedUpdateAction;public void AddUpdateListener(Action action){updateAction += action;}public void RemoveUpdateListener(Action action){updateAction -= action;}public void AddLateUpdateListener(Action action){lateUpdateAction += action;}public void RemoveLateUpdateListener(Action action){lateUpdateAction -= action;}public void AddFixedUpdateListener(Action action){fixedUpdateAction += action;}public void RemoveFixedUpdateListener(Action action){fixedUpdateAction -= action;}private void Update(){updateAction?.Invoke();}private void LateUpdate(){lateUpdateAction?.Invoke();}private void FixedUpdate(){fixedUpdateAction?.Invoke();}
}

 3. 测试:TestMonoManager

using System.Collections;
using UnityEngine;public class TestMonoManager : MonoBehaviour
{Coroutine coroutine;private void Start(){MonoManager.Instance.AddUpdateListener(TestUpdate);MonoManager.Instance.AddFixedUpdateListener(TestFixedUpdate);MonoManager.Instance.AddFixedUpdateListener(TestLateUpdate);coroutine = MonoManager.Instance.StartCoroutine(TestCoroutine());}private void TestUpdate(){print("正在执行Update");}private void TestFixedUpdate(){print("正在执行FixedUpdate");}private void TestLateUpdate(){print("正在执行LateUpdate");}private IEnumerator TestCoroutine(){while (true){yield return new WaitForSeconds(0.1f);print("正在执行TestCoroutine");// 当用户按下<移动键>则停止执行该协程if (MonoManager.Instance.input.Player.Move.ReadValue<Vector2>() != Vector2.zero){MonoManager.Instance.StopCoroutine(coroutine);}}}}

http://www.wangmingla.cn/news/149532.html

相关文章:

  • 舟山网站设计最好用的免费建站平台
  • 网站建设的方法有哪些内容北京正规seo搜索引擎优化价格
  • 汕头有几个区几个县站长工具查询seo
  • 做网站公司做网站公司有哪些电视剧百度风云榜
  • 制作一个网站需要哪些步骤优化设计三年级上册答案语文
  • 机关内网站建设方案书关键词推广seo
  • 珠海网站建设联系方式黄页网站推广服务
  • 个人网站做镜像企业网站的作用和意义
  • 手机建站永久免费软件山东建站管理系统
  • 政府网站和政务网站建设自查网站备案信息查询
  • 什么网站做设计可以赚钱吗产品软文范例500字
  • 外贸网站建设公司流程全国疫情最新消息
  • 徐州建设集团有限公司太原seo自媒体
  • 抖音代运营违法吗?seo软件全套
  • 定制类做网站多少钱推广优化网站排名
  • 佰联轴承网做的网站html网页制作软件有哪些
  • 做网站策划营销推广网站友链交换平台
  • 有没有可以在线做化学实验的网站品牌推广的方式
  • 郑州品牌网站建设官网外包
  • 青岛企业自助建站系统百度app客服人工电话
  • 做网站排名多少钱seo排名关键词
  • 网站安装教程百度一下首页网址
  • 环球贸易网国际站淘宝搜索词排名查询
  • 响应式布局如何实现长治网站seo
  • b2b网站优化怎么做新闻20字摘抄大全
  • 移动网站开发服务天津百度推广电话
  • 大型地方门户网站源码弹窗广告最多的网站
  • 做网站开发需要的英语水平百度推广代理加盟
  • 学仿网站文山seo公司
  • 网站安全软件推广app的软文案例