Files
SVSimServer/SVSim.BattleEngine/Engine/NetworkMatchNextSceneSelector.cs
gamer147 957af3d1ec feat(battle-engine): full Unity/VFX/god-object shims + expanded copy closure (2570 files)
Authored Unity primitive/object-model shim, VFX layer (control-flow-preserving, InstantVfx never invokes its action -- headless suppression), god-object stubs (GameMgr/EffectMgr/UIManager with faithfully-extracted nested enums), View/UI/Touch tree, LitJson+BetterList+Tuple copied, third-party stubs. Discovered Roslyn header-error masking: fixing class-header type errors unmasks body references, so the true copy closure is ~2570 files (was 782 under masking). Errors: masked-25720 -> 268; our shim files compile clean. Remaining: ~50 residual shim/external types, 24 NGUI UI-base overrides, static-type fixes, plus likely 1-2 more unmask waves.
2026-06-05 17:22:20 -04:00

91 lines
3.7 KiB
C#

using System;
using Cute;
using UnityEngine;
using Wizard;
public class NetworkMatchNextSceneSelector : INextSceneSelector
{
private BattleResultUIController m_battleResultNewControl;
private bool _movingToMyPage;
public NetworkMatchNextSceneSelector(BattleResultUIController battleResultControl)
{
m_battleResultNewControl = battleResultControl;
_movingToMyPage = false;
}
public void Setup(bool isWin, GameObject gameObject)
{
if (m_battleResultNewControl.ResultMsgReportBtnFlag)
{
m_battleResultNewControl.ReportBtnObj.labels[0].text = Data.SystemText.Get("Con_Management_001_Button");
m_battleResultNewControl.ReportBtnObj.gameObject.SetActive(value: true);
m_battleResultNewControl.ReportBtnObj.buttons[0].onClick.Clear();
m_battleResultNewControl.ReportBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate
{
ConsistencyReportButtonAction.CreateReportConfirmWindow();
}));
}
m_battleResultNewControl.MissionBtnObj.labels[0].text = Data.SystemText.Get("Battle_0200");
m_battleResultNewControl.MissionBtnObj.buttons[0].onClick.Clear();
m_battleResultNewControl.MissionBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate
{
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_COMMON_BUTTON);
UIManager.GetInstance().createInSceneCenterLoading();
MissionInfoTask missionInfoTask = GameMgr.GetIns().GetMissionInfoTask();
missionInfoTask.SetParameter();
m_battleResultNewControl.StartCoroutine(Toolbox.NetworkManager.Connect(missionInfoTask, delegate
{
m_battleResultNewControl.CreateMissionList();
}, BaseTask.OnRequestFailed, BaseTask.OnFailedErrorCode));
}));
m_battleResultNewControl.HomeBtnObj.labels[0].text = Data.SystemText.Get("Battle_0202");
m_battleResultNewControl.HomeBtnObj.buttons[0].onClick.Clear();
m_battleResultNewControl.HomeBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate
{
MoveToMyPage();
}));
m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Battle_0204");
m_battleResultNewControl.RetryBtnObj.buttons[0].onClick.Clear();
m_battleResultNewControl.RetryBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate
{
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_COMMON_BUTTON);
DeckInfoTask task = new DeckInfoTask();
task.SetParameter(Data.CurrentFormat);
UIManager.GetInstance().StartCoroutine(Toolbox.NetworkManager.Connect(task, delegate
{
Action<DeckUI> onUpdateDeckUICustomize = delegate(DeckUI deckUI)
{
if (deckUI.Deck.Format == GameMgr.GetIns().GetDataMgr().GetSelectDeckFormat() && deckUI.Deck.GetDeckID() == GameMgr.GetIns().GetDataMgr().GetSelectDeckId())
{
deckUI.SetTextAppealLabelLeft(Data.SystemText.Get("Card_0235"));
}
};
DeckSelectUIDialog.Create(DeckSelectUIDialog.GetTitleByBattleType(GameMgr.GetIns().GetDataMgr().m_BattleType), task.DeckGroupListData, Data.CurrentFormat, DeckSelectUIDialog.eFormatChangeUIType.SingleFormat, isVisibleCreateNew: true, delegate(DialogBase dialog, DeckData deckData)
{
FreeAndRankMatchDeckSelectConfirmDialog.Create(dialog, deckData, isBattleEnd: true);
}, new DeckSelectUI.InitOptions
{
OnUpdateDeckUICustomize = onUpdateDeckUICustomize
});
}));
}));
}
public void Show()
{
iTween.MoveTo(m_battleResultNewControl.ButtonGrid.gameObject, iTween.Hash("position", m_battleResultNewControl.DefaultPosDict["ButtonGrid"], "time", 0.5f, "islocal", true, "easetype", iTween.EaseType.easeOutExpo));
}
private void MoveToMyPage()
{
if (!_movingToMyPage)
{
_movingToMyPage = true;
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_BTN_CANCEL_TRANS);
GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.MyPage);
}
}
}