任务HUD对接
任务HUD即将玩家当前任务与任务目标显示在HUD上。因此,需要频繁地(或被动地)获取玩家的任务状态来实现该功能。
一,了解接口
public interface ITaskHudInfoProvider extends IFunctionProvider {
/**
* 获得目标玩家的简要任务信息
* 注意!为此方法区别与ITaskInfoProvider,该方法会被频繁调用,因此需要简短且快速地获取信息。
*
* @param playerUuid 目标玩家的uuid
* @return 玩家的任务信息表
**/
List<IBriefTaskInfo> getBriefTaskInfoOf(UUID playerUuid);
}
public interface IBriefTaskInfo {
/**
* 获得任务名字
* */
String getTaskName();
/***
* 获得目标信息与状态,其中Key为目标信息,Value为目标状态。
*
* 注意!Key中需包含任务进度信息,例如: 击杀玩家(2/10)
* Value中为目标的进度枚举,枚举中包括 NOT_STARTED(未开始)、PROCEED(进行中)、DONE(已完成)。
*
* */
Map<String, ObjectiveStatusEnum> getObjectiveInfo();
}二,进行对接
1 创建IBriefTaskInfo
2 接口对接
3 注册接口
主动调用更新

Last updated