Commit Graph

74 Commits

Author SHA1 Message Date
SepComet 024ec7be99 接入 Hud 输入提示并完善 InputModule 提示映射 2026-06-12 14:59:16 +08:00
SepComet a2cd3ab7e7 扩充道具系统并统一图标命名规范
- 为 20 个道具赋予中文名称(铁护腕、狂战士药剂等)
- 移除数据表 IconAssetName 列,改为按 `类型_{id}_icon`
  的命名约定自动推导图标路径
- 清理旧图标资源(Almighty_Icon、172 系列)
- 同步更新各数据表 Excel 源文件
2026-06-10 17:26:59 +08:00
SepComet 7a3a2cf17b 引入 Cinemachine 和 CameraModule,添加摄像机跟随缓动效果 2026-06-10 09:55:57 +08:00
SepComet ee69efe965 扩充游戏内容,保持敌人基本行为不变,使用缩放和颜色区分不同敌人 2026-06-10 08:49:16 +08:00
SepComet 5ede6846db 清理项目目录,引入 InputModule 做多平台输入适配 2026-06-06 16:35:39 +08:00
SepComet c8c26b8b2e 迁移 Coin/Exp/Projectile/Effect 实体的生成路径 2026-06-06 15:13:52 +08:00
SepComet 4790bd0091 调整 EnemyManagerComponent 部分逻辑到异步操作 2026-06-06 14:57:08 +08:00
SepComet 41ff2c6df8 迁移 Player/ProcedureGame/ShopUseCase 里的实体方法调用风格
- Player/ShopUseCase:调整了 Weapon 实体的打开方式
- ProcedureGame:调整初始化时的 Hud 和 Player 的初始化写法,流程更清楚
2026-06-06 14:12:05 +08:00
SepComet f896a4a9c8 Update EntityAsyncExtension.cs
为 EntityAsyncExtension 添加了便利的打开各类实体的方法
2026-06-06 13:40:59 +08:00
SepComet 788f717335 调整 UIRouter 的打开关闭 UI 的返回值,统一成 UniTask 2026-06-06 13:33:33 +08:00
SepComet 7ac38cd999 Update AsyncTaskHelper.cs
- WaitEventAsync<T>() 增加可选 CancellationToken
- WaitSuccessOrFailureAsync<TSuccess, TFailure>() 增加可选 CancellationToken
- 保持现有调用兼容:原来的参数顺序和默认行为不变
- 抽出统一完成/清理逻辑:
    - 成功
    - 失败
    - 超时
    - 取消

- 防止重复完成导致重复 Unsubscribe
- 超时任务在事件完成后会被取消,避免后台 delay 继续跑
- 取消时会反订阅事件,适合后续 Procedure 生命周期迁移
2026-06-06 13:20:20 +08:00
SepComet 2a0cbc8f0e 调整 SpriteCache 的读取资源方式
将原来 UGF 事件回调风格的调用改成使用 UniTask 的异步操作
2026-06-04 22:37:55 +08:00
SepComet 117dd123de Merge pull request 'refactor-assembly' (#1) from refactor-assembly into GPU-Instancing
Reviewed-on: #1
2026-06-04 22:25:23 +08:00
SepComet 1bbfd84644 Update Launcher.unity 2026-06-04 17:10:12 +08:00
SepComet edd7088804 规范命名空间
具体来说就是 SepCore 开头,然后接所属的模块名,比如 SepCore.Entity,SepCore.Simulation,SepCore.Procedure
2026-06-03 16:57:40 +08:00
SepComet 5de3fdc795 迁移 EntityData 到 Base 中
- 新增 EntityDataFactory 工厂类,提供创建 EntityData 的统一入口
- 移出 EntityData 及派生类对 GameEntry 的依赖并移入 SepCore.Base 程序集中
2026-06-03 15:12:55 +08:00
SepComet 91f70dd783 添加 SepCore.Runtime 和 SepCore.Base 程序集
- 暂时将 Entity 全部归进 Runtime 程序集里
- 调整部分 UI 的 UseCase/RawData/Context 之间的关系,让 RawData 更接近业务原始数据,Context 更接近 UI 直接可读的数据
- 调整其他程序集的引用关系
2026-06-03 11:15:58 +08:00
SepComet d5893ac52b 清理目录 2026-06-03 10:00:14 +08:00
SepComet 367a3432c0 更新文档 2026-06-03 09:59:40 +08:00
SepComet 7bba8bbb80 继续重构调整(UI)
- 引入 UniTask 和异步版本的 UIModule
- 调整 Runtime/UIBase 和 Presentation 下的脚本命名空间到 SepCore.UI
- 将原来的 5 层 UI 迁移到异步实现
- 规范各层的 UI 脚本命名
2026-06-03 09:58:37 +08:00
SepComet 6b8a6a8789 继续调整,创建 Procedure 与 Presentation 程序集
- 创建 Procedure 与 Presentation 两个程序集
- 初步解决这两个程序集与原程序集的引用关系
2026-06-02 23:26:08 +08:00
SepComet affa44e4d0 调整 Event 和 Editor 命名空间
- 将原来的 CustomEvent 调整到 SepCore.Event
- 将 Editor 文件夹下的统一到 SepCore.Editor,顺带修改了 Editor 程序集
2026-06-02 19:26:21 +08:00
SepComet 34c0784190 第一批重构,主要是物理迁移脚本和部分命名空间的调整
- 结构上迁移文件,将脚本分成 Base/Runtime/Presentation/Procedure/Editor 五大文件夹
- 调整 DataTable 和 Definition 下脚本的命名空间
- 依据 UI-5层架构设计规范 拆分原先的 UI 到 Runtime 和 Presentation 下
2026-06-02 19:12:34 +08:00
SepComet 56f74eee9a Merge branch 'GPU-Instancing' of http://106.12.111.150:4000/basil/vampire-like into GPU-Instancing 2026-05-10 16:33:15 +08:00
SepComet c6f48951d3 Fix UGF resource packaging errors
资源构建失败是因为资源集合中包含了 AssemblyDefinitionAsset,并且 StreamingAssets 文件夹的创建行为间歇性出现。
此更改移除了资源打包输入中的脚本相关条目,并保留了跟踪的 StreamingAssets 支架文件,使得包输出可以重新生成而不会触发元/文件夹不匹配警告。

限制:Unity/UGF 打包不能在 AssetBundles 中包含 AssemblyDefinitionAsset
限制:StreamingAssets 内容应保持被忽略,而文件夹身份仍被追踪
禁止:保留脚本资源并依赖平台标识 | bundle 包包含 Editor-only 对象
可信:高
范围风险:狭窄
可逆性:干净
指令:不要将 .asmdef/.cs 资产添加到 ResourceCollection 中;只有 runtime 资产才能进入 bundle
测试:资源构建器打包运行完成,且没有之前的两个错误
2026-05-10 16:30:36 +08:00
SepComet b79d482453 规范 UI 开发,ui-five-layer-architecture skill 2026-04-09 09:59:50 +08:00
SepComet 0a78c0bd94 引入 claude code 和 初始化 codex 2026-04-08 17:00:24 +08:00
SepComet dce5598c70 make plan 2026-04-02 13:31:57 +08:00
SepComet a94a86b68b
Merge pull request #5 from SepComet/Cleanup
Cleanup
2026-04-02 13:27:35 +08:00
SepComet 6d6fa89fc5 Update NearestTargetSelector.cs 2026-04-02 13:26:27 +08:00
SepComet af1fb7bf9d fix test sample 2026-04-02 12:52:23 +08:00
SepComet ffcd4e6b54 Cleanup 2 2026-04-02 12:36:01 +08:00
SepComet 1052cc0136 Cleanup 1 2026-04-02 11:21:07 +08:00
SepComet 5ed792b09f import openspec 2026-04-02 10:32:33 +08:00
SepComet 057024da58
Merge pull request #4 from SepComet/P2-JobSystem+Burst
P2 job system+burst
2026-04-02 10:29:29 +08:00
SepComet a649d9fad2 update CodeX-TODO.md 2026-04-02 09:35:09 +08:00
SepComet 0a281a5b1f update P2-Job-System-+-Burst-落地.md 2026-04-02 08:32:37 +08:00
SepComet 0d7df18324 优化 WeaponLance 的攻击逻辑 2026-03-20 09:55:52 +08:00
SepComet 8d21d53c4d 添加武器长枪 + bug fix
- WeaponLance:Entity/Goods/Weapon 表,状态机
- Battle -> Shop/LevelUp:隐藏子弹
2026-03-19 17:53:24 +08:00
SepComet f31babdb85 clear 2026-03-17 13:43:59 +08:00
SepComet c5d113b35f 调整 convert.py 转换逻辑 + 规划后续开发 2026-03-17 13:21:49 +08:00
SepComet 59f1d02a18 测试修复安卓打包 2026-03-17 11:28:33 +08:00
SepComet 224db4cd5c 保留 Tick 作为唯一入口,但让 SimulationWorld 只做 orchestration
- Tick 仍然是唯一仿真入口。SimulationWorld 顶层现在只保留全局开关、bridge 服务和生命周期入口,原来散落在类上的大部分跨域状态已经从 SimulationWorld 收口到新的 SimulationWorld.RuntimeModules。
- 新的 runtime modules 把状态按域分成了 SimulationStateStore、JobDataRuntimeState、CollisionPipelineRuntimeState、TargetSelectionRuntimeState,并通过同名代理把现有 partial 的调用面基本保持不变。
- CollisionPipeline 和 target-selection 的配置也一起下沉到了运行时模块。为了避免现有反射型测试立刻失效,保留了 _collisionQueryInputs 和 _areaCollisionRequests 这两个顶层兼容字段。
2026-03-17 10:05:07 +08:00
SepComet 736a2a65bd 拆分 SimulationWorld.JobDataChannel
- 生命周期在 SimulationWorld.JobDataLifecycle
- 数据转换和输入输出缓冲准备在 SimulationWorld.JobDataConversion
- collision transient/runtime stats 在 SimulationWorld.CollisionTransient
- enemy separation temporal state 在 SimulationWorld.EnemySeparationTemporal
- output commit 在 SimulationWorld.JobOutputCommit
- SimulationWorld 的 partial 布局注释也同步到了 SimulationWorld
2026-03-17 09:32:08 +08:00
SepComet 2d822c02e6 拆分 CollisionPipeline
- 请求缓冲在 SimulationWorld.CollisionRequests
- broad-phase / Job 调度在 SimulationWorld.CollisionBroadPhase
- 主线程 resolve 在 SimulationWorld.CollisionResolve
- hit presentation dispatch 和实体/impact 解析在 SimulationWorld.CollisionPresentation
2026-03-17 09:21:11 +08:00
SepComet aa081bcc3c remove open spec skills 2026-03-17 08:58:56 +08:00
SepComet f809af4e15 调整 UI 防御性编程 2026-03-17 08:34:38 +08:00
SepComet 415b92652d Create .gitattributes 2026-03-16 22:24:07 +08:00
SepComet ccbd27e87e Checkpoint 9 2026-03-16 22:19:57 +08:00
SepComet 2e4108aebc add test
1. MaxTargets 上限
2. 战斗中开关不生效
3. AOE 使用“请求时快照”而不是结算时实时状态
2026-02-23 12:17:08 +08:00