2.3 KiB
2.3 KiB
SB1-IMPL — Registre, interface, enveloppes (SB1-T2)
- Fiche : SB1-T2 — Agent : A-IMPL-H — Modèle : prévu opus (M3) | utilisé opus (session principale)
- Dépôt : addon, branche
lot/SB1-registre(tag d'entréelot-SB1-avant=12d6198) - Instantané :
LifePlay_Backup_5.5\SB1-addon(LPSandbox.cpp,LPSandbox.Build.cs,LPPairSandbox.h/.cpp,LPPairSandboxMenu.h)
Fichiers
| Fichier | Nature |
|---|---|
LPSandboxMod.h |
nouveau : types (§ 2 de la SPEC) |
LPSandboxModRegistry.h/.cpp |
nouveau : registre (§ 3-4), journal LogLPSandboxMods |
LPSandboxModWrappers.h/.cpp |
nouveau : enveloppes lps_couple (Pair), lps_interaction (Interaction), lps_asset_integration (Mesure) |
LPSandboxSidebar.h |
nouveau : déclaration du widget (implémentation : SB1-T3) |
LPSandbox.cpp |
StartupModule : RegisterAll() puis Scan() |
LPSandbox.Build.cs |
Projects en dépendance privée |
LPPairSandbox.h/.cpp |
OpenModeLabel, OpenNeutral, OpenInitialMod, MakeModContext ; barre latérale à la place de la liste des modes ; reste du panneau dans BodyRow (repliable) ; EndPlay → Registry.EndSession() |
LPPairSandboxMenu.h |
BodyRow |
Écarts à la SPEC (décisions de l'implémenteur)
EndSession()ajouté au registre : à la fin de partie, le mod ouvert est oublié sans appel (la scène est détruite) ; évite un pointeur de personnage pendant entre deux sessions.- Scène neutre :
CloseOpendu registre appellePlayer->OpenNeutral()(Pair sans liste de clips) ;OpenModeLabelremet la liste de clips visible au retour sur Pair (SelectModene fait rien si le mode est déjà Pair). Saved/sandbox_mode.txt: le fichier est remis àPairaprès lecture (comportement existant) ;Pairest désormais traité comme « pas de déclencheur », sinon il masquerait à chaque lancement le mod ouvert mémorisé. Avant SB1, un fichierPairmasquait aussi[Sandbox.Mode]; après,[Sandbox.Mode]n'est consulté que s'il n'y a ni déclencheur ni mod mémorisé.- Doublons : contrôlés par source (sandbox / jeu) ; un module du jeu peut porter le même identifiant qu'un module de la sandbox sans refus.
- Le registre cherche un prérequis dans la sandbox puis dans le jeu (un module du jeu présent satisfait un prérequis).