feat(battle-engine): full-surface god-object stubs (UIManager/GameObjMgr/BattleLog) 7532->5600

Generate the COMPLETE decomp member surface (not frontier-subset, which silently drops
already-provided members) for UIManager(+ViewScene/ChangeViewSceneParam), GameObjMgr,
BattleLogManager/Item, InPlayCardFrameEffectControl. UIManager/Footer base fixes:
UIManager is MonoBehaviour (singleton kept by hand via --exclude); Footer is the copied
Engine type (removed the conflicting global shim). Add HUDMode enum, Wizard manager
return-type stubs, and a closure-stubs file for 7 referenced empties.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-06-05 21:23:52 -04:00
parent de1b7362c9
commit b47741d2a5
8 changed files with 827 additions and 67 deletions

View File

@@ -64,7 +64,7 @@ public class EffectMgr
public static TargetType ToStrTargetType(string str) => TargetType.NONE;
}
public class GameObjMgr { }
public partial class GameObjMgr { }
public class GameMgr
{
@@ -125,65 +125,20 @@ public class GameMgr
public bool IsUseUnapprovedList(bool isPlayer) => false;
}
public class UIManager
// UIManager surface (members, ViewScene enum, ChangeViewSceneParam) is generated from
// decomp into Shim/Generated/UIManager*.g.cs. This partial keeps only the singleton +
// MonoBehaviour base (gameObject/transform/StartCoroutine/StopCoroutine come from the base).
public partial class UIManager : UnityEngine.MonoBehaviour
{
private static UIManager _ins;
public static UIManager GetInstance() => _ins ??= new UIManager();
public static UIManager GetIns() => GetInstance();
private static UIManager _ins;
public enum ViewScene
{
None, Battle, Bingo, BuildDeckPurchasePage, CardAllList, CardSleevePurchasePage,
ClassSkinPurchasePage, Colosseum, CrossoverPortal, DeckList, Gacha, Gathering,
LeaderPopularityVote, LoginBonus, LotteryPage, Mission, MyPage,
NeutralPopularityVote, Profile, QuestSelectionPage, RankMatch, Room,
StorySelectPage, StorySelectionWorld, TwoPick,
}
public class ChangeViewSceneParam { public ChangeViewSceneParam() { } }
public Camera UIRootLoadingCamera;
public Dictionary<ViewScene, ChangeViewSceneParam> TopBarBackParameterDict = new Dictionary<ViewScene, ChangeViewSceneParam>();
public Footer _Footer => null;
public bool IsTouchable => true;
public Camera getCamera() => null;
public GameObject gameObject => null;
public Coroutine StartCoroutine(IEnumerator routine) => null;
public UIBase GetUIBase(ViewScene scene) => null;
public T GetCurrentSceneParam<T>() where T : class => null;
public void ChangeViewScene(ViewScene nextScene, ChangeViewSceneParam param = null, object sceneParam = null) { }
public void Force_Increment_LockCountChangeView() { }
public void Force_Decrement_LockCountChangeView() { }
public ViewScene GetCurrentScene() => ViewScene.Battle;
public bool IsCurrentScene(ViewScene scene) => false;
public UIBase GetUiBaseOfCurrentScene() => null;
public DialogBase CreateDialogClose(bool isSystem = false, bool dontChangeLabelColor = false) => null;
public DialogBase CreateConfirmationDialog(string message) => null;
public void dialogAllClear() { }
public bool isOpenDialog() => false;
public bool isOpenLoading() => false;
public void closeInSceneLoading(bool force = true) { }
public void createInSceneCenterLoading(bool notBlack = false, bool notCollider = false, bool force = true, string overrideText = null) { }
public void closeInSceneCenterLoading(bool force = true, bool disableCollider = false) { }
public LoadingInScene CloseInSceneLoadingMatching() => null;
public LoadingInScene createInSceneLoadingBattle(bool notBlack = false, bool notCollider = false) => null;
public LoadingInScene CloseInSceneLoadingBattle() => null;
public bool isFading() => false;
public bool IsActiveFirstTips() => false;
public VideoHostingHUD GetVideoHostingHUD() => null;
public void setBackScene(GameObject obj, ViewScene backScene) { }
public static void ApplicationQuit() { }
public static void SetObjectToGrey(GameObject o, bool b) { }
public static void ShowDialogUrl(string title, string url, Action<DialogBase> onDialogOpening = null) { }
public class CreatFade { }
public void CreatFadeOpen() { }
public void CreatFadeBlack() { }
public Wizard.RankWinnerReward createRankWinnerReward() => null;
}
public class Footer { }
public class VideoHostingHUD { }
public class VideoHostingHUD
{
public enum HUDMode { Null, Recording, Publishing }
}
namespace Wizard
{
@@ -192,4 +147,9 @@ namespace Wizard
public class MailTopTask { }
public class MyPageTask { }
public class DeckUpdateTask { }
// UIManager no-op return types (empty stubs; methods returning them return null)
public class LoadingViewManager { }
public class AccountTransferHelper { }
public class DialogManager { }
public class ApplicationFinishManager { }
}