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:
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -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();
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
namespace Wizard;
|
||||
|
||||
public class GenerateDeckImageMaintenanceTask : BaseTask
|
||||
{
|
||||
public GenerateDeckImageMaintenanceTask()
|
||||
{
|
||||
base.type = ApiType.Type.GenerateDeckImageMaintenance;
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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));
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -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)
|
||||
|
||||
@@ -12,9 +12,7 @@ public class QuestSelectionPage : UIBase
|
||||
{
|
||||
public enum FirstSelectType
|
||||
{
|
||||
NONE,
|
||||
PUZZLE,
|
||||
BOSS_RUSH }
|
||||
NONE}
|
||||
|
||||
[SerializeField]
|
||||
private UISpriteAtlasOverwriter _spriteAtlasOverwriter;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -15,8 +15,6 @@ public class ShopDrumrollScrollItem : MonoBehaviour
|
||||
[SerializeField]
|
||||
private GameObject _objBadge;
|
||||
|
||||
private List<string> _assetPathList = new List<string>();
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_ = _objNewMark != null;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user