# DC2-IMPL — Commandlets de mods dans le module LPModTools de l'addon - **Fiche** : DC2-T1 (A-IMPL-H) — **Modèle** : M3 opus | opus (session principale) — **Dépend de** : DC0-SPEC § 2 et § 3 - **Instantanés** : `D:\Game\LifePlay_Backup_5.5\DC2` (14 fichiers du jeu) et `DC2-addon` (13 fichiers + `LPModTools` absent). Retour arrière proposé : `.\Tools\Restore.ps1 -Lot DC2` et `.\Tools\Restore.ps1 -Lot DC2-addon -ProjectRoot D:\Game\LifePlay-Sandbox`. - **Branche addon** : `lot/DC2-modtools` (depuis `lot/DC1-animcore` = `0aca51d`). ## Addon | Fichier | Changement | |---|---| | `Plugins/LPSandbox/Source/LPModTools/` | nouveau module **Editor** : `LPModTools.Build.cs` (`bUseUnity=false`, plat ; public `Core`, `CoreUObject`, `Engine`, `LPAnimMeasure` ; privé `UnrealEd`, `AssetRegistry`, `Json`, `MeshDescription`, `StaticMeshDescription`, `SkeletalMeshUtilitiesCommon`, `SkeletalMeshDescription`, `AnimationCore`), `LPModTools.cpp` | | idem | 13 sources copiées du jeu, **SHA-256 identiques** : `LPAnimEvalCommandlet`, `LPAnimTwistCommandlet`, `LPAnimCatalogCommandlet`, `LPAnimIdentifyCommandlet`, `LPAnimChecks`, `LPHairFromStaticMeshCommandlet` (`.h/.cpp`), `LPAnimMethodSelect.h` ; aucune macro d'export à renommer (aucune n'utilisait `LIFEPLAYEDITORTOOLS_API`) ; puis une seule modification : `LPAnimIdentifyCommandlet.cpp` lit les profils par `LPAnimMeasurePaths::ToolsAnimDir()` | | `LPSandbox.uplugin` | module `LPModTools` (Editor, Default), description | | `LPAnimMeasure/LPAnimMeasurePaths.h/.cpp` | nouveau : `SandboxRoot()` (base du plugin `LPSandbox` + `../..`, journal `PATHS racine addon …`), `ToolsAnimDir()` (`/Tools/anim` s'il existe, sinon `/Tools/anim` jusqu'à DC3) | | `LPSkeletonProfile.cpp`, `LPPoseMeasure.cpp` | `ProjectDir()/Tools/anim/{profiles,methodes}` → `ToolsAnimDir()/…` | | `LPAnimMeasure.Build.cs` | dépendance privée `Projects` | | `LPSandbox/LPSandboxConfig.cpp` | lit `/Config/LPSandbox.ini` (identique à la copie du jeu), repli `ProjectConfigDir()` jusqu'à DC3 | ## Jeu | Fichier | Changement | |---|---| | `Source/LifePlayEditorTools/` | 13 sources retirées (`git rm`) | | `LifePlayEditorTools.Build.cs` | `LPAnimMeasure` retiré ; retirés aussi `StaticMeshDescription`, `SkeletalMeshUtilitiesCommon`, `SkeletalMeshDescription`, `AnimationCore` et le doublon `Json` (seuls les fichiers déplacés les utilisaient ; `MeshDescription` reste pour `LPCheckMeshes`, `Json` pour `LPEditWidget`) | Après DC2, plus aucun `Build.cs` ni `.uproject` du jeu ne cite `LPAnimMeasure`. Note : `LifePlay.Build.cs` garde `Json` avec un commentaire AP1 périmé (aucun `.cpp` de `LifePlay` n'utilise Json) : laissé tel quel, reporté (DC4, nettoyage).