// 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.RoomMatch { // referenced as field/param types by the watch/replay controller shells (off battle path). public class TwoPickWatchData { } public partial class ReplayDataHandler { } } namespace Wizard.Battle.View.Vfx { // VfxBase subclass declared in StartPickCardVfx.cs (decomp); referenced as a type by StartSummonCardVfx shell. public class WaitUntilCardIsQueuedToBePlayedVfx { } }