2.0 KiB
2.0 KiB
项目:可交互的虫卵囊
1. 核心目标
创建一个可交互的虫卵囊,它允许一个特定的 Pawn(阿拉克涅女皇种)通过右键菜单与它交互,从一个可配置的列表中选择一个 Pawn,并在经过一段可配置的延迟后,生成这个 Pawn。
2. 已完成的功能
- 创建了新的 VS 项目:
ArachnaeSwarm.csproj - 实现了核心的生成逻辑:
CompProperties_SpawnPawnFromList.cs: 定义了 XML 中可配置的属性,包括:pawnKinds: 可生成的 Pawn 列表。whitelist: 可以与虫卵囊交互的 Pawn 列表。delay: 孵化延迟。spawnCount: 生成数量。destroyOnSpawn: 生成后是否摧毁自身。lordJob: 生成的 Pawn 要执行的集体任务。
CompSpawnPawnFromList.cs: 实现了核心的生成逻辑,包括:- 生成右键菜单。
- 处理孵化倒计时。
- 生成指定数量的 Pawn。
- 在检查面板上显示孵化状态和提示信息。
- 实现了交互的 Job:
ARA_Jobs.xml: 定义了ARA_IncubateJob。JobDriver_Incubate.cs: 实现了让 Pawn 走到虫卵囊旁边并启动孵化过程的逻辑。
- 实现了动态的图形切换:
Building_Incubator.cs: 创建了一个新的建筑基类,它会根据虫卵囊是否正在孵化来动态地改变自身的图形。
- 创建了测试用的 Defs:
ARA_InteractiveEggSac.xml: 定义了一个可交互的虫卵囊,用于在游戏中测试新功能。ArachnaeSwarm_Keys.xml: 定义了相关的本地化key。
3. 当前状态
目前,项目已经基本完成了所有的核心功能,并且能够成功编译。但是,在最后一次构建时,我们遇到了一个编译错误,导致我们无法进行最终的测试。
4. 下一步计划
解决当前的编译错误,并成功构建项目,以便在游戏中进行最终的测试。