cull(engine-cleanup): pass-8 phase-2 cascade round 1

[trim] fully-unreachable files deleted: 6
[trim] files edited: 55, files deleted: 0, nodes removed: 244
[type-trim] files edited: 1, types removed: 1

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-07-03 21:18:18 -04:00
parent 3fb37f0249
commit c9628dee01
61 changed files with 4 additions and 1109 deletions

View File

@@ -10,13 +10,6 @@ using UnityEngine;
[Serializable]
public class AreaSelectMapIcon
{
[SerializeField]
private GameObject MapIconRoot;
[SerializeField]
private UISprite MapIconOriginal;
private List<UISprite> MapIconList;
public void Init()
{

View File

@@ -1,7 +0,0 @@
using UnityEngine;
public class AudioList : MonoBehaviour
{
[SerializeField]
public string[] GimicAudioList;
}

View File

@@ -25,8 +25,6 @@ public class BackGroundBase
protected IDictionary<string, int> _gimicCntDictionary;
public string[] GimicAudioList;
protected string _str3DFieldNo;
protected string _str3DFieldPath;
@@ -111,19 +109,6 @@ public class BackGroundBase
return fieldId.ToString((fieldId < 100) ? "00" : "0000");
}
protected virtual void BattleFieldBuild()
{
}
protected virtual List<string> CollectAdditionalAssets()
{
return null;
}
public virtual void StartFieldSetEffect(Vector3 pos)
{
}
public virtual void StartFieldTapEffect(int areaId, Vector3 pos)
{
m_BtlMgrIns.BattlePlayer.PlayerBattleView.IsTouchable();
@@ -147,15 +132,6 @@ public class BackGroundBase
yield return new WaitForSeconds(0f);
}
public static IEnumerator ObjectChecker(float fWaitSecs, string strObjectFind, Action callback)
{
// Pre-Phase-5b: polled GameObject.Find + EffectMgr readiness flags. All Field*.cs
// subclass BattleFieldBuild bodies were stubbed to no-ops in chunk 3; ObjectChecker
// is now only reachable via dead code. Fire the callback immediately.
yield return null;
callback();
}
public void StartFieldGimic(GameObject obj)
{
if (!m_BtlMgrIns.GameMgr.IsReplayBattle && m_BtlMgrIns.BattlePlayer.PlayerBattleView.IsTouchable())
@@ -169,11 +145,6 @@ public class BackGroundBase
yield return new WaitForSeconds(0f);
}
public void StartFieldShake()
{
BattleCoroutine.GetInstance().StartCoroutine(RunFieldShake());
}
protected virtual IEnumerator RunFieldShake()
{
yield return new WaitForSeconds(0f);
@@ -183,27 +154,6 @@ public class BackGroundBase
{
}
public void AddParticleToFieldObjDictionary(string targetPath)
{
string[] array = targetPath.Split('/');
List<Transform> list = new List<Transform>();
list.Add(_fieldParticles.transform);
List<Transform> list2 = new List<Transform>();
for (int i = 0; i < array.Length; i++)
{
list2 = new List<Transform>();
for (int j = 0; j < list.Count; j++)
{
list2.AddRange(FindAllChildByName(list[j], array[i]));
}
list = new List<Transform>(list2);
}
for (int k = 0; k < list2.Count; k++)
{
_fieldObjDictionary.Add(targetPath + "_" + k, list2[k].gameObject);
}
}
public List<Transform> FindAllChildByName(Transform parent, string name)
{
List<Transform> list = new List<Transform>();

View File

@@ -18,26 +18,6 @@ public class BattleCamera
Camera = null;
}
public VfxBase ShakeCamera(Vector3 amount, float time, float delay)
{
ParallelVfxPlayer parallelVfxPlayer = ParallelVfxPlayer.Create();
parallelVfxPlayer.Register(InstantVfx.Create(delegate
{
iTween.ShakePosition(Camera.gameObject, iTween.Hash("amount", amount, "time", time, "delay", delay));
}));
return parallelVfxPlayer;
}
public VfxBase ShakeComplete()
{
return InstantVfx.Create(delegate
{
Camera.transform.localPosition = BattleCameraPos;
Camera.transform.eulerAngles = BattleCameraRot;
iTween.Stop(Camera.gameObject);
});
}
public Camera Get3DCamera()
{
return Camera;

View File

@@ -21,8 +21,4 @@ public class BattleControl : MonoBehaviour
yield return null;
callback?.Invoke();
}
public void BattleRelease()
{
}
}

View File

@@ -53,9 +53,4 @@ public class BattleKeywordInfoListMgr : MonoBehaviour
}
return list;
}
public void SetPanelDepth(int depth)
{
_panel.depth = depth;
}
}

View File

@@ -1438,11 +1438,6 @@ public class BattleManagerBase
return sequentialVfxPlayer;
}
public BattleControl GetBattleControl()
{
return this.GameMgr.GetBattleCtrl();
}
public BattlePlayerBase GetBattlePlayer(bool isPlayer)
{
if (isPlayer)

View File

@@ -702,18 +702,6 @@ public abstract class BattlePlayerBase : IBattlePlayerReadOnlyInfo
public int _cumulativeEvolutionCount { get; protected set; }
public bool IsSkinEvolved
{
get
{
if (_dataMgr.IsEvolveSkin(IsPlayer))
{
return _cumulativeEvolutionCount > 0;
}
return false;
}
}
public IEnumerable<BattleCardBase> AllCards
{
get
@@ -4365,11 +4353,6 @@ public abstract class BattlePlayerBase : IBattlePlayerReadOnlyInfo
this.OnRemoveLatestOperationJsonData.Call(type);
}
public void CallOnEmotion(ClassCharaPrm.EmotionType emotionType)
{
this.OnEmotion.Call(emotionType, IsPlayer);
}
public void CallOnClearDestroyedCardList(bool isPlayer)
{
this.OnClearDestroyedCardList.Call(isPlayer);

View File

@@ -453,8 +453,6 @@ public class CardDetailUI : UIBase
private static readonly Color PREMIUM_CARD_CONVERSION_PARTICLE_COLOR = new Color(14f / 85f, 32f / 85f, 0.5568628f);
private static readonly Vector3 CARD_DESTROY_PARTICLE_OFFSET = new Vector3(0f, 0f, -1f);
private static readonly Vector3 KEYWORD_DIALOG_BACK_VIEW_POSITION = new Vector3(0f, 0f, -5f);
private GameObject UnitCardObject;

View File

@@ -138,14 +138,4 @@ public class CardMake : MonoBehaviour
int possessionCardNum = 0; // Pre-Phase-5b: headless has no user inventory
return $"{num},{possessionCardNum}";
}
private void OnError(NetworkTask.ResultCode code)
{
OnClose.Call();
}
private void OnError(int code)
{
OnClose.Call();
}
}

View File

@@ -102,8 +102,6 @@ public class ClassCharaPrm
}
};
private int _defaultCharaId;
private int _currentCharaId;
private int ClassCharaLv;

View File

@@ -266,17 +266,6 @@ public class AssetManager : MonoBehaviour, IManager
}
}
public void CacheAsset(string assetName, Action callback = null)
{
CacheAsset(assetName, new AssetRequestContext(delegate
{
if (callback != null)
{
callback();
}
}));
}
public void CacheAsset(string assetName, AssetRequestContext requestContext)
{
AssetHandle value = null;

View File

@@ -106,7 +106,6 @@ public class DataMgr
SecretBossQuest = 46,
CompetitionTwoPick = 47,
Avatar = 48,
ColosseumAvatar = 49,
None = 100
}
@@ -174,8 +173,6 @@ public class DataMgr
public BattleType m_BattleType = BattleType.None;
public TwoPickFormat TwoPickFormat;
public string BattleId = "";
private static string[] ClanNameTextIdList = new string[9] { "Common_0104", "Common_0105", "Common_0106", "Common_0107", "Common_0108", "Common_0109", "Common_0110", "Common_0111", "Common_0112" };
@@ -184,12 +181,8 @@ public class DataMgr
public int PracticeDifficultyDegreeId { get; set; }
public int Practice3DfieldId { get; set; }
public List<int> FavoriteCardList { get; private set; }
public DeckGroupListData CurrentDeckListParamData { get; set; }
public SpecialBattleSetting SpecialBattleSettingInfo { get; set; }
public BattleManagerBase.MissionNecessaryInformation MissionNecessaryInformation { get; set; } = new BattleManagerBase.MissionNecessaryInformation(new Dictionary<string, string>());
@@ -212,8 +205,6 @@ public class DataMgr
public int PuzzleEnemyClass { get; set; }
public QuestSelectionPage.FirstSelectType QuestFirstSelectType { get; set; }
public int StoryEnemyClassId { get; set; }
public JsonData RecoveryData { get; private set; }
@@ -257,34 +248,6 @@ public class DataMgr
RecoveryData = recoveryData;
}
public bool IsDipslayHighRankFormat()
{
switch (m_BattleType)
{
case BattleType.TwoPick:
case BattleType.Story:
case BattleType.Practice:
case BattleType.RoomTwoPick:
case BattleType.TwoPickBackdraft:
case BattleType.ColosseumTwoPick:
case BattleType.ColosseumHof:
case BattleType.Sealed:
case BattleType.ColosseumWindFall:
case BattleType.Quest:
case BattleType.BossRushQuest:
case BattleType.SecretBossQuest:
case BattleType.CompetitionTwoPick:
case BattleType.Avatar:
return true;
default:
if (Data.CurrentFormat != Format.Max && Data.CurrentFormat != Format.Windfall && Data.CurrentFormat != Format.MyRotation)
{
return Data.CurrentFormat == Format.Avatar;
}
return true;
}
}
public bool IsQuestBattleType()
{
return IsQuestBattleType(m_BattleType);
@@ -299,16 +262,6 @@ public class DataMgr
return false;
}
public bool IsRoomBattleType()
{
BattleType battleType = m_BattleType;
if (battleType == BattleType.RoomBattle || (uint)(battleType - 6) <= 1u)
{
return true;
}
return false;
}
public DataMgr()
{
_possessionCardDict = new Dictionary<int, int>();
@@ -338,11 +291,6 @@ public class DataMgr
SetPlayerSleeveId(_playerSleeveId);
}
public void ResetEnemyData()
{
_currentEnemyDeckData = null;
}
public void LoadEnemyClassData()
{
if (_enemyCharaId == 0)
@@ -402,15 +350,6 @@ public class DataMgr
}
}
public void RegisterAllAIData()
{
m_AIDataLibrary.Clear();
RegisterAICommonData();
RegisterAIDeckData();
RegisterAIStyleData();
RegisterAIEmoteData();
}
public void SetPlayerCharaId(int charaId)
{
_playerCharaId = charaId;
@@ -433,11 +372,6 @@ public class DataMgr
_playerAvatarBattleInfo = Data.AvatarBattleAllInfo.Get(id);
}
public void SetPlayerCharaIdByClassId(int classId, bool isCurrentChara = true)
{
SetPlayerCharaId(GetCharaPrmByClassId(classId, isCurrentChara).chara_id);
}
public void SetPlayerCharaIdBySkinId(int skinId)
{
SetPlayerCharaId(GetCharaPrmBySkinId(skinId).chara_id);
@@ -509,27 +443,6 @@ public class DataMgr
_currentEnemyDeckData = deckdata;
}
public void SetDeckMaxCount(int count, bool isSelf)
{
if (count != -1 && count != 0)
{
if (isSelf)
{
_deckMaxCardCount = count;
}
else
{
_enemyDeckMaxCardCount = count;
}
}
}
public void SetQuestAILogicAndDeckData(int classId, int enemyAiId)
{
StoryAISettingData settingData = Data.Master.QuestAISettingList.GetSettingData(enemyAiId);
SetCurrentEnemyDeckDataFromAIDeck(classId, -1, settingData.LogicLevel, 20, settingData.DeckId, settingData.StyleId, settingData.EmoteId, settingData.UseInnerEmote, enemyAiId);
}
public void SetCurrentEnemyDeckDataFromAIDeck(int classID, int difficulty, int logicLevel, int maxLife, int deckId, int styleId, int emoteId, bool useInnerEmote, int enemyAiID = -1, List<int> specialAbilityIdList = null)
{
if (classID == 0)
@@ -747,29 +660,11 @@ public class DataMgr
return GetAbleSleeveId(_playerSleeveId);
}
public string GetPlayerEmotionId()
{
if (!(_playerEmotionId == ""))
{
return _playerEmotionId;
}
return GetPlayerSkinId().ToString();
}
public void SetPlayerEmotionId(string id)
{
_playerEmotionId = id;
}
public string GetEnemyEmotionId()
{
if (!(_enemyEmotionId == ""))
{
return _enemyEmotionId;
}
return GetEnemySkinId().ToString();
}
public void SetEnemyEmotionId(string id)
{
_enemyEmotionId = id;
@@ -885,11 +780,6 @@ public class DataMgr
return _possessionCardDict;
}
public Dictionary<int, int> ClonePossessionCardDictionary(bool isIncludingSpotCard)
{
return new Dictionary<int, int>(GetUserOwnCardData(isIncludingSpotCard));
}
public bool HasPossesionCardInfo(int cardId, bool isIncludingSpotCard)
{
return GetUserOwnCardData(isIncludingSpotCard).ContainsKey(cardId);
@@ -923,38 +813,6 @@ public class DataMgr
return num;
}
public int GetPossessionBaseCardNum(int baseCardId, bool isIncludingSpotCard, CardMaster.CardMasterId cardMasterId)
{
return GetPossessionBaseCardNum(baseCardId, GetUserOwnCardData(isIncludingSpotCard), cardMasterId);
}
public Dictionary<int, int> GetPossessionBaseCardDictionary(bool isIncludingSpotCard, CardMaster.CardMasterId cardMasterId)
{
CardMaster instance = CardMaster.GetInstance(cardMasterId);
Dictionary<int, int> dictionary = new Dictionary<int, int>();
foreach (KeyValuePair<int, int> userOwnCardDatum in GetUserOwnCardData(isIncludingSpotCard))
{
int baseCardId = instance.GetCardParameterFromId(userOwnCardDatum.Key).BaseCardId;
int value = 0;
if (dictionary.TryGetValue(baseCardId, out value))
{
try
{
dictionary[baseCardId] = checked(value + userOwnCardDatum.Value);
}
catch (OverflowException)
{
dictionary[baseCardId] = int.MaxValue;
}
}
else
{
dictionary.Add(baseCardId, userOwnCardDatum.Value);
}
}
return dictionary;
}
private void UpdatePossessionCardDictIncludingSpotCard()
{
_possessionCardDictIncludingSpotCard = SpotCardData.CreateDictionaryIncludingSpotCard(_possessionCardDict);
@@ -965,47 +823,11 @@ public class DataMgr
_isDirtyPossessionCardDict = true;
}
public void UpdateUserOwnCardData(int cardid, int num)
{
bool isNew = !HasPossesionCardInfo(cardid, isIncludingSpotCard: false);
SetIsNewCard(cardid, isNew);
if (_possessionCardDict.ContainsKey(cardid))
{
_possessionCardDict[cardid] = num;
}
else
{
_possessionCardDict.Add(cardid, num);
}
SetDirtyPossessionCardDict();
}
public bool IsNewCard(int cardId)
{
if (!_isNewCardDict.TryGetValue(cardId, out var value))
{
return false;
}
return value;
}
public void SetIsNewCard(int cardId, bool isNew)
{
_isNewCardDict[cardId] = isNew;
}
public void RegisterUserOwnCardData(int cardId, int num)
{
_possessionCardDict.Add(cardId, num);
SetDirtyPossessionCardDict();
}
public void UnregisterUserOwnCardData(int cardId)
{
_possessionCardDict.Remove(cardId);
SetDirtyPossessionCardDict();
}
public int GetSoroPlay3DFieldID()
{
return _soroPlay3DFieldId;
@@ -1016,25 +838,6 @@ public class DataMgr
return _storyBgmId;
}
public void SetMaintenanceCardIds(JsonData responseData)
{
if (responseData == null)
{
_maintenanceCardIds = null;
return;
}
_maintenanceCardIds = new int[responseData.Count];
for (int i = 0; i < responseData.Count; i++)
{
_maintenanceCardIds[i] = responseData[i]["card_id"].ToInt();
}
}
public void SetMaintenanceCardIds(int[] ids)
{
_maintenanceCardIds = ids;
}
public bool IsMaintenanceCard(int id)
{
if (_maintenanceCardIds != null)
@@ -1044,15 +847,6 @@ public class DataMgr
return false;
}
public Dictionary<ClassCharaPrm.EmotionType, Emotion> GetEmotionDataBySkinId(string skinId)
{
if (!Data.Master._emotionDic.ContainsKey(skinId))
{
LocalLog.AccumulateTraceLog("Not contain key given. skinId : " + skinId + " emotionMasterKeyCount : " + Data.Master._emotionDic.Keys.Count);
}
return Data.Master._emotionDic[skinId];
}
public static long GetAbleSleeveId(long sleeveId)
{
return Data.Master.SleeveMgr.Get(sleeveId).sleeve_id;

View File

@@ -227,14 +227,6 @@ public class DialogBase : MonoBehaviour
Text = text;
}
}
// Pre-Phase-5b: waited for SBattleLoad + BattleCtrl.BattleEnd. Both are stubbed in
// headless (see BattleControl chunk 7); no caller after the back-to-home collapse above.
// Kept as a stub yielding immediately so the enclosing class shape stays intact.
private IEnumerator BattleEndCoroutine()
{
yield return null;
}
}
[HideInInspector]

View File

@@ -23,11 +23,6 @@ public class Effect : MonoBehaviour
_buff = false;
}
public void ChangeParticleColor(Color color)
{
MotionUtils.ChangeParticleSystemColor(m_ParticleSystem.gameObject, color);
}
public GameObject GetGameObjIns()
{
return m_GameObjIns;

View File

@@ -1,40 +0,0 @@
using System;
using System.Collections;
using Cute;
using UnityEngine;
public class FontChanger
{
public static IEnumerator FontChange(Action callback)
{
string font = getFont();
string text = "font_" + font + ".unity3d";
bool isDone = false;
string filename = text.ToLower();
Toolbox.AssetManager.CacheAsset(filename, delegate
{
AssetHandle assetHandle = Toolbox.AssetManager.GetAssetHandle(filename);
if (assetHandle != null)
{
assetHandle.isMultipleHandleIgnorAsset = true;
}
isDone = true;
});
while (!isDone)
{
yield return 0;
}
Global.GAME_FONT = Toolbox.ResourcesManager.LoadObject<Font>("Font/" + font);
if (Global.GAME_FONT != null)
{
Global.GAME_FONT_NAME = font;
}
callback?.Invoke();
}
private static string getFont()
{
return Toolbox.SavedataManager.GetString("LANG_FONT", Global.GetFontLangType(Global.LANG_TYPE.Eng.ToString()));
}
}

View File

@@ -515,16 +515,4 @@ public static class Global
string textLanguage = CustomPreference.GetTextLanguage();
return WordBreakLanguageNames.Contains(textLanguage);
}
public static string GetFontLangType(string type)
{
for (int i = 0; i < LanguagePropList.Count(); i++)
{
if (LanguagePropList[i].LangType == type)
{
return LanguagePropList[i].Font;
}
}
return LanguagePropList[0].Font;
}
}

View File

@@ -86,11 +86,6 @@ public abstract class HandControl
return _handState == HandState.Focus;
}
public bool IsVisibleHand()
{
return _handVisible == HandVisible.Visible;
}
public void SetHandPosition()
{
Transform.localPosition = BaseHandPos;

View File

@@ -64,18 +64,6 @@ public class InputMgr
private ClickState _clickState;
public bool isBackKeyEnable
{
get
{
return _isBackKeyEnable;
}
set
{
_isBackKeyEnable = value;
}
}
public bool WentOverDrag
{
get

View File

@@ -463,31 +463,6 @@ public class Mail : UIBase
return systemText.Get("Mail_0048", "0");
}
private void OnRequestMailList(NetworkTask.ResultCode error)
{
if (_tabType == TAB_TYPE.GIFT)
{
_currentList = Wizard.Data.MailTop.data.mail_data_list;
}
else if (_tabType == TAB_TYPE.HISTORY)
{
_currentList = Wizard.Data.MailTop.data.mail_history_list;
}
int count = Wizard.Data.MailTop.data.mail_history_list.Count;
if (count == _lastHistoryCount)
{
_lastHistoryCount = 500;
}
else
{
_lastHistoryCount = count;
}
// Pre-Phase-5b: checked MailTopTask.LastPageRead == 1 to reset the scroll wrap.
// Headless has no MailTopTask; fall through to UpdateScrollSize (the general path).
UpdateScrollSize();
UIManager.GetInstance().closeInSceneCenterLoading();
}
private void LoadNextPage()
{
// Pre-Phase-5b: fetched next-page mail via MailTopTask. Headless has no mail service;

View File

@@ -158,30 +158,6 @@ public class MotionUtils
}
}
public static Vector3[] GetBezierQuad(Vector3 p0, Vector3 p1, Vector3 p2, int div)
{
Vector3[] array = new Vector3[div];
for (int i = 0; i < div; i++)
{
float num = (float)i / (float)(div - 1);
float num2 = 1f - num;
array[i] = new Vector3(num2 * num2 * p0.x + 2f * num2 * num * p1.x + num * num * p2.x, num2 * num2 * p0.y + 2f * num2 * num * p1.y + num * num * p2.y, num2 * num2 * p0.z + 2f * num2 * num * p1.z + num * num * p2.z);
}
return array;
}
public static Vector3[] GetBezierCubic(Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3, int div)
{
Vector3[] array = new Vector3[div];
for (int i = 0; i < div; i++)
{
float num = (float)i / (float)(div - 1);
float num2 = 1f - num;
array[i] = new Vector3(num2 * num2 * num2 * p0.x + 3f * num2 * num2 * num * p1.x + 3f * num2 * num * num * p2.x + num * num * num * p3.x, num2 * num2 * num2 * p0.y + 3f * num2 * num2 * num * p1.y + 3f * num2 * num * num * p2.y + num * num * num * p3.y, num2 * num2 * num2 * p0.z + 3f * num2 * num2 * num * p1.z + 3f * num2 * num * num * p2.z + num * num * num * p3.z);
}
return array;
}
public static void SetLayerAll(GameObject obj, int layer)
{
obj.layer = layer;

View File

@@ -563,27 +563,6 @@ public abstract class MyPageBannerBase : MonoBehaviour
dialogBase.SetOnClickUrl();
}
private void OnSelectPost(int voteId, GameObject cardObject, Action callback)
{
int voteTargetId = int.Parse(cardObject.name);
DialogBase dialogBase = UIManager.GetInstance().CreateDialogClose(isSystem: true);
dialogBase.SetSize(DialogBase.Size.S);
dialogBase.SetTitleLabel(Data.VoteInfo.title_text);
dialogBase.SetButtonLayout(DialogBase.ButtonLayout.OkBtn);
dialogBase.SetFadeButtonEnabled(flag: true);
dialogBase.SetPanelDepth(2000);
dialogBase.SetText(string.Format(Data.SystemText.Get("Dia_Vote_001"), Data.VoteInfo.vote_target_list[voteTargetId]));
dialogBase.onPushButton1 = delegate
{
VoteTask voteTask = new VoteTask();
voteTask.SetParameter(voteId, voteTargetId);
StartCoroutine(Toolbox.NetworkManager.Connect(voteTask, delegate
{
callback.Call();
}));
};
}
private static void StartTransititonTask()
{
TransitionInfoTask task = new TransitionInfoTask();

View File

@@ -99,8 +99,6 @@ public class NetworkBattleManagerBase : BattleManagerBase
private bool _isNodeErrorToNocontest;
public BATTLE_RESULT_TYPE BattleResultType;
protected List<ReplaceReceivedCard.CardIdAndIndex> NotReplaceCardList;
private Coroutine _waitToReconnectSocketCoroutine;

View File

@@ -124,33 +124,6 @@ public class NetworkUserInfoData
return Convert.ToInt32(_selfInfo["viewerId"]);
}
public int GetSelfSubClassId()
{
if (SelfBattleStartInfo == null)
{
return 0;
}
return SelfBattleStartInfo.SubClassId;
}
public int GetSelfCharaId()
{
if (SelfBattleStartInfo == null)
{
return 0;
}
return SelfBattleStartInfo.CharaId;
}
public string GetSelfMyRotationId()
{
if (SelfBattleStartInfo == null)
{
return "";
}
return SelfBattleStartInfo.MyRotationId;
}
public string GetSelfAvatarBattleId()
{
if (SelfBattleStartInfo == null)

View File

@@ -8,10 +8,8 @@ public class PanelMgr : MonoBehaviour
{
public enum BattleAlertType
{
EmoteLimit,
SelectChoiceCard,
DisconnectInfomation,
DisconnectInfomationMulligan,
None
}

View File

@@ -41,11 +41,8 @@ public class RealTimeNetworkAgent : MonoBehaviour
public bool IsReceiveSelfDisconnect => false;
public int LastEmitSeqNumber => 0;
public INetworkLogger<NetworkLog> NetworkLogger { get; protected set; }
public string NowSocketID => string.Empty;
public int GetIsFirstPlayer() => 0;
public int GetViewId() => 0;
public long GetBattleId() => 0L;
public void SetCurrentMatchingStatus(MatchingStatus status) { }
public void SetNetworkBattleMgr(NetworkBattleManagerBase mgr) { }

View File

@@ -10,9 +10,4 @@ public class RoomTwoPickBeforeBattleInfo
receiveDeck = new Deck();
receiveDeck.cardIds = new int[0];
}
public void ReceiveBackDraftCharaId(int id)
{
receiveDeck.skinId = id;
}
}

View File

@@ -105,8 +105,6 @@ public class SBattleLoad : MonoBehaviour
public bool isDbgEnableEnemyHandView = true;
public bool isLoadEnd;
public TurnEndButtonUI m_TurnEndBtnUI { get; private set; }
public event Action OnEndWaitCallBack;

View File

@@ -12,9 +12,7 @@ public class TurnEndButtonUI : UIBase, ITurnEndButtonUI
public enum ViewType
{
Normal,
Watch,
Replay
}
Watch }
[SerializeField]
private GameObject BtnMain;
@@ -22,9 +20,6 @@ public class TurnEndButtonUI : UIBase, ITurnEndButtonUI
[SerializeField]
private UILabel TitleLabel;
[SerializeField]
private UISprite TurnEndButtonImg;
[SerializeField]
private UIButton TurnEndButtonButton;

View File

@@ -154,9 +154,6 @@ public class UICardList : MonoBehaviour
[SerializeField]
private GameObject _avatarBattleRoot;
[SerializeField]
private UIButton _avatarAbilityButton;
[NonSerialized]
public GenerateDeckCodeTask.SubmitDeckType SubmitDeckType = GenerateDeckCodeTask.SubmitDeckType.NORMAL;

View File

@@ -46,27 +46,6 @@ public abstract class EmotionBase : IEmotion
return NullVfx.GetInstance();
}
public VfxBase PlayEmotion(Wizard.Emotion emotionInfo, float hideTextTime)
{
bool flag = false;
ClassCharaPrm.EmotionType emotion_id = (ClassCharaPrm.EmotionType)emotionInfo.emotion_id;
if ((uint)(emotion_id - 15) <= 4u || emotion_id == ClassCharaPrm.EmotionType.STORY_LOSE)
{
flag = true;
}
string voiceId = emotionInfo.GetVoiceId(IsSkinEvolved());
string text = emotionInfo.GetText(IsSkinEvolved());
if (flag)
{
return PlayEmotion(emotionInfo.motion_id, emotionInfo.face_id, voiceId, text, hideTextTime, flag);
}
if (true /* Pre-Phase-5b: IsWatchBattle const-false */)
{
return PlayEmotion(emotionInfo.motion_id, emotionInfo.face_id, voiceId, text, hideTextTime, flag);
}
return NullVfx.GetInstance();
}
public virtual VfxBase PlayEmotion(ClassCharaPrm.MotionType motionType, ClassCharaPrm.FaceType faceType, string voiceId, string text)
{
return PlayEmotion(motionType, faceType, voiceId, text, 1.5f);

View File

@@ -80,8 +80,6 @@ public class CardSelectListUI_State_CardDrag : MecanimStateBase
public bool ImmediateMove { get; set; }
public bool IsDraggableMaintenance { get; set; }
public Action<int> AddCardForSameCardSwipe { get; set; }
public void SetMyRotationInfo(MyRotationInfo info, FilterController.MyRotationFilterType filterType)

View File

@@ -49,21 +49,6 @@ public class AIDataLibrary
setupInfoBuf = new AISetUpData(classID, logicLv, deckName, styleName, emoteName, useEmote, useInnerEmote, enemyAiID, specialAbilityList);
}
public AIStyleData CreateStyle(int enemyClassID, AIStyleData deckStyle)
{
AIStyleData aIStyleData = new AIStyleData(new List<AICategory>
{
AICategory.ALL,
AIPolicyData.ConvertClassIDToCategory(enemyClassID)
});
aIStyleData.MixInStyle(_commonStyle);
if (deckStyle != null)
{
aIStyleData.MixInStyle(deckStyle);
}
return aIStyleData;
}
public void RegisterBasicData(AICardDataAsset asset)
{
_basicDic.RegisterCardData(asset);

View File

@@ -1,232 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Cute;
using UnityEngine;
using Wizard.Battle.View;
using Wizard.RoomMatch;
namespace Wizard;
public class AvatarAbilityDetailDialog : MonoBehaviour
{
[SerializeField]
private UITexture _characterTexture;
[SerializeField]
private UILabel _characterName;
[SerializeField]
private UILabel _characterHBP;
[SerializeField]
private UISprite _classIcon;
[SerializeField]
private GameObject _itemRoot;
[SerializeField]
private UILabel _passiveAbilityDescLabel;
[SerializeField]
private List<UILabel> _abilityDescLabel = new List<UILabel>();
[SerializeField]
private GameObject _passiveKeyWordCollider;
[SerializeField]
private List<GameObject> _keyWordCollider = new List<GameObject>();
[SerializeField]
private List<UIWidget> _abilityItemRoot = new List<UIWidget>();
[SerializeField]
private UIWidget _passiveAbilityRoot;
[SerializeField]
private GameObject _thirdUnderLine;
[SerializeField]
private List<UILabel> _costLabel = new List<UILabel>();
[SerializeField]
private List<UILabel> _signLabel = new List<UILabel>();
[SerializeField]
private UIScrollView _scrollView;
private DeckData _deckData;
private AvatarBattleInfo _avatarBattleInfo;
private static DialogBase _avatarAbilityDialog;
private static DialogBase _keywordDialog;
private List<string> _loadList = new List<string>();
public static void Create(AvatarBattleInfo avatarBattleInfo, DeckData deck)
{
GameObject gameObject = UnityEngine.Object.Instantiate(Resources.Load("UI/layoutParts/AvatarAbilityDetailDialog")) as GameObject;
string titleLabel = Data.SystemText.Get("HeroesBattle_0006");
_avatarAbilityDialog = UIManager.GetInstance().CreateDialogClose();
_avatarAbilityDialog.SetTitleLabel(titleLabel);
_avatarAbilityDialog.SetSize(DialogBase.Size.L);
_avatarAbilityDialog.SetButtonLayout(DialogBase.ButtonLayout.CloseBtn);
_avatarAbilityDialog.SetObj(gameObject);
gameObject.GetComponent<AvatarAbilityDetailDialog>().Initialize(avatarBattleInfo, deck);
}
private void Initialize(AvatarBattleInfo avatarBattleInfo, DeckData deck)
{
_deckData = deck;
_avatarBattleInfo = avatarBattleInfo;
_itemRoot.SetActive(value: false);
RoomBase.StartDialogLoading();
UIManager.GetInstance().createInSceneCenterLoading();
StartCoroutine(LoadResources(deck.GetSkinId(), delegate
{
StartCoroutine(SetResources());
}));
}
private IEnumerator SetResources()
{
ClassCharacterMasterData charaPrmByCharaId = null; // Pre-Phase-5b: no chara master headless
InitializeClassCharacter(_deckData.GetSkinId());
InitializeDescLabel(_avatarBattleInfo);
_characterName.text = charaPrmByCharaId.chara_name;
_characterHBP.text = _avatarBattleInfo.Bonus.BattleStartFirstPlayerTurnBp.ToString();
ClassCharaPrm.SetClassLabelSetting(_characterName, charaPrmByCharaId.clan);
_classIcon.spriteName = ClassCharaPrm.GetIconSpriteName(charaPrmByCharaId.clan);
_itemRoot.SetActive(value: true);
yield return null;
_scrollView.GetComponent<FlexibleGrid>().Reposition();
_scrollView.ResetPosition();
UIManager.GetInstance().closeInSceneCenterLoading();
RoomBase.FinishDiloagLoading();
}
private void InitializeDescLabel(AvatarBattleInfo avatarBattleInfo)
{
string allAbilityText = avatarBattleInfo.Bonus.PassiveAbilityDesc;
string[] abilityDesc = avatarBattleInfo.Bonus.AbilityDesc;
foreach (string text in abilityDesc)
{
allAbilityText += text;
}
if (avatarBattleInfo.Bonus.PassiveAbilityDesc == string.Empty)
{
_passiveAbilityRoot.gameObject.SetActive(value: false);
_passiveAbilityRoot.transform.localPosition = new Vector3(0f, 140f, 0f);
}
else
{
_passiveAbilityDescLabel.SetWrapText(BattleCardBase.ConvertSkillDescriptionText(avatarBattleInfo.Bonus.PassiveAbilityDesc));
UIEventListener.Get(_passiveAbilityDescLabel.gameObject).onClick = delegate
{
OnClickDescLabel(allAbilityText, _passiveAbilityDescLabel);
};
UIEventListener.Get(_passiveKeyWordCollider).onPress = delegate(GameObject g, bool b)
{
BattlePlayerView.PressKeyWordColorChange(_passiveAbilityDescLabel, b);
};
UIEventListener.Get(_passiveKeyWordCollider).onDragStart = delegate
{
BattlePlayerView.SetKeyWordLabelColor(_passiveAbilityDescLabel);
};
_passiveAbilityRoot.height = _passiveAbilityDescLabel.height;
_passiveAbilityDescLabel.GetComponent<BoxCollider>().size = new Vector3(_passiveAbilityRoot.localSize.x, _passiveAbilityRoot.localSize.y + 22f, 0f);
}
if (avatarBattleInfo.Bonus.AbilityCosts.Length < 3 || avatarBattleInfo.Bonus.AbilityDesc.Length < 3)
{
_abilityItemRoot[2].gameObject.SetActive(value: false);
_thirdUnderLine.SetActive(value: false);
}
for (int num = 0; num < avatarBattleInfo.Bonus.AbilityDesc.Length; num++)
{
int textNum = num;
_abilityDescLabel[textNum].SetWrapText(BattleCardBase.ConvertSkillDescriptionText(avatarBattleInfo.Bonus.AbilityDesc[textNum]));
UIEventListener.Get(_abilityDescLabel[textNum].gameObject).onClick = delegate
{
OnClickDescLabel(allAbilityText, _abilityDescLabel[textNum]);
};
UIEventListener.Get(_keyWordCollider[textNum]).onPress = delegate(GameObject g, bool b)
{
BattlePlayerView.PressKeyWordColorChange(_abilityDescLabel[textNum], b);
};
UIEventListener.Get(_keyWordCollider[textNum]).onDragStart = delegate
{
BattlePlayerView.SetKeyWordLabelColor(_abilityDescLabel[textNum]);
};
_abilityItemRoot[textNum].height = 60;
if (_abilityItemRoot[textNum].height < _abilityDescLabel[textNum].height)
{
_abilityItemRoot[textNum].height = _abilityDescLabel[textNum].height;
}
_abilityDescLabel[textNum].GetComponent<BoxCollider>().size = new Vector3(_abilityItemRoot[textNum].localSize.x, _abilityItemRoot[textNum].localSize.y + 22f, 0f);
_abilityDescLabel[textNum].GetComponent<BoxCollider>().center = new Vector3(-22f, 0f, 0f);
if (!int.TryParse(avatarBattleInfo.Bonus.AbilityCosts[textNum], out var result))
{
_signLabel[textNum].text = "-";
_costLabel[textNum].text = "X";
}
else if (result != 0)
{
_signLabel[textNum].text = ((result < 0) ? "-" : "+");
_costLabel[textNum].text = Mathf.Abs(result).ToString();
}
else
{
_signLabel[textNum].text = string.Empty;
_costLabel[textNum].text = "0";
_costLabel[textNum].transform.localPosition = new Vector3(0f, 2f, 0f);
}
}
}
private void OnClickDescLabel(string abilityText, UILabel textLabel)
{
if (HasKeyword(abilityText))
{
IList<string> keywords = BattleKeywordInfoListMgr.GetKeywords(abilityText);
_keywordDialog = BattlePlayerView.CreateKeyPanel(textLabel, keywords, CardMaster.CardMasterId.Default);
_keywordDialog.SetPanelDepth(20, isSetBackViewDepthImmediately: true);
_keywordDialog.GetComponentInChildren<BattleKeywordInfoListMgr>().SetPanelDepth(25);
}
}
private bool HasKeyword(string skillText)
{
IList<string> keywords = BattleKeywordInfoListMgr.GetKeywords(skillText);
bool result = false;
foreach (string item in keywords)
{
if (Data.Master.BattleKeyWordDic.ContainsKey(item))
{
result = true;
break;
}
}
return result;
}
private IEnumerator LoadResources(int skinId, Action callBack)
{
_loadList.Add(GetCharacterTexturePath(skinId, isFetch: false));
yield return StartCoroutine(Toolbox.ResourcesManager.LoadAssetGroupAsync(_loadList, null));
callBack.Call();
}
private string GetCharacterTexturePath(int skinId, bool isFetch)
{
return Toolbox.ResourcesManager.GetAssetTypePath(skinId.ToString("00"), ResourcesManager.AssetLoadPathType.ClassCharaSkinThumbnail, isFetch);
}
private void InitializeClassCharacter(int skinId)
{
_characterTexture.mainTexture = Toolbox.ResourcesManager.LoadObject(GetCharacterTexturePath(skinId, isFetch: true)) as Texture;
}
}

View File

@@ -15,13 +15,6 @@ public class CardCreateTask : BaseTask
base.type = ApiType.Type.CardCreate;
}
public void SetParameter(IDictionary<string, string> card_id_number_dict)
{
CardCreateTaskParam cardCreateTaskParam = new CardCreateTaskParam();
cardCreateTaskParam.card_id_number_array = JsonMapper.ToJson(card_id_number_dict);
base.Params = cardCreateTaskParam;
}
protected override int Parse()
{
int num = base.Parse();

View File

@@ -15,13 +15,6 @@ public class CardDestructTask : BaseTask
base.type = ApiType.Type.CardDestruct;
}
public void SetParameter(IDictionary<string, string> card_id_number_dict)
{
CardDestructTaskParam cardDestructTaskParam = new CardDestructTaskParam();
cardDestructTaskParam.card_id_number_array = JsonMapper.ToJson(card_id_number_dict);
base.Params = cardDestructTaskParam;
}
protected override int Parse()
{
int num = base.Parse();

View File

@@ -97,15 +97,6 @@ public class ClassCharacterMasterData
return Data.Master.GetClassCharaText(id);
}
public void Acquired()
{
if (!IsAcquired)
{
IsAcquired = true;
IsNew = true;
}
}
public void UnsetNew()
{
IsNew = false;

View File

@@ -1,9 +0,0 @@
namespace Wizard;
public class GenerateDeckImageMaintenanceTask : BaseTask
{
public GenerateDeckImageMaintenanceTask()
{
base.type = ApiType.Type.GenerateDeckImageMaintenance;
}
}

View File

@@ -1,100 +0,0 @@
using System;
using System.Text;
using Cute;
using UnityEngine;
using UnityEngine.Networking;
namespace Wizard;
public class GenerateDeckImageTask : BaseTask
{
public class GenerateDeckCodeTaskParam : BaseParam
{
public int clan;
public int deck_format;
public int[] cardID;
public int[] phantomCardID;
public string rotation_id;
}
public class GenerateDeckCodeTaskUseSubClassParam : BaseParam
{
public int clan;
public int sub_clan;
public int deck_format;
public int[] cardID;
public int[] phantomCardID;
}
public override string Url
{
get
{
string arg = Data.SystemText.Get("System_0045");
string arg2 = string.Format(ApiType.ApiList[base.type], arg);
return $"{CustomPreference.GetDeckBuilderServerURL()}{arg2}";
}
}
public byte[] ImageBytes { get; private set; }
public string TwitterMessage { get; private set; }
public GenerateDeckImageTask()
{
base.type = ApiType.Type.GenerateDeckImage;
base.CallbackOnUnityWebRequestDone = HandleResponseData;
}
public void SetParameter(int clan_id, GenerateDeckCodeTask.SubmitDeckType type, int[] card_id_array, string rotationId, int[] phantomCardIdList = null)
{
GenerateDeckCodeTaskParam generateDeckCodeTaskParam = new GenerateDeckCodeTaskParam();
generateDeckCodeTaskParam.clan = clan_id;
generateDeckCodeTaskParam.deck_format = (int)type;
generateDeckCodeTaskParam.cardID = card_id_array;
generateDeckCodeTaskParam.phantomCardID = phantomCardIdList;
generateDeckCodeTaskParam.rotation_id = rotationId;
base.Params = generateDeckCodeTaskParam;
}
public void SetParameter(int mainClassId, int subClassId, GenerateDeckCodeTask.SubmitDeckType type, int[] card_id_array, int[] phantomCardIdList = null)
{
GenerateDeckCodeTaskUseSubClassParam generateDeckCodeTaskUseSubClassParam = new GenerateDeckCodeTaskUseSubClassParam();
generateDeckCodeTaskUseSubClassParam.clan = mainClassId;
generateDeckCodeTaskUseSubClassParam.sub_clan = subClassId;
generateDeckCodeTaskUseSubClassParam.deck_format = (int)type;
generateDeckCodeTaskUseSubClassParam.cardID = card_id_array;
generateDeckCodeTaskUseSubClassParam.phantomCardID = phantomCardIdList;
base.Params = generateDeckCodeTaskUseSubClassParam;
}
private void HandleResponseData(UnityWebRequest www)
{
if (www.GetResponseHeaders().TryGetValue("X-TWITTER-MESSAGE", out var value))
{
byte[] bytes = Convert.FromBase64String(value);
TwitterMessage = Encoding.UTF8.GetString(bytes);
}
SaveImageToBytes(www);
if (base.CallbackOnSuccess != null)
{
base.CallbackOnSuccess(ResultCode.Success);
}
}
private void SaveImageToBytes(UnityWebRequest www)
{
Texture2D texture2D = new Texture2D(1, 1);
texture2D.LoadImage(www.downloadHandler.data);
ImageBytes = texture2D.EncodeToPNG();
UnityEngine.Object.Destroy(texture2D);
}
}

View File

@@ -92,8 +92,6 @@ public class Master
public Dictionary<string, Dictionary<ClassCharaPrm.EmotionType, Emotion>> _emotionDic { get; set; }
public PracticeAISettingDataSet PracticeAISettingList { get; set; }
public StoryAISettingDataSet QuestAISettingList { get; set; }
public List<string> AICommonFileNameList { get; set; }
@@ -499,21 +497,6 @@ public class Master
}
}
public void LoadAICsv(AICsvLoadingInfo info, Action callBack)
{
List<string> aiPaths = new List<string>();
RegisterAICommonCsvPath(aiPaths);
RegisterAIIndividualCsvPath(aiPaths, info);
Toolbox.ResourcesManager.StartCoroutine_LoadAssetGroupSync(aiPaths, delegate
{
StartLoadAIBasicAndCommonData();
StartLoadAIIndividualData(info);
/* Pre-Phase-5b: RegisterAllAIData dropped */
Toolbox.ResourcesManager.RemoveAssetGroup(aiPaths);
callBack.Call();
});
}
private void RegisterAICommonCsvPath(List<string> aiPaths)
{
aiPaths.Add(Toolbox.ResourcesManager.GetAssetTypePath("ai_basic", ResourcesManager.AssetLoadPathType.Master));

View File

@@ -12,11 +12,6 @@ public class MissionInfoTask : BaseTask
public long RequestTime { get; private set; }
public long NowUnixTime()
{
return ServerTime - RequestTime + (long)Time.realtimeSinceStartup;
}
public MissionInfoTask()
{
base.type = ApiType.Type.MissionInfo;

View File

@@ -245,8 +245,6 @@ public class PlayerStaticData : MonoBehaviour
public static TimeData UserTime = new TimeData();
public static int UserViewerID => 0; // Pre-Phase-5 chunk 39: aliased Certification.ViewerId — client-only UI accessor, dead headless
public static string UserRegionCode => PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.CURRENT_REGION_CODE);
public static AgreementState KorAuthorityAgreementState { get; set; } = AgreementState.NotAgree;
@@ -417,13 +415,6 @@ public class PlayerStaticData : MonoBehaviour
return Data.Load.data._userRank[(int)inFormat].rank;
}
public static int UserRankHighAllFormat()
{
int val = UserRank(Format.Rotation);
int val2 = UserRank(Format.Unlimited);
return Math.Max(val, val2);
}
public static void LoadUserRankTexture(Format inFormat)
{
UserRankTexture.Format = inFormat;

View File

@@ -11,9 +11,4 @@ public class PracticeAISettingDataSet
{
_dataTable = new List<PracticeAISettingData>();
}
public PracticeAISettingData GetSettingData(int classId, int difficulty)
{
return _dataTable.First((PracticeAISettingData d) => d.ClassId == classId && d.Difficulty == difficulty);
}
}

View File

@@ -1,24 +0,0 @@
namespace Wizard;
public class PracticeStartTask : BaseTask
{
public PracticeStartTask()
{
base.type = ApiType.Type.PracticeStart;
}
protected override int Parse()
{
DataMgr dataMgr = null; // Pre-Phase-5b: headless has no DataMgr
int num = base.Parse();
if (num != 1)
{
return num;
}
if (base.ResponseData["data"].Keys.Contains("mission_parameter"))
{
dataMgr.SetMissionNecessaryInformation(base.ResponseData["data"]["mission_parameter"]);
}
return num;
}
}

View File

@@ -125,16 +125,6 @@ public class QuestLastUsedDeckSaveDataManager
}
}
public void SaveDeck(int stage, DeckData deckData)
{
ExtractedDeckData extractedDeckData = new ExtractedDeckData(deckData);
if (!_saveData.StageDeckTable.TryGetValue(stage, out var value) || !(extractedDeckData == value))
{
_saveData.StageDeckTable[stage] = extractedDeckData;
Save();
}
}
private static SaveData DeserializeSaveData(string serializedData)
{
if (serializedData == string.Empty)

View File

@@ -12,9 +12,7 @@ public class QuestSelectionPage : UIBase
{
public enum FirstSelectType
{
NONE,
PUZZLE,
BOSS_RUSH }
NONE}
[SerializeField]
private UISpriteAtlasOverwriter _spriteAtlasOverwriter;

View File

@@ -21,14 +21,6 @@ public class QuestStartTask : BaseTask
base.type = (isPuzzle ? ApiType.Type.QuestPuzzleStart : ApiType.Type.QuestStart);
}
public void SetParameter(int questStageId, int extraDeckScheduleId)
{
QuestStartTaskParam questStartTaskParam = new QuestStartTaskParam();
questStartTaskParam.quest_stage_id = questStageId;
questStartTaskParam.extra_deck_schedule_id = extraDeckScheduleId;
base.Params = questStartTaskParam;
}
public void SetParameterForPuzzle(int puzzleId)
{
base.Params = new QuestStartTaskParamForPuzzle

View File

@@ -26,8 +26,6 @@ public class SealedData
public List<int> SortedOwnSealedCardList => _sortedSealedCardInfoList.SelectMany((SealedCardInfo x) => Enumerable.Repeat(x.SealedCardId, x.OwnNum)).ToList();
public List<int> SortedDeckOriginalCardList => _sortedSealedCardInfoList.SelectMany((SealedCardInfo x) => Enumerable.Repeat(x.OriginalCardId, x.DeckUsingNum)).ToList();
private List<int> SortedDeckSealedCardList => _sortedSealedCardInfoList.SelectMany((SealedCardInfo x) => Enumerable.Repeat(x.SealedCardId, x.DeckUsingNum)).ToList();
public int[] DeckOriginalExcludedPhantomCardList => _sortedSealedCardInfoList.Where((SealedCardInfo x) => !x.IsPhantom).SelectMany((SealedCardInfo x) => Enumerable.Repeat(x.OriginalCardId, x.DeckUsingNum)).ToArray();

View File

@@ -15,8 +15,6 @@ public class ShopDrumrollScrollItem : MonoBehaviour
[SerializeField]
private GameObject _objBadge;
private List<string> _assetPathList = new List<string>();
private void Awake()
{
_ = _objNewMark != null;

View File

@@ -7,11 +7,6 @@ public class SpotCardData
{
private Dictionary<int, int> _spotCardDict = new Dictionary<int, int>();
public bool ExistsSpotCard()
{
return _spotCardDict.Count > 0;
}
public bool ExistsSpotCard(int cardId)
{
return _spotCardDict.ContainsKey(cardId);
@@ -24,12 +19,6 @@ public class SpotCardData
return value;
}
public void SetSpotCardNum(int cardId, int num)
{
_spotCardDict[cardId] = num;
/* Pre-Phase-5b: SetDirtyPossessionCardDict dropped */
}
public Dictionary<int, int> CreateDictionaryIncludingSpotCard(IDictionary<int, int> srcDict)
{
Dictionary<int, int> dictionary = new Dictionary<int, int>(srcDict);

View File

@@ -6,27 +6,10 @@ public static class ToolboxGame
{
public static UIManager UIManager = null;
public static RealTimeNetworkAgent RealTimeNetworkAgent
{
// Instance-backed via BattleManagerBase.InstanceNetworkAgent (Phase 5, chunk 40 — ambient
// fallback dropped after chunk 38 converted all 60 consumers to per-mgr reads).
get => BattleManagerBase.GetIns()?.InstanceNetworkAgent;
}
public static void SetRealTimeNetworkBattle(RealTimeNetworkAgent agent)
{
var mgr = BattleManagerBase.GetIns()
?? throw new System.InvalidOperationException("SetRealTimeNetworkBattle called with no attached mgr.");
mgr.InstanceNetworkAgent = agent;
}
public static void DestroyNetworkAgent()
{
var mgr = BattleManagerBase.GetIns();
if (mgr?.InstanceNetworkAgent is { } m)
{
Object.DestroyImmediate(m.gameObject);
mgr.InstanceNetworkAgent = null;
}
}
}

View File

@@ -22,7 +22,6 @@ public partial class BattleLogManager
public static BattleLogManager GetInstance() => _instance ??= new BattleLogManager(); // HEADLESS-FIX (M9): non-null singleton so the draw's unguarded BattleLog tail (UpdateFusionedCardSkillDrewCard, and the IsBattleLog AddLogSkillDrawCard calls) no-ops instead of NRE on a null instance
private BattleLogManager() { }
public void SetUp(Transform parent, BattleManagerBase battleMgr, OperateMgr operateMgr, BattlePlayer battlePlayer) { }
public void Clear() { }
public void ClearDestroyedCardList(bool isPlayer) { }
public void SetActiveShowButton(bool isActive) { }
public void HideLog() { }

View File

@@ -15,7 +15,6 @@ public partial class BattlePlayerView
public BattlePlayerView(BattlePlayer battlePlayer) { }
public static bool HasKeyword(CardParameter cardParameter) => default!;
public bool IsMoving() => default!;
public static DialogBase CreateKeyPanel(UILabel label, IList<string> keywordList, CardMaster.CardMasterId cardMasterId) => default!;
public static DialogBase CreateKeyPanel(string skillDescription, UILabel label, CardMaster.CardMasterId cardMasterId) => default!;
public static void PressKeyWordColorChange(UILabel label, bool press) { }
public static void SetKeyWordLabelColor(UILabel label, string colorCode = "[ffcd45]") { }

View File

@@ -8,7 +8,5 @@ public partial class GameObjMgr
public void DisposeUIGameObj() { }
public GameObject AddUIContainerChildPrefab(string str) => default!;
public GameObject AddUIManagerRootChildPrefab(string str) => default!;
public GameObject GetUIContainer() => default!;
public Camera GetUIContainerCam() => default!;
public GameObject GetSubUIContainer() => default!;
}

View File

@@ -7,12 +7,6 @@ namespace Wizard
public partial class MailTopTask
{
public partial class MailTopTaskParam { }
public int? LastPageRead { get; set; }
public long ServerTime { get; set; }
public long RequestTime { get; set; }
public MailTopTask() { }
public void SetToFirstPage() { }
public void SetParameter(bool isTutorial) { }
public void SetParameterToNextPage() { }
}
}

View File

@@ -112,7 +112,6 @@ public partial class UIManager
public void closeInSceneCenterLoading(bool force = true, bool disableCollider = false) { }
public LoadingInScene createInSceneLoadingMatching(bool notBlack = false, bool notCollider = false) => default!;
public LoadingInScene CloseInSceneLoadingMatching() => default!;
public LoadingInScene CloseInSceneLoadingBattle() => default!;
public void createInSceneNotNetwork() { }
public void closeInSceneNotNetwork() { }
public void CreatFadeOpen(Action onFinishCallback = null) { }

View File

@@ -14,7 +14,6 @@ public partial class UIManager
{
public partial class ChangeViewSceneParam
{
public Action OnBeforeChange { get; set; }
public Action OnChange { get; set; }
public bool IsShow_CardIntroduction { get; set; }
public int MyPageMenuIndex { get; set; }

View File

@@ -15,30 +15,17 @@ public class EffectMgr
{
public enum EffectType
{
NONE, CMN_CARD_DRAW_2, CMN_CARD_SET_1, CMN_CARD_SET_2, CMN_CARD_SET_3, CMN_CARD_ACCELERATE_1, CMN_CARD_CRYSTALLIZE_1, CMN_CARD_TARGET_1, CMN_CARD_TARGET_2, CMN_CARD_SELECT_3, CMN_UI_TURN_1, CMN_UI_TURN_5, CMN_UI_TURN_6, CMN_FRAME_BTN_1, CMN_RESULT_TITLE_2, CMN_RESULT_TITLE_3, CMN_FIELD_SET_1, CMN_FIELD_SET_2, CMN_FIELD_SET_3, CMN_FIELD_SET_4, CMN_FIELD_SET_5, CMN_FIELD_SET_6, CMN_FIELD_SET_7, CMN_FIELD_SET_8, CMN_FIELD_SET_9, CMN_FIELD_SET_10, CMN_FIELD_SET_20, CMN_FIELD_SET_21, CMN_FIELD_SET_22, CMN_FIELD_SET_23, CMN_FIELD_SET_30, CMN_FIELD_SET_31, CMN_FIELD_SET_32, CMN_FIELD_SET_33, CMN_FIELD_SET_34, CMN_FIELD_SET_41, CMN_FIELD_SET_42, CMN_FIELD_SET_43, CMN_FIELD_SET_51, CMN_FIELD_SET_52, CMN_FIELD_SET_61, CMN_FIELD_SET_62, CMN_FIELD_SET_71, CMN_FIELD_SET_72, CMN_FIELD_SET_74, CMN_FIELD_SET_76, CMN_FIELD_SET_1001, CMN_FIELD_SET_1002, CMN_FIELD_SET_1003, CMN_FIELD_SET_1004, CMN_FIELD_SET_1005, CMN_FIELD_SET_1006, CMN_FIELD_SET_1007, CMN_FIELD_SET_1008, CMN_FIELD_SET_1009, CMN_FIELD_SET_1010, CMN_FIELD_SET_1011, CMN_FIELD_SET_1012, CMN_FIELD_TAP_1_1, CMN_FIELD_TAP_1_2, CMN_FIELD_TAP_2_1, CMN_FIELD_TAP_3_1, CMN_FIELD_TAP_3_2, CMN_FIELD_TAP_4_1, CMN_FIELD_TAP_4_2, CMN_FIELD_TAP_5_1, CMN_FIELD_TAP_6_1, CMN_FIELD_TAP_6_2, CMN_FIELD_TAP_7_1, CMN_FIELD_TAP_8_1, CMN_FIELD_TAP_9_1, CMN_FIELD_TAP_10_1, CMN_FIELD_TAP_10_2, CMN_FIELD_TAP_20_1, CMN_FIELD_TAP_20_2, CMN_FIELD_TAP_21_1, CMN_FIELD_TAP_21_2, CMN_FIELD_TAP_22_1, CMN_FIELD_TAP_23_1, CMN_FIELD_TAP_23_2, CMN_FIELD_TAP_30_1, CMN_FIELD_TAP_31_1, CMN_FIELD_TAP_31_2, CMN_FIELD_TAP_32_1, CMN_FIELD_TAP_33_1, CMN_FIELD_TAP_33_2, CMN_FIELD_TAP_34_1, CMN_FIELD_TAP_41_1, CMN_FIELD_TAP_42_1, CMN_FIELD_TAP_43_1, CMN_FIELD_TAP_51_1, CMN_FIELD_TAP_52_1, CMN_FIELD_TAP_61_1, CMN_FIELD_TAP_61_2, CMN_FIELD_TAP_62_1, CMN_FIELD_TAP_71_1, CMN_FIELD_TAP_72_1, CMN_FIELD_TAP_74_1, CMN_FIELD_TAP_76_1, CMN_FIELD_TAP_1001_1, CMN_FIELD_TAP_1002_1, CMN_FIELD_TAP_1003_1, CMN_FIELD_TAP_1004_1, CMN_FIELD_TAP_1005_1, CMN_FIELD_TAP_1006_1, CMN_FIELD_TAP_1007_1, CMN_FIELD_TAP_1007_2, CMN_FIELD_TAP_1008_1, CMN_FIELD_TAP_1009_1, CMN_FIELD_TAP_1010_1, CMN_FIELD_TAP_1011_1, CMN_FIELD_TAP_1012_1, CMN_TUTORIAL_TAP_1, CMN_CRAFT_CARD_1, CMN_CRAFT_CARD_2, CMN_CRAFT_ICON_1, CMN_CRAFT_TRACK_1, CMN_CRAFT_SPLASH_1, CMN_CRAFT_SPLASH_2, CMN_CRAFT_SPLASH_3, CMN_CRAFT_SPLASH_4, CMN_MAP_CHAPTER_1, CMN_MAP_MAPICON_CLEARED, CMN_MAP_MAPICON_NOTCLEARED, CMN_MAP_PLAYERICON, }
NONE, CMN_CARD_DRAW_2, CMN_CARD_SET_1, CMN_CARD_SET_2, CMN_CARD_SET_3, CMN_CARD_ACCELERATE_1, CMN_CARD_CRYSTALLIZE_1, CMN_CARD_TARGET_1, CMN_CARD_TARGET_2, CMN_CARD_SELECT_3, CMN_UI_TURN_1, CMN_UI_TURN_5, CMN_UI_TURN_6, }
public static System.Collections.IEnumerator LoadAndInstantiate2dEffectCoroutine(string effectName, System.Action<UnityEngine.GameObject, System.Collections.Generic.List<string>> finishCallback) { yield break; }
public enum MoveType
{
NONE, SKIP, DIRECT, DIRECT_HAND, DIRECT_DECK, DIRECT_LEADER, CENTER }
public enum TargetType { NONE, NONE_WAIT, SINGLE, SINGLE_ONLY_OPPONENT, AREA_ALL, AREA_OPPONENT, AREA_SELF }
public enum EngineType { NONE, SHURIKEN}
public bool IsFieldEffectReady => true;
public bool IsBattleUIEffectReady => true;
public Effect Start(EffectType type, Vector3 pos, Quaternion rot, int layer = -1) => null;
public Effect Start(EffectType type, Vector3 pos, GameObject obj = null) => null;
public Effect Start(EffectType type, float posX, float posY) => null;
public Effect Start(EffectType type) => null;
public Effect StartBuff(EffectType type, GameObject obj) => null;
public Effect StopBuff(EffectType type, GameObject obj) => null;
public Effect Stop(EffectType type) => null;
public List<string> InitCommonEffect(string filePath, bool isBattle = false, bool isField = false, bool isBattleEffect = false, Action callback = null) => new List<string>();
public List<string> SetUIParticleShader(List<GameObject> effectObjList, Action callback, bool isBattle = false, bool isField = false) => new List<string>();
public List<string> SetUIParticleShader(GameObject effectObj, Action callback, bool isBattle = false, bool isField = false) => new List<string>();
public void ChangeMaskShader(GameObject effectObj, int stencil = 1) { }
public void DisposeLatestMadeEffects() { }
public void ClearLastCacheEffect() { }
public void DestroyBattleEffectContainer() { }
public void ImmediateDestroyBattleEffectContainer() { }
public void ClearBattleFeildEffect() { }
public void RestUnneededEffect() { }
@@ -53,18 +40,9 @@ public partial class GameObjMgr { public GameObjMgr() { } }
public class GameMgr
{
// Phase-5 chunk 47: the ambient is gone. GameMgr.GetIns() has no scope-based mechanism —
// BattleManagerBase.GetIns() returns null unconditionally, and every direct engine consumer
// was migrated to per-mgr reads through the mgr's own `.GameMgr` property. The residual
// static throws to catch any straggler that still calls it; MultiInstanceEngineTests pins
// the null-null-throw shape.
public static GameMgr GetIns() =>
throw new System.InvalidOperationException(
"GameMgr.GetIns() is retired. Read via `mgr.GameMgr` on a BattleManagerBase instance.");
public GameObject m_GameManagerObj;
public float ScreenAspect = 1.777f;
public DateTime AnnounceTime;
// Six mode flags collapsed to const-false getters in Phase 4 (2026-07-02): headless
// is neither watching, replaying, admin-watching, an AI-network client, a puzzle
@@ -101,12 +79,6 @@ public class GameMgr
public BattleControl GetBattleCtrl() => _battleCtrl ??= new BattleControl();
public NetworkUserInfoData GetNetworkUserInfoData() => _netUser;
public void SetNetworkUserInfoData(NetworkUserInfoData infoData) => _netUser = infoData;
public Wizard.MailTopTask GetMailTopTask() => null;
public Wizard.DeckUpdateTask GetDeckUpdateTask() => null;
public Wizard.CardDestructTask GetCardDestructTask() => null;
public Wizard.CardCreateTask GetCardCreateTask() => null;
public Wizard.MissionInfoTask GetMissionInfoTask() => null;
public void DestroyBattleManagements() { }
public bool IsUseUnapprovedList(bool isPlayer) => false;
}

View File

@@ -50,7 +50,7 @@ namespace UnityEngine
public static AsyncOperation UnloadUnusedAssets() => null;
}
public class ResourceRequest : AsyncOperation { public Object asset => null; }
public class ResourceRequest : AsyncOperation { }
public enum KeyCode
{

View File

@@ -271,7 +271,6 @@ namespace UnityEngine
public int sortingOrder { get; set; }
}
public class MeshRenderer : Renderer { }
public class SkinnedMeshRenderer : Renderer { }
public class SpriteRenderer : Renderer { public Color color { get; set; } }
public class MeshFilter : Component { public Mesh mesh { get; set; } public Mesh sharedMesh { get; set; } }
public class ParticleSystem : Component

View File

@@ -32,7 +32,6 @@ namespace UnityEngine
public bool hasChanged { get; set; }
public Matrix4x4 localToWorldMatrix => default;
public Matrix4x4 worldToLocalMatrix => default;
public void Rotate(float x, float y) { }
public void Translate(Vector3 translation, Space relativeTo) { }
public void Rotate(Vector3 eulers, Space relativeTo) { }
}
@@ -75,8 +74,6 @@ namespace UnityEngine
public partial class Texture2D
{
public byte[] EncodeToPNG() => Array.Empty<byte>();
public bool LoadImage(byte[] data) => false;
}
public partial class Sprite