| 概述: 
 1. 主线任务主要在Script\task\task100.lua和Script\task\util.lua文件中实现,task100.lua主要用于配置主线任务数据,配置任务回调,util.lua文件为任务的工具类,
 
 主要实现组织任务描述,判断任务条件,任务自动滚动等逻辑功能
 
 2. 主线任务数据在task100.lua中的 task_data配置
 
 ttype: 任务类型,1-主线任务,客户端任务前显示前缀 [主] ,3-日常任务,客户端任务前显示前缀 [日]
 
 focus: 目前没有意义,保留字段
 
 autogo: 子任务是否自动滚动,主线任务为自动滚动
 
 direct_accept: 目前只能为false
 
 3. 子任务配置项
 
 tid: 当前子任务id
 
 nid: 下个子任务id
 
 need_level: 完成该任务需要的人物等级
 
 name: 任务名称
 
 chapter: 任务章节,保留字段,目前无意义
 
 accepter: 接收任务的npc名称
 
 doner: 提交任务的npc名称
 
 accepterPlace: 接收任务的地图名称
 
 donerPlace: 提交任务的地图名称
 
 dialogue1: 未接任务时,短描述追加的内容
 
 dialogue2: 已接状态,短描述追加的内容
 
 dialogue3: 完成状态,短描述追加的内容
 
 need_type: 任务类型,item-收集物品,mon-杀怪,friend-添加好友
 
 needs: 任务目标,支持多个
 target: 目标名称
 num:   目标数量
 
 award: 奖励
 name: 奖励物品名称
 num: 奖励物品数量
 id: 奖励物品的id
 isWear: 获得的奖励装备时是否自动穿戴上
 
 talk: 接收任务时npc对话内容
 
 accept_talk: 已接收任务的任务描述
 
 done_talk: 提交任务时npc对话内容
 
 accepted_hook: 成功接收任务时脚本回调
 
 done_hook: 任务完成时的脚本回调,可以在此收取玩家身上的任务道具等
 
 示例如下:
 
 [2]={
 tid=2,        nid=3,        need_level=1,        name="饥饿的村民",    chapter="1",    accepter="周家屠夫",    doner="周家屠夫",
 accepterPlace="新手村",        donerPlace="新手村",
 dialogue1=",他有要事相求",    dialogue2="",    dialogue3="",
 need_type="mon",
 needs = {
 {target="鹿",    num=5},
 {target="鸡",    num=5},
 },
 award={
 {name="金币(绑定)",        num=200,    id=895,        isWear=0},
 {name="经验",            num=700,    id=410,        isWear=0},
 {name="金创药中量(赠)",    num=2,        use=true,    id=10,        isWear=0,    bind=1},
 {name="史诗贡献点",        num=10,        use=true,    id=2500,    isWear=0},
 },
 talk = "村口有不少动物,杀掉一些鹿,屠夫会把鹿肉分发给饥饿的百姓。",
 accept_talk=function (npc,player,td) return "周家屠夫:怪物在村外聚集多日,村民们都快断粮了。饥饿让大伙儿越来越恐慌,你能否帮助我们找一些食物回来?</br>";end;
 done_talk =function (npc,player,td) return "周家屠夫:希望我们能渡过难关。谢谢你,这点心意请一定收下!</br>";end;
 
 |