|
《传奇引擎脚本开发——检测与执行(第一课)》教案
一、课程基本信息
- 课程名称:传奇引擎脚本开发——检测与执行(第五课)
- 授课对象:已掌握基础脚本语法(变量、条件判断、循环)的传奇引擎开发者(初级)
- 课时:90分钟
- 教学目标:
- 掌握6引擎封装的常用检测指令(如
Equl 、check item 、check wear 等)的语法与参数;
- 理解检测指令在实际脚本中的应用场景(如背包检测、地图检测、人物属性检测);
- 能通过组合检测指令实现基础逻辑(如判断攻击目标类型、检测地图怪物数量);
- 熟悉多级脚本与检测指令的配合使用(如跨玩家检测在线状态)。
二、教学重难点
- 重点:
- 核心检测指令的语法与参数(
Equl 、or 、check item 、check wear 、check map monster count );
- 检测指令的应用场景(背包物品检测、装备佩戴检测、地图怪物数量检测);
- 多级脚本中检测指令的跨玩家使用(如判断玩家在线状态)。
- 难点:
- 检测指令的参数细节(如
check map monster count 的地图ID与坐标范围);
- 组合检测指令的逻辑设计(如
or 多条件判断、not 取反判断);
- 检测指令与执行指令的联动(如检测后修改属性、发送提示)。
三、教学准备
- 软件:传奇引擎编辑器(M2引擎)、VSCode(脚本编写)、游戏客户端(测试用);
- 示例文件:
- 背包物品检测脚本模板(
check item );
- 装备佩戴检测脚本模板(
check wear );
- 地图怪物数量检测脚本模板(
check map monster count );
- 教学PPT:指令语法图解、参数说明、流程示意图。
四、教学过程
1. 导入(10分钟)
- 回顾旧知:提问上节课内容(检测指令的分类与基础语法),确认学生对
Equl 、check 系列指令的初步理解。
- 引入新课:通过实际需求引出本课主题:
- 场景1:刀刀切割技能仅对怪物生效(需检测攻击目标类型);
- 场景2:背包内金币不足时禁止传送(需检测背包金币数量);
- 场景3:副本入口限制(需检测地图内怪物数量是否清空);
- 场景4:跨玩家发放奖励(需检测目标玩家是否在线)。
2. 新授(50分钟)
2.1 基础检测指令:Equl 与多条件判断(or )(10分钟)
2.2 背包与装备检测:check item 与check wear (15分钟)
- 指令语法:
check item(物品名称, 数量, 是否极品); // 检测背包内指定物品数量及是否为极品
check wear(装备位置, 物品名称); // 检测指定装备位置是否佩戴某物品(位置:0武器,1勋章...)
- 参数详解:
check item :第三个参数可选(1 为极品,0 为普通);
check wear :装备位置需对应游戏内定义(如武器=0,衣服=1)。
- 实践演示(学生动手):
- 任务1:编写脚本检测背包内力量戒指数量(≥2个则提示“装备充足”);
- 任务2:编写脚本检测是否佩戴武器(未佩戴则提示“请穿戴武器”);
- 学生操作:通过添加/移除物品、穿戴/卸下装备,验证脚本触发逻辑;
- 总结应用场景:背包系统(限制携带数量)、装备系统(强制佩戴要求)。
2.3 地图与怪物检测:check map monster count (10分钟)
- 指令语法:
check map monster count(地图ID, 怪物名称, 坐标X, 坐标Y, 范围, 操作符, 数量);
- 参数详解:
- 地图ID:游戏内地图的唯一标识(非名称);
- 操作符:
= (等于)、> (大于)、< (小于);
- 范围:以坐标(X,Y)为中心的检测范围(格子数)。
- 实践演示(教师操作):
- 编写脚本:检测当前地图(ID=3)稻草人数量是否>10个,若是则提示“怪物过多,建议清理”;
- 学生观察:手动刷出11个稻草人后,脚本是否触发提示(验证范围与数量判断);
- 扩展应用:副本脚本中检测BOSS是否存活(数量>0则禁止进入下一层);
- 易错点提醒:地图ID需通过
map list 命令查询,避免写错名称。
2.4 多级脚本与跨玩家检测(15分钟)
3. 巩固练习(15分钟)
- 任务1:编写脚本检测当前等级是否≥30级且背包金币≥10万,满足则传送至比奇城(坐标330,330);
- 任务2:检测当前地图(ID=3)范围内(以333,333为中心,范围10格)的怪物数量,若<5个则提示“安全区域,可采集资源”;
- 任务3:玩家A通过
ACP 调用玩家B的脚本,检测玩家B是否佩戴武器(位置0),未佩戴则提示“请穿戴武器”。
4. 总结(5分钟)
- 核心指令回顾:
Equl :基础判断(等于/不等于);
or :多条件组合(满足其一);
check item /check wear :背包与装备检测;
check map monster count :地图怪物数量检测;
ACP :跨玩家检测。
- 易错点强调:
check map monster count 的参数是地图ID而非名称;
or 指令需用逗号分隔条件,not 取反需直接修饰条件;
- 多级脚本需确保被调用玩家在线,否则脚本中断。
五、作业布置
- 基础题:使用
check item 检测背包内金条数量(≥5个则提示“金条充足”);
- 进阶题:编写脚本检测当前地图(ID=3)稻草人数量是否等于0,若是则开启副本入口(调用
open door 指令);
- 拓展题:通过
ACP 实现玩家A检测玩家B的在线状态,并发送不同提示(在线:“好友在线”;不在线:“好友离线”)。
六、教学反思(课后填写)
- 学生对
check map monster count 的地图ID查询是否熟练?是否需要补充map list 命令的使用说明?
- 多级脚本的跨玩家调用逻辑是否清晰?学生能否独立完成脚本调试?
- 检测指令与执行指令的联动(如检测后传送)是否掌握?需加强实战演练。
|
|