找回密码
 立即注册
    查看: 53|回复: 0

    TXT基础课程,检测与执行第15课

    [复制链接]

    64

    主题

    2

    回帖

    302

    积分

    积分
    302
    发表于 2025-7-30 13:27:10 | 显示全部楼层 |阅读模式

    视频课程

    《传奇游戏引擎脚本开发——自定义按钮与高级指令应用》教案


    ​课程名称​​:传奇游戏引擎脚本开发(四)——自定义按钮与高级指令应用

    ​适用对象​​:传奇引擎(如996引擎)脚本开发学习者
    ​课时​​:2课时(90分钟)


    ​一、教学目标​

    1. ​知识目标​​:掌握自定义按钮的添加/删除指令、参数配置;理解自定义命令、自动寻路、字符串处理(比较/分割)指令的功能与语法。
    2. ​能力目标​​:能独立完成“顶部功能按钮”“GM权限按钮”“自动寻路任务”等脚本的编写与调试;能运用字符串指令处理游戏数据。
    3. ​情感目标​​:通过实操任务,提升学生对游戏交互功能的设计能力,培养严谨的代码调试习惯。

    ​二、教学重点与难点​

    • ​重点​​:自定义按钮的添加(主窗口ID、图标路径、坐标调整);自定义命令的配置与触发;自动寻路指令(go to)的应用。
    • ​难点​​:主窗口ID与坐标的对应关系(如右上角/任务栏的坐标偏移);字符串分割与键值对的区分使用;自定义命令的调试与GM功能集成。

    ​三、教学方法​

    • ​讲解法​​:结合引擎指令语法,讲解自定义按钮、自定义命令等核心功能。
    • ​演示法​​:通过可视化编辑器(如控制台+F11)演示按钮添加、坐标调整、脚本绑定等操作。
    • ​任务驱动法​​:布置实操任务(如制作顶部按钮、GM权限检测),引导学生动手实践。

    ​四、教学过程​

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

    通过回顾上节课内容(OK框功能与装备强化),引出本节课主题:“今天我们将学习游戏开发中与玩家交互密切的功能——自定义按钮与高级指令。自定义按钮是UI界面的核心组件,而高级指令(如自动寻路、字符串处理)则是实现复杂功能的关键。”


    ​(二)新授内容(50分钟)​

    ​1. 自定义按钮的添加与删除(20分钟)​
    • ​功能说明​​:自定义按钮是游戏中用于触发特定功能的UI组件,常见于主界面、任务栏、背包等界面。
    • ​关键指令与参数​​:
      • ​添加自定义按钮​​:ADD BUTTON(主窗口ID, 图标ID, 图标路径)
        • 主窗口ID:决定按钮显示位置(如101=主界面左上角,102=主界面右上角,104=主界面右下角,8=小地图界面)。
        • 图标ID:自定义按钮的唯一标识(需全局唯一,避免与其他按钮冲突)。
        • 图标路径:按钮素材路径(需存放在客户端RES\CCUSTUN目录下,命名避免中文)。
      • ​删除自定义按钮​​:DEL BUTTON(按钮编号)
        • 按钮编号:通过ADD BUTTON返回的编号(或通过GETBUTTONNUM获取)。
    • ​实操演示​​:
      • 步骤1:在RES\CCUSTUN目录下添加自定义按钮素材(如“顶部按钮_01”“收缩按钮”),重命名为数字(避免中文)。
      • 步骤2:在脚本中编写添加指令(如ADD BUTTON(101, 100, "顶部按钮_01")),绑定到登录触发(login)。
      • 步骤3:调整坐标(通过F10系统功能类按钮拖动按钮至目标位置),解决坐标偏移问题(如右上角需负数坐标)。

    ​2. 自定义命令与GM功能(15分钟)​
    • ​功能说明​​:自定义命令是游戏管理员(GM)的专用指令,可实现经验赠送、装备回收等功能。
    • ​关键步骤​​:
      1. ​定义自定义命令​​:在引擎“游戏命令”配置中添加命令(如命令一),并绑定脚本。
      2. ​编写触发脚本​​:通过IF 命令一==1 THEN ...检测命令输入,执行对应逻辑(如ADD EXP 100000赠送经验)。
      3. ​GM权限检测​​:结合字符串比较指令(STRCMP),仅允许特定账号(如GM账号)使用(如IF STRCMP(账号, "GM123")==0 THEN 显示按钮)。
    • ​实操示例​​:
      // 登录触发:检测是否为GM账号,显示自定义按钮  
      IF STRCMP(账号, "GM123")==0 THEN  
          ADD BUTTON(101, 200, "GM工具箱")  // 添加GM工具箱按钮  
      ENDIF
      

    ​3. 自动寻路与任务导航(10分钟)​
    • ​功能说明​​:自动寻路指令可实现角色自动移动至指定坐标或NPC,常见于任务引导、传送功能。
    • ​关键指令​​:
      • GO TO X,Y:自动移动至指定坐标(如GO TO 330,330)。
      • GO TO NPC ID:自动移动至指定NPC(如GO TO 100)。
    • ​进阶应用​​:
      • ​小飞鞋功能​​:检测背包是否有“小飞鞋”道具,有则自动传送(IF HAVEITEM(小飞鞋)==1 THEN GO TO 目标坐标),无则正常寻路。
      • ​条件传送​​:结合金币/元宝检测(IF MONEY>=1000 THEN GO TO 目标地图),实现付费传送。

    ​4. 字符串处理指令(5分钟)​
    • ​功能说明​​:用于处理游戏中的文本数据(如账号检测、任务名称分割)。
    • ​关键指令​​:
      • STRCMP(字符串1, 字符串2):比较两个字符串是否相同(返回0表示相同)。
      • SPLIT(字符串, 分隔符, 变量1, 变量2):按分隔符分割字符串,结果存入变量(如SPLIT("刘德华,张学友", ",", S1, S2),S1=“刘德华”,S2=“张学友”)。
    • ​注意事项​​:字符串分割需注意分隔符格式(如空格、逗号),复杂数据建议用键值对(KEYVALUE)处理。

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

    1. ​任务1:制作顶部功能按钮​
      • 要求:在主界面左上角添加“会员服务”“收缩面板”按钮,点击“收缩面板”隐藏按钮并显示“展开面板”按钮。
      • 提示:使用ADD BUTTON添加按钮,DEL BUTTON删除按钮,LINK绑定点击事件。
    2. ​任务2:编写GM权限检测脚本​
      • 要求:仅允许账号“GM_ADMIN”登录时显示“GM工具箱”按钮,点击后赠送10万经验。
      • 提示:结合STRCMP检测账号,ADD EXP赠送经验。
    3. ​任务3:实现自动寻路任务​
      • 要求:角色登录后自动移动至新手村(坐标200,200),并提示“欢迎来到新手村”。
      • 提示:使用GO TO 200,200SENDMESSAGE指令。

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

    • ​总结​​:
      • 自定义按钮是UI交互的核心,需注意主窗口ID与坐标的对应关系。
      • 自定义命令是GM功能的载体,需结合权限检测使用。
      • 自动寻路与字符串处理是实现复杂功能的基础,需熟练掌握指令参数。
    • ​作业​​:
      1. 完善“顶部功能按钮”脚本,添加“设置”“排行榜”按钮并绑定功能。
      2. 编写“自动回收装备”脚本,检测背包中“旧武器”并自动回收(使用TAKEONDELITEM指令)。
      3. 思考:如何结合“字符串分割”与“键值对”优化任务奖励分配逻辑?

    ​五、教学反思​

    (课后补充:需关注学生对主窗口ID与坐标对应关系的掌握情况,针对性辅导坐标调整;部分学生可能混淆SPLITKEYVALUE的使用场景,需通过示例对比讲解;实操环节需加强巡视,及时解决素材命名、路径错误等问题。)

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则