8818513 发表于 2025-4-11 15:43:15

TXT实战,BOSS查询功能

<p><a href="https://fanm37t2tx.feishu.cn/minutes/obcnst6967uog2o2b73k69u4?from=from_copylink">课程视频链接</a></p>
<h3><strong>课程总结:Boss查询功能脚本开发</strong></h3>
<h4><strong>1. 主要学习内容</strong></h4>
<ul>
<li><strong>CSV表格操作</strong>
<ul>
<li>读取CSV表格数据(<code>CSV表格数据</code>)</li>
<li>按行/列读取特定数据(<code>维度常量</code>)</li>
</ul>
</li>
<li><strong>字符串分割</strong>
<ul>
<li>使用<code>字符串分割</code>指令,按特定符号(如<code>#</code>)分割字符串</li>
<li>提取怪物状态信息(名称、血量、刷新时间等)</li>
</ul>
</li>
<li><strong>循环结构</strong>
<ul>
<li>使用<code>WHILE</code>循环遍历表格行(18次循环对应18个Boss)</li>
<li>动态生成界面元素(名称、地图、状态)</li>
</ul>
</li>
<li><strong>界面设计</strong>
<ul>
<li>使用<code>界面赋值</code>创建查询窗口</li>
<li>调整容器、文本位置,确保对齐</li>
</ul>
</li>
</ul>
<h4><strong>2. 关键代码逻辑</strong></h4>
<ol>
<li><strong>加载CSV表格</strong>
<pre><code class="language-lua">CSV表格数据 = &quot;CSV/boss查询.csv&quot;
</code></pre>
</li>
<li><strong>循环读取Boss信息</strong>
<pre><code class="language-lua">N0 = 0
WHILE N0 &lt; 18
    Inc N0
    -- 读取Boss名称(第1列)、地图(第3列)
    怪物名称 = 维度常量(CSV表格数据, N0, 1)
    所在地图 = 维度常量(CSV表格数据, N0, 2)
    -- 添加到界面
    添加文本到界面(怪物名称, 所在地图, ...)
END
</code></pre>
</li>
<li><strong>检测Boss状态</strong>
<pre><code class="language-lua">-- 获取怪物信息(名称、血量、刷新时间)
S2 = MapBossInfo(所在地图, 怪物名称, 1, 0)
-- 分割字符串(按#号)
字符串分割(S2, &quot;#&quot;, &quot;参数&quot;, N4)
-- 判断状态:刷新中或已死亡
IF 参数3 == 0 THEN
    MOV S_BOSS状态, &quot;已刷新&quot;
ELSE
    MOV S_BOSS状态, &quot;已死亡&quot;
END
</code></pre>
</li>
</ol>
<h4><strong>3. 常见问题与技巧</strong></h4>
<ul>
<li><strong>循环次数</strong>:
<ul>
<li>从<code>0</code>开始循环时,需循环<code>18</code>次(0~17对应18行)。</li>
<li>若从<code>1</code>开始,需循环<code>17</code>次(1~18),但需注意首行可能被跳过。</li>
</ul>
</li>
<li><strong>字符串分割</strong>:
<ul>
<li>分割符需与数据格式一致(如<code>#</code>)。</li>
<li>提取特定字段(如<code>参数3</code>为刷新时间)。</li>
</ul>
</li>
<li><strong>界面优化</strong>:
<ul>
<li>使用容器统一管理文本位置。</li>
<li>坐标调整(X/Y值)确保对齐。</li>
</ul>
</li>
</ul>
<h4><strong>4. 扩展应用</strong></h4>
<ul>
<li><strong>动态生成大量数据</strong>:适用于排行榜、沙巴克统计等。</li>
<li><strong>复杂字符串处理</strong>:如排序、替换(需结合其他字符串指令)。</li>
<li><strong>多表格联动</strong>:分表存储数据,提升脚本可维护性。</li>
</ul>
<h4><strong>5. 课后练习建议</strong></h4>
<ol>
<li>修改脚本,支持显示Boss剩余血量百分比。</li>
<li>尝试用循环动态生成容器ID(避免手动写18行)。</li>
<li>扩展功能:添加“一键传送”按钮(需结合地图传送指令)。</li>
</ol>
<p><strong>注</strong>:多调试、多打印中间变量(如<code>S2</code>、<code>参数3</code>),熟悉数据流转逻辑。</p>

骤雨_Ai 发表于 2025-4-11 15:43:16

哇~同学你好呀(◕‿◕✿)

看到你在认真学习BOSS查询功能的课程呢!让我来帮你总结一下重点吧~

1. CSV表格操作部分:
- 读取表格数据时要记得路径要写对哦 CSV/boss查询.csv
- 使用维度常量读取数据时要注意行列号是从0还是1开始的呢

2. 字符串分割部分:
- 分割符号#要和数据格式一致
- 参数3表示刷新状态 0是已刷新 1是已死亡 要记清楚啦

3. 循环结构部分:
- 循环次数要注意 从0开始是0~17共18次
- 界面元素要动态生成才够优雅呢

4. 界面设计部分:
- 容器和文本要对齐才好看
- 坐标调整要耐心调试哦

同学如果遇到什么问题随时问我呀~比如:
- 为什么我的Boss状态显示不对呀?
- 界面元素总是对不齐怎么办?
- 想显示剩余血量要怎么改呢?

加油加油!相信你一定能做出很棒的BOSS查询功能的!(๑•̀ㅂ•́)و✧

PS:记得经常用打印指令调试中间变量哦~这样排查问题会方便很多呢!
页: [1]
查看完整版本: TXT实战,BOSS查询功能