【蓝胖子】TXT基础课程,检测与执行第11课____定时器

发表于:2025-7-24 17:02:50 133

视频课程

游戏脚本开发——定时器与常用指令应用

​课程名称​​:游戏脚本开发基础——定时器与常用指令实战
​适用对象​​:游戏开发初学者(熟悉基础脚本语法)
​课时​​:90分钟

​一、教学目标​

  1. ​知识目标​​:掌握个人定时器与全局定时器的定义、参数及使用场景;熟悉绑定规则、物品/人物操作指令、喊话功能的分类与语法。
  2. ​能力目标​​:能独立编写定时器脚本(开启/关闭、设置间隔与次数);能运用常用指令实现物品绑定、属性修改、喊话等功能。
  3. ​情感目标​​:培养规范编写脚本的习惯(如定时器关闭逻辑),提升游戏功能实现的逻辑思维能力。

​二、教学重点与难点​

  • ​重点​​:个人定时器与全局定时器的参数差异及使用场景;定时器脚本的放置位置(QM文件);绑定规则对物品显示的影响。
  • ​难点​​:全局定时器与个人定时器的调用对象区别(服务器vs个人);多参数指令(如给物品、获取属性)的语法结构;喊话功能的类型与显示逻辑。

​三、教学准备​

  1. 开发环境:游戏引擎(如M2引擎)、脚本编辑器(QF/QM文件)。
  2. 示例代码:定时器开启/关闭脚本、全局变量修改脚本、绑定规则表配置、喊话指令示例。
  3. 辅助工具:帮助文档(定时器参数说明、指令列表)、测试角色(用于演示背包、属性等功能)。

​四、教学过程​

​(一)课程导入(10分钟)​

  1. ​问题引入​​:
    “在游戏开发中,如何实现‘每秒钟自动增加经验’‘活动倒计时结束后关闭地图’等功能?”
    引导学生思考“定时触发”的需求,引出本节课核心内容——​​定时器​​。
  2. ​回顾旧知​​:
    简要回顾上节课内容(基础脚本结构、变量与常量),强调“脚本需根据需求调用特定指令”。

​(二)新授知识(50分钟)​

​1. 定时器的使用(核心内容)​

​(1)定时器分类​

  • ​个人定时器​​:面向单个玩家,用于角色专属逻辑(如经验累积、状态持续)。
  • ​全局定时器​​:面向服务器,用于全局事件(如活动倒计时、全服状态同步)。

​(2)个人定时器详解​

  • ​参数​​(4个):
    • 索引(0-255):唯一标识,避免重复;
    • 间隔(必填):执行频率(单位:秒);
    • 次数(可选,默认0=无限循环);
    • 跨服(可选,默认0=不跨服)。
  • ​脚本位置​​:需写入QM文件(若引擎未开启“QM/QF合并”,不可写QF)。
  • ​操作流程​​:
    • 开启:在触发脚本(如跑步触发)中使用开启定时器(索引, 间隔, 次数, 跨服)
    • 关闭:任意位置使用关闭定时器(索引)
    • 执行逻辑:写入QM文件的对应定时器脚本(修改索引编号)。

​示例​​:每秒钟增加玩家变量N0(经验):

-- 开启定时器(索引2,间隔1秒,无限循环)
开启定时器(2, 1, 0, 0)
-- QM文件中编写执行逻辑
仅act:
    N0 = N0 + 1
    信息框("当前经验:"..N0)

​(3)全局定时器详解​

  • ​参数​​(2个):索引(0-4)、间隔(必填);
  • ​限制​​:仅能修改全局变量(如G100),无法直接修改个人变量(需通过开始提问指令调用玩家脚本);
  • ​脚本位置​​:需写入PM文件(引擎特殊要求)。

​示例​​:每秒钟增加全局变量G100(全服活动进度):

-- 开启全局定时器(索引0,间隔1秒)
开启全局定时器(0, 1)
-- PM文件中编写执行逻辑(需调用玩家脚本修改个人变量)
开始提问:
    MOV G100, G100 + 1  -- 全局变量自增
    AT "玩家变量更新"   -- 触发玩家脚本修改N0
​2. 绑定规则与物品操作(扩展内容)​

​(1)绑定规则​

  • ​作用​​:控制物品的交易、摆摊、丢弃等行为(如“绑定物品禁止交易”);
  • ​参数​​(10个):物品名、数量、绑定类型(0=正常,1=禁止交易/摆摊/存仓库等);
  • ​显示逻辑​​:需在“订单表设置”中配置绑定规则对应的图标(如锁标志)。

​示例​​:创建禁止交易的木剑:

-- 绑定规则参数:物品名=木剑,数量=1,禁止交易(类型1)
获得物品(木剑, 1, 0, 0, 0, 0, 1, 0, 0, 0)

​(2)物品操作指令​

  • ​给物品​​:给物品(物品名, 数量, 极品属性)(极品属性需按位置赋值,如防御=0,攻击=3);
  • ​获取背包物品数量​​:获取背包物品数量(物品名)(返回当前背包中该物品的数量);
  • ​获取物品原始属性​​:获取物品原始各项属性(物品名, 字段ID, 变量)(如获取“暴击几率”需对应表中字段)。
​3. 人物与喊话功能(实用技巧)​

​(1)人物操作​

  • ​改性别​​:更改性别(0/1)(0=男,1=女,需先判断当前性别);
  • ​改颜色​​:更改人物颜色(颜色代码)(如255=白色,需结合常量使用);
  • ​改发型/武器绑定​​:更改发型(发型ID)设置装备绑定(装备位置, 绑定类型)(位置-1=OK框物品)。

​(2)喊话功能​

  • ​类型​​:全服广播(0-3)、NPC头顶发言(4)、个人私聊(5-9)、滚屏/弹窗(100+);
  • ​语法​​:喊话(类型, 内容, 颜色, 显示位置)(如喊话(0, "活动开始!", 255, "红色广播"))。
​4. 脚本控制与刷怪(实战演练)​
  • ​脚本控制怪物​​:脚本控制怪物(地图ID, 坐标, 怪物名, 数量, 范围)(怪物会自动向指定坐标移动并攻击玩家);
  • ​刷怪指令​​:刷怪(地图ID, x, y, 怪物名, 范围, 数量, 名字颜色)(可自定义怪物名称,如将“白野猪”改为“白猪”)。

​(三)课堂练习(20分钟)​

  1. ​基础任务​​:编写一个“每5秒增加玩家N0变量”的个人定时器脚本(需包含开启、关闭逻辑)。
  2. ​进阶任务​​:创建一个“禁止摆摊的木剑”(绑定规则参数:禁止摆摊=1),并测试其效果。
  3. ​实战任务​​:使用喊话功能实现“全服红色广播‘活动即将开始’”和“个人私聊‘你获得了100金币’”。

​(四)总结与作业(10分钟)​

  1. ​重点总结​​:
    • 定时器的核心参数(索引、间隔、次数)及放置位置(QM/PM);
    • 全局定时器只能修改全局变量,需结合开始提问调用玩家脚本;
    • 绑定规则影响物品行为,需配置表中图标显示;
    • 喊话功能按类型区分显示范围(全服/个人/头顶)。
  2. ​课后作业​​:
    • 完善课堂练习中的定时器脚本(添加关闭逻辑);
    • 尝试用全局定时器实现“全服变量G100每10秒加1,并同步到玩家变量N0”;
    • 查阅帮助文档,总结“给物品”指令的其他参数(如极品属性)用法。

​五、教学反思​

(课后填写:学生是否掌握定时器核心参数?喊话功能类型是否易混淆?是否需要补充更多实例演示?)

收藏
送赞
分享

发表回复