8818513 发表于 2025-7-22 23:44:48

【蓝胖子】TXT基础课程,检测与执行第8课____变量传递

<h1><a href="https://fanm37t2tx.feishu.cn/minutes/obcnpzvq394i8l884xbs99fy?from=from_copylink">视频课程</a></h1>
<h3>​<strong>​游戏脚本开发课程教案​</strong>​</h3>
<p>​<strong>​主题​</strong>​:游戏脚本实用功能进阶(充值接口、变量传递与NPC/地图操作)<br />
​<strong>​授课对象​</strong>​:游戏脚本开发初学者(需掌握基础指令与变量操作)<br />
​<strong>​课时​</strong>​:90分钟</p>
<hr />
<h3>​<strong>​一、教学目标​</strong>​</h3>
<p>通过本节课学习,学生能够掌握以下核心技能:</p>
<ol>
<li>​<strong>​充值接口调用​</strong>​:使用<code>PULLPAY</code>指令实现游戏内充值功能,理解后台配置与脚本参数的关联。</li>
<li>​<strong>​变量传递与多级脚本​</strong>​:通过输入框、按钮等交互组件实现玩家间数据传递(如等级、金币),掌握多级脚本的逻辑设计。</li>
<li>​<strong>​NPC与地图操作​</strong>​:创建临时NPC、打开指定界面(如仓库)、设置地图自动传送等功能。</li>
<li>​<strong>​实用功能脚本​</strong>​:如屏幕震动、播放音效、范围传送等,提升游戏体验。</li>
</ol>
<hr />
<h3>​<strong>​二、教学重难点​</strong>​</h3>
<ul>
<li>​<strong>​重点​</strong>​:
<ul>
<li>充值接口<code>PULLPAY</code>的参数配置(金额、支付方式、货币ID);</li>
<li>变量传递的核心逻辑(输入框获取玩家名→查询数据→多级脚本传递);</li>
<li>地图自动传送指令<code>TELEPORTMAP</code>与临时NPC创建指令的应用。</li>
</ul>
</li>
<li>​<strong>​难点​</strong>​:
<ul>
<li>多级脚本中变量的全局/临时存储与传递(避免数据丢失);</li>
<li>充值礼包脚本的编写(区分后台自动发放与脚本额外奖励);</li>
<li>临时NPC的创建与删除(避免NPC重复或残留)。</li>
</ul>
</li>
</ul>
<hr />
<h3>​<strong>​三、教学准备​</strong>​</h3>
<ol>
<li>开发环境:游戏引擎(如M2引擎)、脚本编辑器、测试账号(含不同装备与货币)。</li>
<li>示例脚本:充值接口脚本、变量传递脚本、临时NPC创建脚本、地图自动传送脚本(提前标注关键参数)。</li>
<li>问题清单:整理学生可能遇到的常见问题(如充值无响应、变量传递失败、NPC未创建),用于课堂答疑。</li>
</ol>
<hr />
<h3>​<strong>​四、教学过程​</strong>​</h3>
<h4>​<strong>​(一)课程导入(10分钟)​</strong>​</h4>
<p>通过实际游戏场景提问,引出本节课主题:</p>
<ul>
<li>“玩家在游戏内点击‘充值’按钮后,如何触发支付界面?充值完成后,如何自动发放元宝?如果充值的是礼包(含额外道具),脚本需要做哪些调整?”</li>
<li>总结:充值功能是游戏核心付费流程,需结合后台配置与脚本逻辑实现;变量传递与NPC操作则是提升游戏交互的关键,本节课将围绕这些功能展开。</li>
</ul>
<h4>​<strong>​(二)知识点讲解(40分钟)​</strong>​</h4>
<h5>​<strong>​模块1:充值接口调用(PULLPAY指令)(10分钟)​</strong>​</h5>
<p>​<strong>​目标​</strong>​:掌握<code>PULLPAY</code>指令的参数配置与充值逻辑。<br />
​<strong>​关键内容​</strong>​:</p>
<ul>
<li>​<strong>​指令格式​</strong>​:<code>PULLPAY(金额, 支付方式, 货币ID, 苹果档位)</code>(苹果档位仅iOS服使用)。</li>
<li>​<strong>​参数说明​</strong>​:
<ul>
<li>金额:充值数值(如10元);</li>
<li>支付方式:1=支付宝,2=微信,3=花呗;</li>
<li>货币ID:后台配置的主货币ID(如元宝ID=2,需与后台一致);</li>
<li>苹果档位:仅iOS服需填写(如“10元档”对应档位ID)。</li>
</ul>
</li>
<li>​<strong>​注意事项​</strong>​:
<ul>
<li>后台需提前配置充值比例(如1:100,即1元=100元宝);</li>
<li>若充值礼包含额外道具,需在充值触发脚本中单独编写“礼包奖励”逻辑(避免重复发放基础货币)。</li>
</ul>
</li>
</ul>
<h5>​<strong>​模块2:变量传递与多级脚本(10分钟)​</strong>​</h5>
<p>​<strong>​目标​</strong>​:通过输入框、按钮实现玩家间数据传递(如等级、金币)。<br />
​<strong>​关键逻辑​</strong>​:</p>
<ol>
<li>​<strong>​输入框获取数据​</strong>​:使用<code>INPUT</code>指令创建输入框,关联按钮参数(如<code>input ID=1</code>);</li>
<li>​<strong>​查询玩家数据​</strong>​:通过<code>GETPLAYERLEVEL(玩家名)</code>或<code>GETMONEY(玩家名)</code>获取目标玩家属性;</li>
<li>​<strong>​多级脚本传递​</strong>​:使用<code>PASSVAR(变量名, 目标玩家名)</code>将数据传递给对方,或通过全局变量(如<code>G100</code>)存储后读取。<br />
​<strong>​示例脚本​</strong>​:</li>
</ol>
<pre><code>-- 输入对方名字并获取等级
INPUT(1, &quot;请输入玩家名字&quot;)-- 创建输入框(ID=1)
LINK &quot;获取等级&quot;            -- 点击按钮触发
GETPLAYERLEVEL(S3, S4)       -- S3=输入的名字,S4=返回的等级
PASSVAR(&quot;等级&quot;, S4)          -- 将等级传递给目标玩家
</code></pre>
<h5>​<strong>​模块3:NPC与地图操作(10分钟)​</strong>​</h5>
<p>​<strong>​目标​</strong>​:掌握临时NPC创建、地图自动传送等功能。<br />
​<strong>​关键指令​</strong>​:</p>
<ul>
<li>​<strong>​创建临时NPC​</strong>​:<code>CREATETEMPNPC(地图ID, X, Y, NPC名称, 外观ID, 脚本文件)</code>(用于活动限时NPC,如幽灵船传送门);</li>
<li>​<strong>​删除NPC​</strong>​:<code>DELETETEMPNPC(NPC名称)</code>;</li>
<li>​<strong>​地图自动传送​</strong>​:<code>TELEPORTMAP(当前地图, 目标地图, X, Y, 延迟时间)</code>(如副本结束后自动传送回主城);</li>
<li>​<strong>​打开仓库​</strong>​:<code>OPENWAREHOUSE()</code>(直接调用仓库面板)。</li>
</ul>
<h5>​<strong>​模块4:实用功能脚本(10分钟)​</strong>​</h5>
<p>​<strong>​目标​</strong>​:实现屏幕震动、播放音效等提升体验的功能。<br />
​<strong>​关键指令​</strong>​:</p>
<ul>
<li>​<strong>​屏幕震动​</strong>​:<code>SHAKE(强度, 时间)</code>(如<code>SHAKE(5, 1000)</code>表示强度5,持续1秒);</li>
<li>​<strong>​播放音效​</strong>​:<code>PLAYSOUND(音效路径, 模式)</code>(模式:0=仅自己,1=全服,2=同地图);</li>
<li>​<strong>​范围传送​</strong>​:<code>TELEPORTRANGE(当前地图, 目标地图, 范围)</code>(如<code>TELEPORTRANGE(100, 3, 5)</code>表示100号地图内5格范围内玩家传送到3号地图)。</li>
</ul>
<h4>​<strong>​(三)实践操作(25分钟)​</strong>​</h4>
<p>学生分组完成以下任务(教师巡回指导):</p>
<ol>
<li>编写“10元微信充值”脚本(参数:金额=10,支付方式=2,货币ID=2);</li>
<li>实现“输入对方名字获取等级并传递”脚本(需测试跨玩家数据传递);</li>
<li>创建临时NPC(如“活动使者”,在主城坐标(100,100)生成,外观ID=500);</li>
<li>编写“副本结束后5秒自动传回主城”脚本(使用<code>TELEPORTMAP</code>+延迟触发)。</li>
</ol>
<h4>​<strong>​(四)总结与答疑(15分钟)​</strong>​</h4>
<ol>
<li>​<strong>​知识回顾​</strong>​:
<ul>
<li>充值接口:<code>PULLPAY</code>参数与后台配置的关联;</li>
<li>变量传递:输入框→查询→多级脚本的核心流程;</li>
<li>NPC/地图:临时NPC创建与删除、自动传送指令的应用。</li>
</ul>
</li>
<li>​<strong>​易错点强调​</strong>​:
<ul>
<li>充值时货币ID需与后台一致,否则无法到账;</li>
<li>多级脚本传递变量时,需确认目标玩家在线且变量名唯一;</li>
<li>临时NPC需设置唯一名称,避免与现有NPC冲突。</li>
</ul>
</li>
<li>​<strong>​答疑环节​</strong>​:解答学生实践中的问题(如充值无响应、变量传递失败、NPC未生成等)。</li>
</ol>
<hr />
<h3>​<strong>​五、课后作业​</strong>​</h3>
<ol>
<li>完善“充值礼包脚本”:若充值100元送20%额外元宝(后台比例1:100),编写脚本实现(提示:通过<code>MONEY</code>变量计算额外奖励并发放);</li>
<li>实现“跨玩家金币传递”:输入对方名字,将自己的金币数量(如1000)传递给对方(需测试成功);</li>
<li>创建“活动NPC”:在主城生成一个“限时商人”,外观ID=600,30分钟后自动删除(使用<code>CREATETEMPNPC</code>+<code>SLEEP</code>+<code>DELETETEMPNPC</code>)。</li>
</ol>
<hr />
<p>​<strong>​教学反思​</strong>​:通过实践操作强化学生对“充值-传递-交互”逻辑链的理解,重点关注参数配置与变量存储问题,后续可增加综合案例(如“充值礼包+变量传递+临时NPC”)提升综合应用能力。</p>
页: [1]
查看完整版本: 【蓝胖子】TXT基础课程,检测与执行第8课____变量传递