跳到主要内容

参考仓库

除了本手册里的教学示例,tlserver/apps2/ 下还维护着一批真实运行的软件包, 它们都已发布到 Gitee,可以直接打开源码对照学习。

提示

本地路径:tlserver/apps2/<全名>/。想快速对照时,可以直接在编辑器里打开对应目录, 不必先克隆仓库。

仓库一览​

软件包(全名)类型版本依赖仓库
黑猫@基础库函数库v1.0—hm_basic_library
黑猫@基础设置任务v1.0黑猫@基础库 v1.0hm_basic
黑猫@背包设置任务v1.0黑猫@基础库 v1.0hm_beibao
黑猫@打怪挂机任务v1.0黑猫@基础库 v1.0hm_kill_monster
黑猫@装备打造任务v1.0黑猫@基础库 v1.0hm_dazao
黑猫@手工制作任务v1.0黑猫@基础库 v1.0hm_shou_gong
黑猫@珍兽出战任务v1.2黑猫@基础库 v1.0hm_pet_fight
黑猫@扫描元宝商城任务(隐藏)v1.0黑猫@基础库 v1.0hm_scan_yuan_bao_shop
黑猫@自动购买任务v1.1黑猫@基础库 v1.0、黑猫@扫描元宝商城 v1.0hm_pay_shop_item

按需求挑参考​

想学的东西建议参考
函数库 + inject/ 原生注入黑猫@基础库
最小可用的任务 + 表单黑猫@基础设置
一个任务拆分多个子表单黑猫@背包设置
完整的挂机循环(CheckTime / Check / Main)黑猫@打怪挂机
把复杂业务拆成多个 require 模块黑猫@装备打造
数据驱动的逻辑(配方表)黑猫@手工制作
隐藏任务(隐藏: true)黑猫@扫描元宝商城
任务依赖另一个任务(按仓库地址声明)黑猫@自动购买

各仓库看点​

黑猫@基础库 —— 函数库范本​

它是所有任务的公共依赖。根目录下按能力拆出多个可 require 的模块 (player.lua、pet.lua、skill.lua、package.lua、team.lua 等), 并与 inject/ 下的原生脚本一一对应:

黑猫@基础库/
├── .hm.json
├── player.lua # require("黑猫@基础库.player")
├── ...
└── inject/
├── player.lua # 注入到游戏环境
└── ...

想了解「纯 Lua 封装」与「注入脚本」如何分工,看这个仓库最直接。

黑猫@基础设置 —— 最小任务​

一个典型的任务:index.lua 定义运行循环,ui/index.lua + ui/main.lua 提供配置界面。 适合作为自己第一个任务的模板。

黑猫@背包设置 —— 多子表单​

除 ui/main.lua 外,还拆出了 ui/form_select_use_item.lua 与 ui/form_select_drop_item.lua 两个子表单,是组织多个表单页面的参考。

黑猫@打怪挂机 —— 挂机循环​

演示 CheckTime / Check / Main 在真实挂机场景下的写法。

黑猫@装备打造 —— 模块化拆分​

把强化、合成、熔炼、刻铭、镶嵌、打孔等各拆成一个模块 (qiang_hua.lua、he_cheng.lua、rong_lian.lua……), 是复杂任务如何分文件的示例。

黑猫@手工制作 —— 数据驱动​

用 formula.lua 存放配方数据,index.lua 负责按数据驱动执行逻辑, 适合学习「把数据与流程分开」。

黑猫@扫描元宝商城 —— 隐藏任务​

清单里设置了 "隐藏": true,因此它不直接出现在任务列表中, 而是作为 黑猫@自动购买 的依赖被安装和调用。

黑猫@自动购买 —— 任务依赖任务​

清单中同时声明了函数库依赖与任务依赖,后者以仓库地址为键:

apps2/黑猫@自动购买/.hm.json(节选)
{
"name": "自动购买",
"version": "v1.1",
"kind": "task",
"depLibrarys": { "黑猫@基础库": "v1.0" },
"depApps": {
"https://gitee.com/zaijianlixiang1995/hm_scan_yuan_bao_shop": "v1.0"
}
}

:::note 关于历史写法 apps2/ 下这些仓库大多先用中文键(名称 / 类型 / 仓库地址 / 依赖软件包), 个别较老的仓库仍使用英文键(name / kind / repository / depLibrarys / depApps), 或使用 仓库、描述 等别名;也有目录名与清单 名称 不完全一致的情况。

自己写软件包时,请以 软件包清单 .hm.json 里的规范字段为准, 这些差异仅作了解即可。 :::


下一步:回到 发布与安装,把你的软件包分享给其他人。