Skip to content

简介 ​

Lua 为蛋仔游戏开发提供了更高的灵活性和更好的性能。

本教程假设读者已具备 Lua 和蛋码的基础知识。蛋仔支持的 Lua 版本为 5.4。

开发环境设置 ​

必要工具 ​

  1. PC版蛋仔编辑器
  2. VSCode
  3. 蛋仔开发助手 VSCode 插件

安装步骤 ​

  1. 启动 PC 版蛋仔编辑器,打开目标地图。
  2. 在Lua菜单中点击"蛋仔开发助手"(Eggitor)。
  3. 选择生成工程,会自动插件安装至 VSCode。
  4. 如果自动安装未能成功,可在"编辑器安装目录\Documents\res\luac"下找到eggitor.vsix文件进行手动安装。

蛋仔开发助手插件

工程设置 ​

  1. 在 VSCode 中,你会在侧边栏看到蛋仔图标。
  2. 在蛋仔开发助手界面点击"生成工程",选择合适目录。
  3. 点击"连接",将编辑器连接至 VSCode。

VSCode 中的蛋仔插件

更多插件介绍请参考"蛋仔开发助手"一章。

编写第一个 Lua 脚本 ​

  1. 在工程目录下新建 main.lua 文件。
  2. 添加简单的打印语句:
lua
print("Hello, Eggy!")
  1. 在蛋仔编辑器中运行,查看触发器调试窗口的输出。

警告:main.lua中的脚本的执行时机为 场景布置完成之后,真正的游戏开始之前。对于游戏开始后创建或者初始化的功能/对象,无法在此时获取或使用。您可以监听GAME_INIT事件,或者使用定时器来在将来的某个时刻处理这些逻辑(参见《快速入门》一节)。

Lua 代码示例调试窗口输出

使用 API 发送游戏内提示 ​

当然,在触发器日志框里弹提示玩家是看不到的,如何发个飘字提示给玩家呢?这就需要使用蛋仔的API接口了:

lua
GlobalAPI.show_tips("Eggy!!", 3.0) -- 持续 3.0 秒

游戏内提示

API 使用指南 ​

导出 API ​

使用 VSCode 蛋仔开发助手插件的"导出 API"功能生成 EggyAPI.lua 文件,包含所有可用 API、类型和常量。

导出 API

API 分类 ​

  • 全局 API: LuaAPI, GameAPI, GlobalAPI (直接调用)
  • 单位 API: 使用 "单位.方法" 形式调用 (注意使用点号 . 而非冒号 😃
API 类型描述调用方式
LuaAPILua 专用 API直接调用
GameAPI游戏逻辑相关直接调用
GlobalAPI游戏效果表现相关直接调用
单位 API不同类型单位的专用 API单位.方法

注意事项 ​

  • 优先使用已文档化的 API。
  • 避免使用未文档化的测试状态 API,因其可能在未来被移除或替换。

关于API的详细信息参见API指引和API手册两章。

结语 ​

恭喜你已经掌握了蛋仔 Lua 的基础知识。现在,你可以开始开发自己的地图了!祝你开发愉快!