1. 除魔任务主要在Script\task\task110.lua和Script\task\util.lua文件中实现,task110.lua主要用于配置除魔任务数据,配置任务回调,util.lua文件为任务的工具类,
主要实现组织任务描述,判断任务条件,任务自动滚动等逻辑功能,任务按角色等级分为了5个阶段,可分别配置化不同阶段的任务条件和任务奖励,
任务分为5个星级,星级越高奖励越高,玩家可通过花费金币刷新星级
2. 除魔任务提供10种任务条件,见配置task_needs,玩家接收任务时随机产生一种任务条件
need_type: 任务类型,mon-杀怪,item-收集,仅支持这两种任务类型
detail: 任务按35,40,45,50级分为了多个阶段,不同阶段可配置不同任务目标,若未配置其它阶段任务目标则默认取第一阶段的任务目标
target: 任务目标
num: 数量
配置示例:
[1] = {
need_type="mon",
detail = {
[1] = {
-- [杀怪列表,支持多个,最多支持3个目标]
{target="蜈蚣", num=10},
{target="跳跳蜂", num=10},
}
},
3. 配置任务奖励, l_task_awards,可分别为每个随机任务配置不同的任务奖励,若未配置其它任务的奖励则默认取任务id为1的任务奖励,每个任务奖励按角色等级分为了5个阶段
name:奖励的 物品名称
id: 奖励的物品id
base:1星任务的奖励数量,不配置base的情况下则每个星级的奖励数量均为num
num: 5星任务的奖励数量,中间星级的奖励数量呈线性递增
配置示例:
local l_task_awards = {
-- [1] 任务id
[1] = {
-- [1] ~ [5] 5个阶段(不同等级)的任务奖励.
--30-35
[1] = {
-- base ~ num 奖励的范围, 1星 = base 5星 = num, 不配置 base 则直接取num
{name="经验", id=410, base = 200000, num=400000},
},
--36-40
[2] = {
{name="经验", id=410, base = 300000, num=600000},
},
--41-45
[3] = {
{name="经验", id=410, base = 500000, num=1000000},
},
--46-50
[4] = {
{name="经验", id=410, base = 600000, num=1500000},
},
--51-
[5] = {
{name="经验", id=410, base = 900000, num=2000000},
},
},
};
|