仙魔无双SDK
面向策划逻辑制作的游戏开发包
任务相关操作

任务操作相关接口。新的任务系统提供的。 更多...

函数

int SCTaskUseItemNtf (FxCreature *pSrcActor, int iTaskID, int iTID)
 角色pSrcActor通知客户端,任务所需的道具模板的ID 更多...
 
int CallTaskMonster (FxCreature *pActor, unsigned int dwPathPoint, unsigned int dwMonsterId)
 角色pActor召唤dwMonsterId,按dwPathPoint路径行走。实际上用于捉妖道具。 更多...
 
int FindTaskFromActor (FxCreature *pActor, unsigned long nTaskID)
 查询角色pActor身上是否有任务nTaskID。 更多...
 
int GetTaskStepFromActor (FxCreature *pActor, unsigned long nTaskID)
 查询角色pActor身上任务nTaskID的步骤。 更多...
 
int GetTaskStateFromActor (FxCreature *pActor, unsigned long nTaskID)
 查询角色pActor身上任务nTaskID的状态。 更多...
 
int AddTaskToTeam (FxCreature *pSrcActor, unsigned long nTaskID, int nExcluded=true, unsigned long nDistance=3200)
 角色pSrcActor给自己所在的小队附近的玩家添加任务。附近的意思是,击杀怪物时的loot权范围 更多...
 
bool ReceiveTask (FxCreature *pCreature, int uiTaskID)
 让角色pCreature接受任务uiTaskID 更多...
 
bool HintTask (FxCreature *pCreature, int uiTaskID)
 让角色pCreature提示任务uiTaskID 更多...
 
bool CommitTask (FxCreature *pCreature, int uiTaskID, bool bForce=false)
 让角色pCreature的任务uiTaskID提交 更多...
 
bool ExsitTask (FxCreature *pCreature, int uiTaskID)
 检测角色pCreature是否存在任务uiTaskID 更多...
 
bool FailTask (FxCreature *pCreature, int uiTaskID)
 让角色pCreature的任务uiTaskID失败 更多...
 
bool ResetTask (FxCreature *pCreature, int uiTaskID)
 让角色pCreature的任务uiTaskID重置 更多...
 
bool FixMainTask (FxCreature *pCreature, unsigned int uiFixTaskID, unsigned int uiRecommendedTaskID)
 给主线任务断档的角色推荐主线任务, 有主线任务的无效 更多...
 
bool RemoveAllMainTask (FxCreature *pCreature)
 删除所有主线任务, 不能再任务脚本里调用 更多...
 
bool RemoveTask (FxCreature *pCreature, int nTaskID)
 删除角色pCreature的任务nTaskID。 更多...
 
int EnableTaskTimer (FxCreature *pActor, unsigned long nTaskID, unsigned long nTimer)
 激活角色pActor已经获取的任务nTaskID的倒计时nTimer 更多...
 
int DisableTaskTimer (FxCreature *pActor, unsigned long nTaskID)
 关闭角色pActor已经获取的任务nTaskID的倒计时 更多...
 
std::string GetTaskCheckerProperty (XTaskChecker *pChecker, const std::string &rstrKey)
 获得Taskchecker里的属性 更多...
 
void RemoveTaskCheckerProperty (XTaskChecker *pChecker, const std::string &rstrKey)
 删除Taskchecker里的属性 更多...
 
void SetTaskCheckerProperty (XTaskChecker *pChecker, const std::string &rstrKey, const std::string &rstrVal)
 设置Taskchecker里的属性 更多...
 
void SetArgvs4TaskChecker (XTaskChecker *pChecker, long val)
 统一的设置Taskchecker参数 更多...
 

详细描述

任务操作相关接口。新的任务系统提供的。

函数说明

◆ AddTaskToTeam()

int AddTaskToTeam ( FxCreature *  pSrcActor,
unsigned long  nTaskID,
int  nExcluded = true,
unsigned long  nDistance = 3200 
)

角色pSrcActor给自己所在的小队附近的玩家添加任务。附近的意思是,击杀怪物时的loot权范围

参数
pSrcActor[角色] 角色对象。
nTaskID[整数] 要添加的TaskID,整数。
nExcluded[整数] 是否排除pSrcActor自己。0:不排除,即包括自己。1:排除,即不包括自己,共享的语义。默认1。
nDistance[整数] 以pSrcActor为中心的半径,默认3200厘米。
返回
[整数] 添加Buff的结果
返回值
1成功
0失败

◆ CallTaskMonster()

int CallTaskMonster ( FxCreature *  pActor,
unsigned int  dwPathPoint,
unsigned int  dwMonsterId 
)

角色pActor召唤dwMonsterId,按dwPathPoint路径行走。实际上用于捉妖道具。

参数
pActor[角色] 角色对象。
dwPathPoint[整数] 路点ID。
dwMonsterId[整数] 怪物的模板ID。
返回值
[整数]忽略

◆ CommitTask()

bool CommitTask ( FxCreature *  pCreature,
int  uiTaskID,
bool  bForce = false 
)

让角色pCreature的任务uiTaskID提交

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
bForce[布尔] 是否强制,true: 强制提交,不需要检测条件 false: 不强制提交,需要检测条件 默认false
返回
[布尔] 调用是否成功
返回值
true成功
false失败

◆ DisableTaskTimer()

int DisableTaskTimer ( FxCreature *  pActor,
unsigned long  nTaskID 
)

关闭角色pActor已经获取的任务nTaskID的倒计时

参数
pActor[角色] 关闭任务倒计时的角色
nTaskID[整数] 任务ID
返回
[整数] 忽略
注解
真实的逻辑是buff脚本控制的。这个函数系列仅仅用于更新客户端的显示。

◆ EnableTaskTimer()

int EnableTaskTimer ( FxCreature *  pActor,
unsigned long  nTaskID,
unsigned long  nTimer 
)

激活角色pActor已经获取的任务nTaskID的倒计时nTimer

参数
pActor[角色] 进入任务倒计时的角色
nTaskID[整数] 任务ID
nTimer[整数] 倒计时
返回
[整数] 忽略
注解
真实的逻辑是buff脚本控制的。这个函数系列仅仅用于更新客户端的显示。

◆ ExsitTask()

bool ExsitTask ( FxCreature *  pCreature,
int  uiTaskID 
)

检测角色pCreature是否存在任务uiTaskID

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
返回
[布尔] 任务是否存在
返回值
true任务存在
false任务不存在
注解
包括完成但是尚未提交

◆ FailTask()

bool FailTask ( FxCreature *  pCreature,
int  uiTaskID 
)

让角色pCreature的任务uiTaskID失败

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
返回
[布尔] 调用是否成功
返回值
true成功
false失败
注解
包括已经完成并且提交过的任务。如果要只查找是否当前仍然有这个任务,用FindTaskFromActor

◆ FindTaskFromActor()

int FindTaskFromActor ( FxCreature *  pActor,
unsigned long  nTaskID 
)

查询角色pActor身上是否有任务nTaskID。

参数
pActor[角色] 角色对象。
nTaskID[整数] 任务ID。
返回
[整数] 是否找到
返回值
1有这个任务
0没有这个任务
注解
不包括已经完成并提交过的任务。如果要包括已经完成并提交过的任务,用ExsitTask

◆ FixMainTask()

bool FixMainTask ( FxCreature *  pCreature,
unsigned int  uiFixTaskID,
unsigned int  uiRecommendedTaskID 
)

给主线任务断档的角色推荐主线任务, 有主线任务的无效

参数
pCreature[角色] 角色对象
uiFixTaskID[整数] 需要重置的修复任务ID
uiRecommendedTaskID[整数] 推荐的任务ID
返回
[布尔] 调用是否成功
返回值
true成功

◆ GetTaskCheckerProperty()

std::string GetTaskCheckerProperty ( XTaskChecker *  pChecker,
const std::string &  rstrKey 
)

获得Taskchecker里的属性

参数
pCheckerchecker
rstrKey属性名
返回值
参数

◆ GetTaskStateFromActor()

int GetTaskStateFromActor ( FxCreature *  pActor,
unsigned long  nTaskID 
)

查询角色pActor身上任务nTaskID的状态。

参数
pActor[角色] 角色对象。
nTaskID[整数] 任务ID。
返回
[整数] 任务的当前状态
返回值
-1没有这个任务,或者参数非法
0任务处于等待,已接,但是不显示,也不能完成
1任务可见,可接,比如每日任务
2该任务可见可接,且在面板中提示
3该任务已接
4该任务已完成,但还没提交
5该任务已提交
6该任务已放弃
7该任务失败

◆ GetTaskStepFromActor()

int GetTaskStepFromActor ( FxCreature *  pActor,
unsigned long  nTaskID 
)

查询角色pActor身上任务nTaskID的步骤。

参数
pActor[角色] 角色对象。
nTaskID[整数] 任务ID。
返回
[整数] 任务的当前步骤
返回值
-1没有这个任务,或者参数非法
其他任务当前的步骤

◆ HintTask()

bool HintTask ( FxCreature *  pCreature,
int  uiTaskID 
)

让角色pCreature提示任务uiTaskID

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
返回
[布尔] 调用是否成功
返回值
true成功
false失败

◆ ReceiveTask()

bool ReceiveTask ( FxCreature *  pCreature,
int  uiTaskID 
)

让角色pCreature接受任务uiTaskID

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
返回
[布尔] 调用是否成功
返回值
true成功
false失败

◆ RemoveAllMainTask()

bool RemoveAllMainTask ( FxCreature *  pCreature)

删除所有主线任务, 不能再任务脚本里调用

参数
pCreature[角色] 角色对象
返回
[布尔] 调用是否成功
返回值
true成功
注解
不能在任务脚本调用

◆ RemoveTask()

bool RemoveTask ( FxCreature *  pCreature,
int  nTaskID 
)

删除角色pCreature的任务nTaskID。

参数
pCreature[角色] 角色对象
nTaskID[整数] 任务ID
返回
[布尔] 调用是否成功
返回值
true成功
false失败
待办事项:
RemoveTask需求层面流程未定,先不要使用此接口

◆ RemoveTaskCheckerProperty()

void RemoveTaskCheckerProperty ( XTaskChecker *  pChecker,
const std::string &  rstrKey 
)

删除Taskchecker里的属性

参数
pCheckerchecker
rstrKey属性名

◆ ResetTask()

bool ResetTask ( FxCreature *  pCreature,
int  uiTaskID 
)

让角色pCreature的任务uiTaskID重置

参数
pCreature[角色] 角色对象
uiTaskID[整数] 任务ID
返回
[布尔] 调用是否成功
返回值
true成功
false失败

◆ SCTaskUseItemNtf()

int SCTaskUseItemNtf ( FxCreature *  pSrcActor,
int  iTaskID,
int  iTID 
)

角色pSrcActor通知客户端,任务所需的道具模板的ID

参数
pSrcActor[角色] 角色对象。
iTaskID[整数] 任务ID。
iTID[整数] 道具的模板ID。
返回
[整数] 忽略

◆ SetArgvs4TaskChecker()

void SetArgvs4TaskChecker ( XTaskChecker *  pChecker,
long  val 
)

统一的设置Taskchecker参数

参数
pCheckerchecker

◆ SetTaskCheckerProperty()

void SetTaskCheckerProperty ( XTaskChecker *  pChecker,
const std::string &  rstrKey,
const std::string &  rstrVal 
)

设置Taskchecker里的属性

参数
pCheckerchecker
rstrKey属性名
rstrVal属性值