给玩家添加一个已接任务
91M2说明书 > 引擎脚本功能 > 脚本示例 > 任务系统 >

export function Accept(NpcTNormNpcPlayerTPlayObjectArgsTArgs) {
    switch (Args.Str[0]) {
        case 'R0001':
            //方法1
            if (Player.Level >= 3) {
                // 0{ 任务分类 }, 'R0001'{ 任务唯一ID }, 0{ 关联NPC }
                Player.Missions.Add1(0'R0001'0)
            } else {
                Player.MessageBox('等级太低,等你达到3级了再来接这个任务吧!!!');
            }
            break;
        case 'R0003':
            //方法2
            if (Player.Level >= 10) {
                Player.Missions.Add2(2,//{ 任务分类 }
                    'R0003',//{ 任务唯一ID }
                    0,//{ 任务需求类型 0击杀指定名称的怪 1击杀等级不低于指定值的怪 2需要指定数量的物品 3脚本指定 }
                    '小试牛刀10级'//{ 主题 }
                    '小伙子,如果你帮我{S=杀5只鸡;C=249},我将给\\你丰厚的报酬!!!\\\\\\\\\\\\{S=进度:;C=243}#P#/#M#只\\<'
                    + '& 提交 /@Submit(#RecordID#) > <& 取消/@Cancel(#RecordID#)>\\\\\\\\{S=金币:;C=243} 100000\\{S=装备:;C=243} 屠龙',//{ 任务描述 }
                    '金币x100000;屠龙x1',//{ 任务奖励描述 }
                    '鹿'//{ 任务需求为杀怪或需要物品时, 为怪名或物品名 }
                    5//{ 需求数量 }
                    0//{ 需求辅助, 击杀指定等级怪时此为等级值, 如果为需求肉制品或者矿石时此为品质 }
                    0//{ 限时时间, 单位秒 }
                    0,//{ 关联NPC }
                    false)//{ 是否自动提交 }
            } else {
                Player.MessageBox('等级太低,等你达到10级了再来接这个任务吧!!!');
            }
            break;

    }
}
//方法1通过任务中心定义的任务直接添加到任务列表,明显简单很多
//方法2比较复杂,但是可以做出同任务ID不同需求和奖励的任务
//方法2中任务描述可以使用4个字段: 当前任务的系列ID#RecordID#、当前任务的唯一ID#MissionID#、当前任务的进度#P#和当前任务的总量#M#
//注意任务的系列ID是全局唯一,而任务ID则大家都看拥有

引擎官网:www.91M2.com   交流群:5555999   此引擎仅供测试,切勿用于商业用途。如有侵权请立即联系我们,我们将在第一时间删除。