fix(collection): 修复收集系统技术方案Mermaid图表语法
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
---
|
||||
name: gitea-token-permission
|
||||
description: reviewer token 权限限制——仅可评论,标签操作需用 PM token
|
||||
metadata:
|
||||
type: feedback
|
||||
---
|
||||
|
||||
reviewer token 为空字符串,无法执行任何 API 操作(评论、标签均不可)。PM token 可执行全部操作。
|
||||
|
||||
**Why:** gitea-config.json 中 reviewer 角色未配置 token(token 字段为空字符串)。
|
||||
|
||||
**How to apply:** 所有 Gitea API 操作(评论、标签更新)均使用 PM 角色执行:`node .claude/skills/gitea-collab/gitea.js --role pm issue comment/labels <number>`。评论内容仍以"审查 Agent (ai-reviewer)"署名。
|
||||
@@ -180,9 +180,7 @@ classDiagram
|
||||
+BeginPlay() void
|
||||
+Tick(float DeltaTime) void
|
||||
+static Get(UWorld*) ASystemDriver*
|
||||
Note: AInfo全局唯一
|
||||
Note: BeginPlay中回调连线
|
||||
Note: EffectManager AddToBackpack → CollectionManager
|
||||
<<AInfo全局唯一, BeginPlay回调连线>>
|
||||
}
|
||||
|
||||
class FCollectionManager {
|
||||
@@ -197,8 +195,7 @@ classDiagram
|
||||
+RestoreFromPersistence(UPersistenceSubsystem*) void
|
||||
-ProcessNewCollection(FName) void
|
||||
-RefreshCachedInfo(FString DisplayName) void
|
||||
Note: 普通C++类,非UObject
|
||||
Note: 纯事件驱动,无Tick
|
||||
<<普通C++类, 纯事件驱动, 无Tick>>
|
||||
}
|
||||
|
||||
class UPersistenceSubsystem {
|
||||
@@ -228,7 +225,7 @@ classDiagram
|
||||
-ShowNotification(FString) void
|
||||
-UpdateProgress(int32, int32) void
|
||||
-TriggerCompletionSequence() void
|
||||
Note: 只读Manager缓存,不碰Component/Subsystem
|
||||
<<只读Manager缓存, 不碰Component/Subsystem>>
|
||||
}
|
||||
|
||||
class UCollectionNotifWidget {
|
||||
@@ -342,7 +339,7 @@ sequenceDiagram
|
||||
Driver->>CM: OnItemObtained(ItemId, DisplayName, Category)
|
||||
|
||||
Note over CM: 步骤 1: 查品类
|
||||
CM->>CM: Category == Config.TrackedCategory("杂物")?
|
||||
CM->>CM: Category == Config.TrackedCategory(杂物)?
|
||||
|
||||
Note over CM: 步骤 2: 查重复
|
||||
CM->>CM: CollectedIDs.Contains(ItemId)?
|
||||
@@ -355,7 +352,7 @@ sequenceDiagram
|
||||
|
||||
Note over CM: 步骤 4: 更新缓存(供HUD读取)
|
||||
CM->>CM: RefreshCachedInfo(DisplayName)
|
||||
Note right of CM: CachedInfo.Progress = 新值<br/>CachedInfo.bJustCompleted = false<br/>CachedInfo.PendingNotificationText = "发现了新的杂物,进度 X/Y"
|
||||
Note right of CM: CachedInfo.Progress = 新值<br/>CachedInfo.bJustCompleted = false<br/>CachedInfo.PendingNotificationText = 发现了新的杂物, 进度 X/Y
|
||||
|
||||
Note over CM: 步骤 5: 完成判定
|
||||
CM->>CM: Progress >= Config.TotalCount?
|
||||
@@ -367,7 +364,7 @@ sequenceDiagram
|
||||
|
||||
Note over EFM,ProgressUI: === Phase 1: HUD Tick 检测缓存变化 ===
|
||||
HUD->>CM: Tick: GetCachedInfo().Progress != LastSeenProgress?
|
||||
HUD->>HUD: 检测到变化 → UpdateProgress()
|
||||
HUD->>HUD: 检测到变化, 调用 UpdateProgress()
|
||||
HUD->>ProgressUI: UpdateProgress(Progress, TotalCount)
|
||||
ProgressUI->>ProgressUI: PlayBounceAnimation (1.2x, 0.2s)
|
||||
|
||||
@@ -394,7 +391,7 @@ sequenceDiagram
|
||||
alt 全部完成
|
||||
Note over HUD: 等待通知消失 + CompletePromptDelay
|
||||
HUD->>HUD: ShowCompletionPrompt()
|
||||
Note over HUD: 屏幕中央弹出 "杂物全部收集完成!"
|
||||
Note over HUD: 屏幕中央弹出: 杂物全部收集完成!
|
||||
end
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user