大功能解析说明
任务系统说明
添加任务列表
1、在Mir200\Envir\Task.txt 文本中添加任务列表
文本内容为任务文件名,每个任务一行。 任务文件名后面数值为任务类型,1为支线、2为日常、无数值为主线任务。
新手任务\落霞_清理棍犬
新手任务\落霞_清理刀犬
新手任务\落霞_清理鱼人
支线任务\落霞_收集兔肉 1
支线任务\落霞_收集鹿肉 1
支线任务\落霞_打听挖矿 1
支线任务\落霞_收集木材 1
诏令任务\清理逆魔古刹一层 2
诏令任务\清理逆魔古刹二层 2
诏令任务\清理逆魔古刹三层 2任务步骤配置
1、根据任务名在Mir200\Envir\Task 中创建任务配置文本
例如:任务文件名为:新手任务\落霞_清理刀犬 则需要在Mir200\Envir\Task 中新建文件夹,命名为"新手任务",在"新手任务"文件中创建文本,命名为"落霞_清理刀犬.txt” 落霞_清理刀犬.txt 文本内容如下:
[setup]
stepcount = 2
title = 清理刀犬
ID = 9
stepaim1 = 去<村子外/@@goplace 1 211,356>,消灭刀犬{color=yellow [<$TASKVAL(9).I0>|<$TASKVAL(9).I1>]} <color=green [传]/@@flyto 37058 1 250 250>
stepaim2 = 消灭刀犬向<杂货小贩/@@goto 1 杂货小贩 233,255>回复
stepDESC1 = <color=graygolden 任务目的:>去<村子外/@@goplace 1 211,356>,消灭刀犬,找<杂货小贩/@@goto 1 杂货小贩 233,255>回报\<color=graygolden 任务奖励:>\<color=graygolden 任务奖励:></@@!PIC2 10,951>经验:1000 \<color=graygolden 任务介绍:>\再帮我点忙,村外有大量的刀犬骚扰村民,去清理掉5只。
stepDESC2 = <Task title=清理刀犬><color=graygolden 任务目的:>去<村子外/@@goplace 1 211,356>,消灭刀犬,找<杂货小贩/@@goto 1 杂货小贩 233,255>回报\<color=graygolden 任务奖励:>\<color=graygolden 任务奖励:></@@!PIC2 10,951>经验:1000 \<color=graygolden 任务介绍:>\再帮我点忙,村外有大量的刀犬骚扰村民,去清理掉5只。参数说明:
stepcount //任务步骤数量
title //任务标题
ID 任务ID //每个任务ID不能出现重复(最大支持65535)
stepaimX //任务小界面描述文字,X表示任务步骤
stepDESCX //步骤详细描述,X表示任务步骤任务相关触发
点击任务面板删除任务触发QFunction-0.txt脚本中 [@canceltask] 标签并返回以下参数
$PARAM(0)//任务ID
$PARAM(1)//该任务目前步骤点击任务Mini面板中[传]触发QFunction-0.txt脚本中 [@使用飞行靴] 标签并返回以下参数
$PARAM(0)//返回编号
$PARAM(1)//返回坐标X
$PARAM(2)//返回坐标Y
$PARAM(3)//返回地图ID
注意:为防止外挂发包,触发后结合编号和地图检测匹配后使用mapmove命令传送!任务相关命令
1、增加指定ID任务
ADDTASK 参数1
参数1//
任务ID
[@测试脚本]
#IF
True
#ACT
ADDTASK 1
SENDMSG 5 你接取了新任务
break2、升级任务步骤
UpdateTask 参数1 参数2
参数1//
任务ID
参数2//
步骤
[@测试脚本]
#IF
True
#ACT
UpdateTask 202 2
SENDMSG 5 你的任务步骤升级为2
break3、刷新任务信息
RefreshTask 参数1 参数2
参数1//
任务ID
参数2//
步骤
[@测试脚本]
#IF
True
#ACT
RefreshTask 202 2
SENDMSG 5 你的任务步骤2数据已刷新
break4、结束指定ID任务
EndTask 参数1 参数2
参数1//
任务ID
参数2//
增加已完成任务总数(可忽略)
[@测试脚本]
#IF
True
#ACT
EndTask 5 1
SENDMSG 5 你完成了任务,任务总数+1
break5、检测玩家是否有指定ID任务
HasTask 参数1 参数2 参数3
参数1//
任务ID
参数2//
是否拥有参数1到参数2之间的任务(可忽略)
参数3//
返回玩家拥有任务ID,有多个则返回第1个(可忽略)
[@测试脚本]
#IF
HasTask 100
#ACT
SENDMSG 5 你已经有任务ID为100的任务,快去完成吧!
break
[@测试脚本]
#IF
HasTask 200 215
#ACT
SENDMSG 5 你已经有200-215之间的任务,快去完成吧!
break
[@测试脚本]
#IF
HasTask 200 215 P5
#ACT
SENDMSG 5 你当前拥有任务ID为:<$STR(P5)>
break6、增加任务专属变量
SetTaskValue 参数1 参数2 参数3 参数4
参数1//
任务ID
参数2//
变量名称(I0I9,S0S9)
参数3//
操作符(+、-、=)
参数4//
数值
[@测试脚本]
#IF
True
#ACT
SetTaskValue 34 I0 = 100
SetTaskValue 34 S0 = 任务信息
SENDMSG 7 当前任务变量测试:<$TASKVAL(34).I0> / <$TASKVAL(34).S0>
break7、任务相关变量
$TASK(X) 返回当前任务X的当前步骤
$TASKSTEPCOUNT(X) 返回当前任务x的总步骤数
$TASKCOUNT 返回玩家已完成任务总数