40 lines
3 KiB
Markdown
40 lines
3 KiB
Markdown
|
|
# KEY2-CART-02 : lecture MCP des Blueprints pour K3, K6 et § 8b (fiche)
|
||
|
|
|
||
|
|
Fiche KEY2-CART-02 — Niveau N1 — Modèle prévu sonnet — Agent `lp-mcp` (lecture seule, garde PreToolUse) — Skills : sk-protocol, lp-mcp — Orchestratrice : session « Medium · KEY2 ».
|
||
|
|
SPEC : `KEY2-SPEC-01.md` (révision 5), § 6, § 8b. Copie UE : **oui**, `D:\Game\LifePlay-master 5.8`, éditeur headless par MCP. **Ne pas lancer avant le `BUILD-GO` de Big Boss.**
|
||
|
|
Budget : environ 20 tours. Livrable : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REL\KEY2\KEY2-CART-02.md`.
|
||
|
|
|
||
|
|
## 1. Objet
|
||
|
|
|
||
|
|
Établir, par lecture des graphes et sans rien écrire, ce dont l'IMPL C++ a besoin :
|
||
|
|
1. **Panneau d'action (K3, K6 ; SPEC § 6)** : quel nœud ou quelle fonction ouvre le panneau d'action (`UI/Action`, `UI/SexAction`), depuis quel Blueprint (`PC`, `Person`, `Room`, `TopRight`), et si ce point d'entrée est appelable depuis le C++ : événement personnalisé, fonction publique, variable de visibilité.
|
||
|
|
2. **Panneau d'Alt / clic du milieu (SPEC § 8b, point 3)** : ce panneau (aide de `LPCameraModeSubsystem.cpp:2051-2052`) est-il le panneau d'action, ou un panneau d'aide distinct ?
|
||
|
|
3. **Clic gauche dans `PC` pendant une scène (SPEC § 8b, point 1)** : sous-graphe de `/Game/BPs/PC.PC:EventGraph.K2Node_InputKey_14` (Pressed vers `IfThenElse_106`, Released vers `IfThenElse_107`), et ce que font `LeftMouseInput`, `OpenLeftMouse` et `CheckMouseForUI` quand une scène est active.
|
||
|
|
4. **Déplacement du couple au clavier, « B2p-R » (SPEC § 8b, point 2)** : dans `/Game/BPs/Room`, le code qui lit `LeftRight`, `DownUp` et la molette pour déplacer et monter le couple : repère (caméra, monde, couple), axe Y, variable de position écrite, et point d'entrée appelable depuis le C++.
|
||
|
|
|
||
|
|
## 2. Méthode
|
||
|
|
|
||
|
|
Méthode par lots de `lp-mcp` (OPT0-A2b, KEY1-CART-01 § 12) :
|
||
|
|
- `find_nodes` par classe (`K2Node_InputAxisEvent`, `K2Node_InputAction`, `K2Node_CustomEvent`, `K2Node_CallFunction`) et par titre (`Action`, `Axis`, `Couple`, `Move`, `Panel`) ;
|
||
|
|
- `get_node_infos` par paquets de 20 au plus ;
|
||
|
|
- `get_connected_subgraph` sur les nœuds trouvés.
|
||
|
|
|
||
|
|
Chaque constat cite son refPath et son niveau (établi pour un graphe lu ; à confirmer en jeu pour l'effet).
|
||
|
|
|
||
|
|
## 3. Interdits
|
||
|
|
|
||
|
|
- Aucun appel d'écriture : pas de `create_node`, `connect_pins`, `set_pin_value`, `compile_blueprint` ni `save_assets` ; aucune PIE.
|
||
|
|
- Aucune commande git qui écrit.
|
||
|
|
- Aucune écriture hors du livrable.
|
||
|
|
- Contenu adulte : règle du doc 27. Le livrable nomme les nœuds et les variables techniques, sans libellé ni description de contenu.
|
||
|
|
|
||
|
|
## 4. Contrôles
|
||
|
|
|
||
|
|
- MD5 avant / après de `Content\BPs\PC.uasset`, `Room.uasset`, `GI.uasset`, `Person.uasset` et `Content\UI\TopRight.uasset` (`Tools\FileCheck.ps1`) : égalité exigée.
|
||
|
|
- `UeState` en fin de tour. Éditeur laissé ouvert ou fermé selon la file (ordre d'un tour MCP).
|
||
|
|
- PubCheck à 0 sur le livrable.
|
||
|
|
|
||
|
|
## 5. Compte rendu
|
||
|
|
|
||
|
|
`[KEY2→BOSS] BUILD-FIN KEY2-CART-02 <livrable>`, avec les 7 contrôles de `boss.md` § 4.
|