【XFramework】——Tasks

本文详细介绍了一款游戏开发框架XFramwwork的任务模块,包括单个任务、组合任务及竞速任务三种类型,以及如何构造和执行任务队列。

不是多线程,不是多线程,不是多线程
任务使用示例 在任一场景中挂载Game脚本并选择TasksDemo流程,运行即可

一.介绍

  XFramwwork的任务模块提供了一种顺序执行的任务队列,内置三种类型的任务,使用者可以根据需要自行添加其他类型,继承TaskBase即可。内置任务类型如下

SingleTask 单个任务,任务执行完成即执行下一个任务

AllTask 内含一组任务,组内所有任务执行完成后才能开始执行下一个任务

RaceTask 内含一组任务,组内任一任务执行完成后便开始执行下一个任务

二.使用方式

1.构造一个任务队列

  使用者可以自行创造任务并设置任务的NextTask来构造一个完整的任务队列,但推荐使用以下写法
  首先构造一个队首任务,可以是上述三种类型的任一一个,All,Then,Race均为Task的扩展方法,传入委托或者委托数组返回队尾任务。

	SingleTask singleTask = new SingleTask(() =>
	{
	    Debug.Log("任务开始");
	    return true;
	});
	
	singleTask.All(
	    () => { return TimeTo(0.1f); },
	    () => { return TimeTo(0.2f); },
	    () => { return TimeTo(0.4f); },
	    () => { return TimeTo(0.35f); },
	    () => { return TimeTo(0.3f); }
	).Then(
	    () => { return TimeTo(0.5f); }
	).Race(
	    () => { return TimeTo(0.6f); },
	    () => { return TimeTo(0.8f); },
	    () => { return TimeTo(0.7f); },
	    () => { return TimeTo(0.66f); },
	    () => { return TimeTo(0.9f); }
	).Then(
	    () => { return TimeTo(1.0f); }
	);

2.开始执行任务队列

       Game.TaskModule.StartTask(singleTask);
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值