feat(battle-engine): full View/VFX/UI/Touch/Story type closure (4254->3916, unmasked)
Generate no-op shells for the entire stop-listed View/Vfx/UI/Touch/Story missing- type closure (~180 types) + 5 copyable engine files. Net-new shells emitted base-less, so override members are stripped via the new --no-override generator flag. SDK/BCL over-reach (Adjust/GZipStream/Socket*) and non-battle Story-world clusters reduced to minimal/empty stubs instead of full-surface. Nested-type closure (BuildInfo/BattleDialog/ ROOM_URI/FuncGetCantAttackText) placed top-level in their decomp namespaces. Clearing the last View CS0115 unmasked the true member-level frontier: 3916 errors, 0 generated/structural errors, now dominated by Unity-type + god-object members. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
35
SVSim.BattleEngine/Shim/View/ClosureStubs.cs
Normal file
35
SVSim.BattleEngine/Shim/View/ClosureStubs.cs
Normal file
@@ -0,0 +1,35 @@
|
||||
// AUTHORED SHIM (not copied). Closure stubs for NESTED types whose unqualified
|
||||
// references survive in net-new generated no-op shells. The generator emits each
|
||||
// shell as a base-less `partial class` (it never re-emits the decomp base clause),
|
||||
// so a derived view that referenced an inherited nested type (e.g. UnitBattleCardView
|
||||
// using BattleCardView.BuildInfo) loses the inheritance path and the name resolves
|
||||
// only at NAMESPACE scope. Declaring these top-level in the decomp namespace lets the
|
||||
// shell's signatures resolve. Safe because nothing crosses the engine boundary with
|
||||
// these types (zero CS0029 mismatches) — they exist purely so the no-op shells compile.
|
||||
|
||||
namespace Wizard.Battle.View
|
||||
{
|
||||
// nested in BattlePlayerViewBase (decomp); referenced unqualified by BattlePlayerView shell.
|
||||
public class BattleDialog { }
|
||||
public enum BattleDialogItem { Menu, Retire }
|
||||
// nested in BattleCardView/BattleCardBase (decomp); referenced unqualified by *BattleCardView shells.
|
||||
public class BuildInfo { }
|
||||
}
|
||||
|
||||
namespace Wizard.Battle.UI
|
||||
{
|
||||
// private delegate nested in BattleLogUtility (decomp); referenced by its generated partial.
|
||||
public delegate string FuncGetCantAttackText();
|
||||
}
|
||||
|
||||
namespace Wizard.RoomMatch
|
||||
{
|
||||
// nested enum in PlayerController (decomp); referenced by PlayerControllerForOwn shell.
|
||||
public enum ROOM_URI { }
|
||||
}
|
||||
|
||||
namespace Wizard.Battle.View.Vfx
|
||||
{
|
||||
// VfxBase subclass declared in StartPickCardVfx.cs (decomp); referenced as a type by StartSummonCardVfx shell.
|
||||
public class WaitUntilCardIsQueuedToBePlayedVfx { }
|
||||
}
|
||||
31
SVSim.BattleEngine/Shim/View/StoryWorldStubs.cs
Normal file
31
SVSim.BattleEngine/Shim/View/StoryWorldStubs.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
// AUTHORED SHIM (not copied). Non-battle Story / StorySelectionWorld / Profile UI
|
||||
// types that the copied engine references only as field/parameter TYPES (never drives
|
||||
// headless). Generating them full-surface pulled a large non-battle closure
|
||||
// (BackgroundData/StoryWorldData/IResourceHandle/animation managers, etc.); empty
|
||||
// no-op stubs in their decomp namespaces resolve the references without the closure.
|
||||
|
||||
namespace Wizard.Story.ChapterSelection.FlowChart { public class BackgroundView { } }
|
||||
|
||||
namespace Wizary.StorySelectionWorld
|
||||
{
|
||||
public class WorldPanel { }
|
||||
public class WorldPanelView { }
|
||||
public class SectionButton { }
|
||||
public class SectionButtonView { }
|
||||
public class StorySelectionWorldScene { }
|
||||
}
|
||||
|
||||
namespace Wizard.Scenario2.Resource { public class ResourceManager { } }
|
||||
|
||||
namespace Wizard.UI.Profile
|
||||
{
|
||||
public class ProfileUI { }
|
||||
public class ClassPageItem { }
|
||||
}
|
||||
|
||||
namespace Wizard.Story.ChapterSelection
|
||||
{
|
||||
public class SectionInfoPanel { }
|
||||
public class CharaInfoPanel { }
|
||||
public class StoryChapterSelectionUtility { }
|
||||
}
|
||||
Reference in New Issue
Block a user