Files
SVSimServer/SVSim.BattleEngine/Engine/Wizard/OptionSettingWindow.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

1233 lines
43 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System;
using System.Collections;
using System.Collections.Generic;
using Cute;
using UnityEngine;
using Wizard.Battle.View.Vfx;
using Wizard.Dialog.Setting;
namespace Wizard;
public class OptionSettingWindow : SettingBase
{
private enum Category
{
SOUND_VISUAL,
BATTLE,
STAGE,
OTHER
}
public enum Shortcut
{
Off,
RightClick,
DoubleClick,
MiddleClick
}
public enum ShortcutDetail
{
RightClick,
MiddleClick,
LongPress,
Auto,
DoubleClick
}
[SerializeField]
private GameObject _soundVisualRoot;
[SerializeField]
private GameObject _battleRoot;
[SerializeField]
private GameObject _stageRoot;
[SerializeField]
private GameObject _otherRoot;
[SerializeField]
private UIButton _buttonSoundVisualForBattleScene;
[SerializeField]
private UIButton _buttonBattleForBattleScene;
[SerializeField]
private UIButton _buttonSoundVisualForRoomScene;
[SerializeField]
private UIButton _buttonBattleForRoomScene;
[SerializeField]
private UIButton _buttonOtherForRoomScene;
[SerializeField]
private UIButton _buttonSoundVisual;
[SerializeField]
private UIButton _buttonBattle;
[SerializeField]
private UIButton _buttonStage;
[SerializeField]
private UIButton _buttonOther;
[SerializeField]
private GameObject _battleSceneRoot;
[SerializeField]
private GameObject _normalSceneRoot;
[SerializeField]
private GameObject _roomSceneRoot;
[SerializeField]
private BattleStageChoiceWindow _activeStageSelectWindow;
private Category _currentCategory;
private readonly List<string> _resolutions = new List<string>
{
"1024×768", "1280×720", "1280×800", "1280×960", "1360×768", "1600×900", "1600×1200", "1680×1050", "1920×1080", "1920×1200",
"2560×1440", "3840×2160"
};
private const int RES_MAX_WIDTH = 3840;
private float _wantedScreenWidth = Screen.width;
private float _wantedScreenHeight = Screen.height;
private static List<string> _battleDetailSizes = new List<string> { "100%", "90%", "80%", "70%", "60%", "50%" };
private static Shortcut? _shortcutPlay;
private static Shortcut? _shortcutEvolution;
private static ShortcutDetail? _shortcutDetail;
private List<string> _mouseShortcuts = new List<string> { "OtherConfig_0042", "OtherConfig_0043", "OtherConfig_0044", "OtherConfig_0052" };
private List<string> _mouseShortcutsDetail = new List<string> { "OtherConfig_0043", "OtherConfig_0052", "OtherConfig_0053", "OtherConfig_0054" };
private bool _startInvitationFriendRoom;
private bool _startInvitationInBattle;
private bool _startInvitationInOffline;
private bool _startReceivedFriendApply;
private const float STAGE_SELECT_LABEL_POSITION_X = -5f;
private const float STAGE_SELECT_SPRITE_POSITION_X = 205f;
public static Shortcut ShortcutPlay
{
get
{
if (!_shortcutPlay.HasValue)
{
_shortcutPlay = (Shortcut)PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_PLAY);
}
return _shortcutPlay.Value;
}
private set
{
PlayerPrefsWrapper.SetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_PLAY, (int)value);
_shortcutPlay = value;
}
}
public static Shortcut ShortcutEvolution
{
get
{
if (!_shortcutEvolution.HasValue)
{
_shortcutEvolution = (Shortcut)PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_EVOLUTION);
}
return _shortcutEvolution.Value;
}
private set
{
PlayerPrefsWrapper.SetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_EVOLUTION, (int)value);
_shortcutEvolution = value;
}
}
public static ShortcutDetail ShortcutDetailPanel
{
get
{
if (!_shortcutDetail.HasValue)
{
_shortcutDetail = (ShortcutDetail)PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_DETAIL);
}
return _shortcutDetail.Value;
}
private set
{
PlayerPrefsWrapper.SetValue(PlayerPrefsWrapper.MOUSE_SHORTCUT_DETAIL, (int)value);
_shortcutDetail = value;
}
}
private UIButton BattleButton
{
get
{
if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Battle)
{
return _buttonBattleForBattleScene;
}
if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Room)
{
return _buttonBattleForRoomScene;
}
return _buttonBattle;
}
}
private UIButton StageButton => _buttonStage;
private UIButton SoundVisualButton
{
get
{
if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Battle)
{
return _buttonSoundVisualForBattleScene;
}
if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Room)
{
return _buttonSoundVisualForRoomScene;
}
return _buttonSoundVisual;
}
}
private UIButton OtherButton
{
get
{
if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Room)
{
return _buttonOtherForRoomScene;
}
return _buttonOther;
}
}
public override void Create()
{
base.Create();
CreateSoundItem();
CreateBattleItem();
CreateStageItem();
CreateOtherItem();
ChangeCategory(Category.SOUND_VISUAL, playSE: false);
SoundVisualButton.onClick.Add(new EventDelegate(delegate
{
ChangeCategory(Category.SOUND_VISUAL, playSE: true);
}));
BattleButton.onClick.Add(new EventDelegate(delegate
{
ChangeCategory(Category.BATTLE, playSE: true);
}));
StageButton.onClick.Add(new EventDelegate(delegate
{
ChangeCategory(Category.STAGE, playSE: true);
}));
OtherButton.onClick.Add(new EventDelegate(delegate
{
ChangeCategory(Category.OTHER, playSE: true);
}));
bool num = UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Battle;
_battleSceneRoot.SetActive(value: false);
_normalSceneRoot.SetActive(value: false);
_roomSceneRoot.SetActive(value: false);
if (num)
{
_battleSceneRoot.SetActive(value: true);
}
else if (UIManager.GetInstance().GetCurrentScene() == UIManager.ViewScene.Room)
{
_roomSceneRoot.SetActive(value: true);
}
else
{
_normalSceneRoot.SetActive(value: true);
}
_startInvitationFriendRoom = Data.Load.data._userConfig.ReceivedInvite;
_startInvitationInBattle = Data.Load.data._userConfig.ReceivedInviteInBattle;
_startInvitationInOffline = Data.Load.data._userConfig.ReceivedInviteInOffline;
_startReceivedFriendApply = Data.Load.data._userConfig.ReceivedFriendApply;
}
private void CreateSoundItem()
{
CreateSoundItem(_soundVisualRoot);
CreateToggle_PlayMusicInBackground(isDispSeparatorLine: true);
CreateSelectResolution(isDispSeparatorLine: true);
CreateToggle_Fullscreen(isDispSeparatorLine: true);
CreateSelect_Fps(isDispSeparatorLine: true);
bool isDispSeparatorLine = false;
CreateToggle_MovieSubtitles(isDispSeparatorLine, _soundVisualRoot);
}
private void CreateBattleItem()
{
bool flag = UIManager.GetInstance().GetCurrentScene() != UIManager.ViewScene.Battle;
bool flag2 = !flag;
bool flag3 = UIManager.GetInstance().GetCurrentScene() != UIManager.ViewScene.Room;
CreateBattleDetailPanelSize(isDispSeparatorLine: true);
CreateToggleBattleLightEffect(isDispSeparatorLine: true);
if (flag)
{
CreateToggle_FoilCardAnimation(isDispSeparatorLine: true);
}
CreateToggle_LeaderAnimation(isDispSeparatorLine: true);
if (flag)
{
CreateToggle_OpponentShowDefaultSkin(isDispSeparatorLine: true);
}
CreateToggle_TurnEndConfirm(isDispSeparatorLine: true);
bool flag4 = Data.MyPageNotifications.data.RoomRule.NormalRuleFormatList.Contains(Format.Avatar);
if ((Data.CurrentFormat == Format.Avatar && flag2) || (flag4 && flag))
{
CreateToggle_TurnEndWithoutUsingHeroSkillConfirm(isDispSeparatorLine: true);
}
CreateToggle_EvolveConfirm(isDispSeparatorLine: true);
CreateToggle_FusionCardPlayConfirm(isDispSeparatorLine: true);
CreateToggle_FixedUseCostInfo(isDispSeparatorLine: true);
CreateToggle_ShowSideLog(isDispSeparatorLine: true);
CreateToggle_OpponentMessageDisplay(isDispSeparatorLine: true);
if (flag && flag3)
{
CreateToggle_Wss(isDispSeparatorLine: true);
CreateToggle_Ipv6(isDispSeparatorLine: true);
}
CreateMouseControl(isDispSeparatorLine: true);
CreateMouseShortcutPlay(isDispSeparatorLine: false);
CreateMouseShortcutEvolution(isDispSeparatorLine: false);
CreateMouseShortcutDetail(isDispSeparatorLine: false);
if (Prediction._isFeatureEnabled)
{
CreateToggle_PredictionIconDisplay(isDispSeparatorLine: true);
}
}
private void CreateStageItem()
{
CreateToggleUseSimpleRoom(isDispSeparatorLine: true);
CreateToggle_UseStageSwitch(isDispSeparatorLine: true);
CreateButtonBattleStageSelect(isDispSeparatorLine: true);
UpdateStageSettingView();
}
private ItemToggle CreateToggleUseSimpleRoom(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SIMPLE_STAGE, isDispSeparatorLine, _stageRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0022"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SIMPLE_STAGE));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SIMPLE_STAGE, item.GetValue());
UpdateStageSettingView();
});
return item;
}
private ItemToggle CreateToggle_UseStageSwitch(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.USE_STAGE_SELECT, isDispSeparatorLine, _stageRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0078"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.USE_OFF_STAGE));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.USE_OFF_STAGE, item.GetValue());
bool toGrey = !item.GetValue();
if ((FindItem(ID.SIMPLE_STAGE) as ItemToggle).GetValue())
{
toGrey = true;
}
(FindItem(ID.STAGE_SELECT) as ItemButton).SetToGrey(toGrey);
});
return item;
}
private ItemButton CreateButtonBattleStageSelect(bool isDispSeparatorLine)
{
ItemButton itemButton = CreateButton(ID.STAGE_SELECT, isDispSeparatorLine, _stageRoot);
itemButton.SetSpriteName("btn_common_02_m_off", isMakePixelPerfect: true, isCollisionResize: true);
itemButton.SetSpriteNameOnPress("btn_common_02_m_on");
itemButton.SetLabelPos(new Vector3(-5f, 0f, 0f));
itemButton.SetSpritePos(new Vector3(205f, 0f, 0f));
SystemText systemText = Data.SystemText;
itemButton.SetValue(systemText.Get("Dia_StageChoice_001"));
itemButton.SetSubLabelPos(new Vector3(-180f, 0f, 0f));
itemButton.SetSubLabelText(systemText.Get("OtherConfig_0075"));
itemButton.AddChangeCallback(delegate
{
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_BTN_DECIDE);
CreateStageChoiceWindow();
});
return itemButton;
}
private void UpdateStageSettingView()
{
ItemToggle itemToggle = FindItem(ID.SIMPLE_STAGE) as ItemToggle;
if (itemToggle != null)
{
bool flag = itemToggle.GetValue();
ItemToggle obj = FindItem(ID.USE_STAGE_SELECT) as ItemToggle;
obj.SetLabelLooks(!flag);
obj.SetToggleLooks(!flag);
if (!obj.GetValue())
{
flag = true;
}
(FindItem(ID.STAGE_SELECT) as ItemButton).SetToGrey(flag);
}
}
private void CreateStageChoiceWindow()
{
BattleStageChoiceWindow stageChoice = UnityEngine.Object.Instantiate(_activeStageSelectWindow);
StartCoroutine(stageChoice.LoadResource(delegate
{
SystemText systemText = Data.SystemText;
DialogBase stageSelectDialog = UIManager.GetInstance().CreateDialogClose();
stageSelectDialog.SetSize(DialogBase.Size.XL);
bool isAllOff = false;
BattleStageChoiceWindow battleStageChoiceWindow = stageChoice;
battleStageChoiceWindow.OnAllOff = (Action<bool>)Delegate.Combine(battleStageChoiceWindow.OnAllOff, (Action<bool>)delegate(bool alloff)
{
isAllOff = alloff;
stageSelectDialog.SetButtonDisable(alloff);
});
stageChoice.Initialize();
stageSelectDialog.SetObj(stageChoice.gameObject);
stageSelectDialog.SetButtonLayout(DialogBase.ButtonLayout.OkBtn);
stageSelectDialog.SetTitleLabel(systemText.Get("Dia_StageChoice_001"));
_dialogObject.gameObject.SetActive(value: false);
_dialogObject.backView.SetActive(value: false);
DialogBase dialogBase = stageSelectDialog;
dialogBase.onPushButton1 = (Action)Delegate.Combine(dialogBase.onPushButton1, (Action)delegate
{
stageChoice.SaveSetting();
});
DialogBase dialogBase2 = stageSelectDialog;
dialogBase2.OnClose = (Action)Delegate.Combine(dialogBase2.OnClose, (Action)delegate
{
_dialogObject.gameObject.SetActive(value: true);
_dialogObject.backView.SetActive(value: true);
});
}));
}
private ItemToggle CreateToggle_UseCollaborationSound(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.COLLABORATION_SOUND, isDispSeparatorLine, _stageRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0077"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.COLLABORATION_SOUND));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.COLLABORATION_SOUND, item.GetValue());
});
return item;
}
private void CreateOtherItem()
{
bool num = UIManager.GetInstance().GetCurrentScene() != UIManager.ViewScene.Battle;
bool flag = UIManager.GetInstance().GetCurrentScene() != UIManager.ViewScene.Room;
if (num && flag)
{
CreateToggle_PurchaseAlert(isDispSeparatorLine: true);
}
if (num)
{
CreateToggle_InvitationFriendRoom(isDispSeparatorLine: true);
CreateToggle_InvitationInBattle(isDispSeparatorLine: true);
CreateToggleReceivedFriendApply(isDispSeparatorLine: true);
}
CreateToggleShowBattlePassResult(isDispSeparatorLine: true);
CreateSelect_ShowQrCode(isDispSeparatorLine: false);
}
protected override void OnDestroy()
{
base.OnDestroy();
if (_startInvitationFriendRoom != Data.Load.data._userConfig.ReceivedInvite || _startInvitationInBattle != Data.Load.data._userConfig.ReceivedInviteInBattle || _startInvitationInOffline != Data.Load.data._userConfig.ReceivedInviteInOffline || _startReceivedFriendApply != Data.Load.data._userConfig.ReceivedFriendApply)
{
InviteConfigUpdateTask inviteConfigUpdateTask = new InviteConfigUpdateTask();
inviteConfigUpdateTask.SetParameter(Data.Load.data._userConfig.ReceivedInvite, Data.Load.data._userConfig.ReceivedInviteInBattle, Data.Load.data._userConfig.ReceivedInviteInOffline, Data.Load.data._userConfig.ReceivedFriendApply);
UIManager.GetInstance().StartCoroutine(Toolbox.NetworkManager.Connect(inviteConfigUpdateTask));
}
}
private void ChangeCategory(Category category, bool playSE)
{
if (playSE && category != _currentCategory)
{
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_TOGGLE_ON);
}
_currentCategory = category;
ResetScroll();
_soundVisualRoot.gameObject.SetActive(category == Category.SOUND_VISUAL);
_battleRoot.gameObject.SetActive(category == Category.BATTLE);
_stageRoot.gameObject.SetActive(category == Category.STAGE);
_otherRoot.gameObject.SetActive(category == Category.OTHER);
RenameBtnSprite(SoundVisualButton, category == Category.SOUND_VISUAL);
RenameBtnSprite(BattleButton, category == Category.BATTLE);
RenameBtnSprite(StageButton, category == Category.STAGE);
RenameBtnSprite(OtherButton, category == Category.OTHER);
}
private void RenameBtnSprite(UIButton button, bool isEnable)
{
button.normalSprite = RenameSpriteString(button.normalSprite, isEnable);
}
private string RenameSpriteString(string str, bool isEnable)
{
string oldValue = (isEnable ? "_off" : "_on");
string newValue = (isEnable ? "_on" : "_off");
return str.Replace(oldValue, newValue);
}
private ItemToggle CreateToggle_InvitationInBattle(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.INVITATION_IN_BATTLE, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0038"));
item.SetValue(Data.Load.data._userConfig.ReceivedInviteInBattle);
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
item.SetButtonEnable(isEnable: false);
item.AddChangeCallback(delegate
{
Data.Load.data._userConfig.ReceivedInviteInBattle = item.GetValue();
});
return item;
}
private ItemToggle CreateToggleShowBattlePassResult(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.BATTLE_PASS_SHOW_RESULT, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("BattlePass_0011"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.BATTLE_PASS_SHOW_RESULT));
item.SetButtonEnable(isEnable: false);
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.BATTLE_PASS_SHOW_RESULT, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_InvitationInOffline(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.INVITATION_IN_OFFLINE, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0039"));
item.SetValue(Data.Load.data._userConfig.ReceivedInviteInOffline);
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
item.SetButtonEnable(isEnable: false);
item.AddChangeCallback(delegate
{
Data.Load.data._userConfig.ReceivedInviteInOffline = item.GetValue();
});
return item;
}
private ItemToggle CreateToggleReceivedFriendApply(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.RECEIVED_FRIEND_APPLY, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0068"));
item.SetValue(Data.Load.data._userConfig.ReceivedFriendApply);
item.AddChangeCallback(delegate
{
Data.Load.data._userConfig.ReceivedFriendApply = item.GetValue();
});
return item;
}
private ItemToggle CreateToggle_PurchaseAlert(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.PURCHASE_ALERT, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0065"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.PURCHASE_ALERT));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.PURCHASE_ALERT, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_Wss(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SELECT_WSS, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0060"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.IS_SELECT_WSS);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.IS_SELECT_WSS, item.GetValue());
CustomPreference.SetOptionalNodeSceme();
LocalLog.AccumulateSettingLog();
}
});
return item;
}
private ItemToggle CreateToggle_Ipv6(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SELECT_IPV6, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0083"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.IS_SELECT_IPV6);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.IS_SELECT_IPV6, item.GetValue());
}
});
return item;
}
private ItemToggle CreateSelect_Fps(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.FPS, isDispSeparatorLine, _soundVisualRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0045"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.FRAMERATE));
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
int frameRate = (Application.targetFrameRate = (value ? 60 : 30));
Toolbox.QualityManager.SetFrameRate(frameRate);
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.FRAMERATE, value);
});
return item;
}
private ItemToggle CreateSelect_ShowQrCode(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.QRCode, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0081"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOWQRCODE));
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOWQRCODE, value);
});
return item;
}
private ItemToggle CreateToggle_InvitationFriendRoom(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.INVITATION_FRIEND_ROOM, isDispSeparatorLine, _otherRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0037"));
item.SetValue(Data.Load.data._userConfig.ReceivedInvite);
item.AddChangeCallback(delegate
{
Data.Load.data._userConfig.ReceivedInvite = item.GetValue();
SetRelationFriendRoomToggleLook(item);
});
SetRelationFriendRoomToggleLook(item);
return item;
}
private void SetRelationFriendRoomToggleLook(ItemToggle friendRoomToggle)
{
_SetItemToggleLooks(ID.INVITATION_IN_BATTLE, friendRoomToggle.GetValue());
_SetItemToggleLooks(ID.INVITATION_IN_OFFLINE, friendRoomToggle.GetValue());
}
private ItemToggle CreateToggle_LeaderAnimation(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.LEADER_ANIMATION_DISPLAY, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0031"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_LEADER_ANIMATION));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_LEADER_ANIMATION, item.GetValue());
if (ToolboxGame.UIManager.IsCurrentScene(UIManager.ViewScene.Battle))
{
bool isAnimation = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_LEADER_ANIMATION);
BattleManagerBase.GetIns().VfxMgr.RegisterSequentialVfx(InstantVfx.Create(delegate
{
((ClassBattleCardBase)BattleManagerBase.GetIns().BattlePlayer.Class).ClassBattleCardView.ClassCharacter.SetAnimationEnable(isAnimation);
((ClassBattleCardBase)BattleManagerBase.GetIns().BattleEnemy.Class).ClassBattleCardView.ClassCharacter.SetAnimationEnable(isAnimation);
}));
}
});
return item;
}
private ItemToggle CreateToggleBattleLightEffect(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.BATTLE_EFFECT_DISPLAY, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0010"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_BATTLE_EFFECT);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_BATTLE_EFFECT, item.GetValue());
LocalLog.AccumulateSettingLog();
}
});
return item;
}
private ItemToggle CreateToggle_FoilCardAnimation(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SHOW_FOIL_CARD_ANIMATION, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0067"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_FOIL_CARD_ANIMATION));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_FOIL_CARD_ANIMATION, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_TurnEndConfirm(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.TURN_END_CONFIRM, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0004"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.CONFIRM_TURN_END);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.CONFIRM_TURN_END, item.GetValue());
LocalLog.AccumulateSettingLog();
}
});
return item;
}
private ItemToggle CreateToggle_TurnEndWithoutUsingHeroSkillConfirm(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.TURN_END_WITHOUT_USING_HERO_SKILL_CONFIRM, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0084"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.CONFIRM_TURN_END_WITHOUT_USING_HERO_SKILL);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.CONFIRM_TURN_END_WITHOUT_USING_HERO_SKILL, item.GetValue());
}
});
return item;
}
private ItemToggle CreateToggle_EvolveConfirm(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.EVOLVE_CONFIRM, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0025"));
bool isSetting = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.CONFIRM_EVOLVE);
item.SetValue(isSetting);
item.AddChangeCallback(delegate
{
if (isSetting != item.GetValue())
{
isSetting = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.CONFIRM_EVOLVE, item.GetValue());
LocalLog.AccumulateSettingLog();
}
});
return item;
}
private ItemToggle CreateToggle_FusionCardPlayConfirm(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SHOW_FUSION_CARD_PLAY_DIALOG, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0072"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_FUSION_CARD_PLAY_DIALOG));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_FUSION_CARD_PLAY_DIALOG, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_FixedUseCostInfo(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.FIXEDUSE_COST_INFO, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0059"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.FIXEDUSE_COST_INFO));
item.AddChangeCallback(delegate
{
if (item.GetValue() != PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.FIXEDUSE_COST_INFO))
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.FIXEDUSE_COST_INFO, item.GetValue());
BattleManagerBase ins = BattleManagerBase.GetIns();
if (ins != null)
{
if (ins.BattlePlayer != null)
{
ins.BattlePlayer.ApplyFixedUseCostInfo();
}
if (ins.BattleEnemy != null)
{
ins.BattleEnemy.ApplyFixedUseCostInfo();
}
}
}
});
return item;
}
private ItemToggle CreateToggle_OpponentMessageDisplay(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.OPPONENT_MESSAGE_DISPLAY, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0005"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_OTHER_PLAYER_EMOTE));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_OTHER_PLAYER_EMOTE, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_OpponentShowDefaultSkin(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.OPPONENT_SHOW_DEFAULT_SKIN, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0066"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_OPPONENT_DEFAULT_SKIN));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_OPPONENT_DEFAULT_SKIN, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_ShowPanelAlways(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SHOW_PANEL_ALWAYS, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0061"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_PANEL_ALWAYS));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_PANEL_ALWAYS, item.GetValue());
BattleManagerBase ins = BattleManagerBase.GetIns();
if (ins != null)
{
ClassInformationUIController classInformationUIController = ins.BattlePlayer.ClassInformationUIController;
ClassInformationUIController classInformationUIController2 = ins.BattleEnemy.ClassInformationUIController;
if (!ins.IsMulliganEnd && GameMgr.GetIns().IsNetworkBattle && !GameMgr.GetIns().IsAINetwork)
{
classInformationUIController.SetClassInformationUiPosition(isPlayer: true);
classInformationUIController2.SetClassInformationUiPosition(isPlayer: false);
}
else
{
ins.BattlePlayer.StatusPanelControl.ShowStatusPanelOnBattle();
ins.BattleEnemy.StatusPanelControl.ShowStatusPanelOnBattle();
classInformationUIController.UpdateStatusPanelOnBattle(isPlayer: true);
classInformationUIController2.UpdateStatusPanelOnBattle(isPlayer: false);
}
}
});
return item;
}
private ItemToggle CreateToggle_ShowSideLog(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.SHOW_SIDE_LOG, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0062"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_SIDE_LOG));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_SIDE_LOG, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_PredictionIconDisplay(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.PREDICTION_ICONS_DISPLAY, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0028"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.SHOW_PREDICTION_ICONS));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.SHOW_PREDICTION_ICONS, item.GetValue());
});
return item;
}
private ItemToggle CreateToggle_PlayMusicInBackground(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.PLAY_SOUND_IN_BG, isDispSeparatorLine, _soundVisualRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0036"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.PLAY_SOUND_IN_BACKGROUND));
item.AddChangeCallback(delegate
{
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.PLAY_SOUND_IN_BACKGROUND, item.GetValue());
});
return item;
}
private ItemSelect CreateSelectResolution(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemSelect item = CreateSelect(ID.RESOLUTION, isDispSeparatorLine, _soundVisualRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0034"));
string[] array = _resolutions[0].Split('×');
int num = int.Parse(array[0]);
int num2 = int.Parse(array[1]);
int num3 = num;
int num4 = num2;
Display[] displays = Display.displays;
foreach (Display display in displays)
{
if (display.systemWidth > display.systemHeight)
{
num3 = Mathf.Max(num3, display.systemWidth);
num4 = Mathf.Max(num4, display.systemHeight);
}
else
{
num3 = Mathf.Max(num3, display.systemWidth);
num4 = Mathf.Max(num4, display.systemWidth);
}
}
List<string> list = new List<string>();
foreach (string resolution in _resolutions)
{
string[] array2 = resolution.Split('×');
int num5 = int.Parse(array2[0]);
int num6 = int.Parse(array2[1]);
if (num5 <= num3 && num6 <= num4)
{
list.Add(resolution);
}
}
item.SetPossibleResolutionValues(list, resizeListSprite: true);
string resolutionValue = Screen.width + "×" + Screen.height;
item.SetResolutionValue(resolutionValue);
_wantedScreenWidth = Screen.width;
_wantedScreenHeight = Screen.height;
item.AddChangeCallback(delegate
{
string[] array3 = item.GetValue().Split('×');
float num7 = int.Parse(array3[0]);
float num8 = int.Parse(array3[1]);
_wantedScreenWidth = num7;
_wantedScreenHeight = num8;
WindowResize.SetResolution((int)num7, (int)num8);
});
return item;
}
private ItemToggle CreateToggle_Fullscreen(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.FULLSCREEN, isDispSeparatorLine, _soundVisualRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0035"));
item.SetValue(Screen.fullScreen);
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
if (value != Screen.fullScreen)
{
Toolbox.QualityManager.ChangeResolution(Screen.width, Screen.height, value);
}
});
return item;
}
private ItemToggle CreateMouseControl(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.MOUSE_CONTROL, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0040"));
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.MOUSE_CONTROL));
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.MOUSE_CONTROL, value);
InputMgr.MouseControl = value;
(FindItem(ID.MOUSE_SHORTCUT_PLAY) as ItemSelect).SetToGrey(!value);
(FindItem(ID.MOUSE_SHORTCUT_EVOLUTION) as ItemSelect).SetToGrey(!value);
(FindItem(ID.MOUSE_SHORTCUT_DETAIL) as ItemSelect).SetToGrey(!value);
});
return item;
}
private ItemSelect CreateMouseShortcutPlay(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemSelect item = CreateSelect(ID.MOUSE_SHORTCUT_PLAY, isDispSeparatorLine, _battleRoot);
item._isOpenDirectionUp = true;
item.SetTitleLabel(systemText.Get("OtherConfig_0049"));
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
SetShortcut(item);
item.SetValue(item.PossibleValues[(int)ShortcutPlay]);
item.AddChangeCallback(delegate
{
string value = item.GetValue();
int num = 0;
for (num = 0; num < item.PossibleValues.Count && !(value == item.PossibleValues[num]); num++)
{
}
ShortcutPlay = (Shortcut)num;
ItemSelect shortcutDetail = FindItem(ID.MOUSE_SHORTCUT_DETAIL) as ItemSelect;
SetShortcutDetail(shortcutDetail);
});
return item;
}
private ItemSelect CreateMouseShortcutEvolution(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemSelect item = CreateSelect(ID.MOUSE_SHORTCUT_EVOLUTION, isDispSeparatorLine, _battleRoot);
item._isOpenDirectionUp = true;
item.SetTitleLabel(systemText.Get("OtherConfig_0050"));
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
SetShortcut(item);
item.SetValue(item.PossibleValues[(int)ShortcutEvolution]);
item.AddChangeCallback(delegate
{
string value = item.GetValue();
int num = 0;
for (num = 0; num < item.PossibleValues.Count && !(value == item.PossibleValues[num]); num++)
{
}
ShortcutEvolution = (Shortcut)num;
ItemSelect shortcutDetail = FindItem(ID.MOUSE_SHORTCUT_DETAIL) as ItemSelect;
SetShortcutDetail(shortcutDetail);
});
return item;
}
private ItemSelect CreateBattleDetailPanelSize(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemSelect item = CreateSelect(ID.BATTLE_DETAIL_PANEL_SIZE, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0055"));
item.SetPossibleValues(_battleDetailSizes, resizeListSprite: true);
item.SetValue(_battleDetailSizes[PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.BATTLE_DETAIL_PANEL_SIZE)]);
item.AddChangeCallback(delegate
{
string value = item.GetValue();
int value2 = 0;
for (int i = 0; i < _battleDetailSizes.Count; i++)
{
value2 = i;
if (value == _battleDetailSizes[i])
{
break;
}
}
PlayerPrefsWrapper.SetValue(PlayerPrefsWrapper.BATTLE_DETAIL_PANEL_SIZE, value2);
UIManager instance = UIManager.GetInstance();
if (instance != null && instance.GetCurrentScene() == UIManager.ViewScene.Battle && BattleManagerBase.GetIns() != null)
{
DetailMgr detailMgr = BattleManagerBase.GetIns().DetailMgr;
detailMgr.DetailPanelControl.SetSize(GetBattleDetailPanelSizePercent());
detailMgr.SubDetailPanelControl.SetSize(GetBattleDetailPanelSizePercent());
}
});
return item;
}
private ItemSelect CreateMouseShortcutDetail(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemSelect item = CreateSelect(ID.MOUSE_SHORTCUT_DETAIL, isDispSeparatorLine, _battleRoot);
item._isOpenDirectionUp = true;
item.SetTitleLabel(systemText.Get("OtherConfig_0051"));
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
SetShortcutDetail(item);
item.SetValue(item.PossibleValues[(int)ShortcutDetailPanel]);
item.AddChangeCallback(delegate
{
string value = item.GetValue();
int num = 0;
for (num = 0; num < item.PossibleValues.Count && !(value == item.PossibleValues[num]); num++)
{
}
ShortcutDetailPanel = (ShortcutDetail)num;
ItemSelect shortcut = FindItem(ID.MOUSE_SHORTCUT_PLAY) as ItemSelect;
SetShortcut(shortcut);
ItemSelect shortcut2 = FindItem(ID.MOUSE_SHORTCUT_EVOLUTION) as ItemSelect;
SetShortcut(shortcut2);
});
return item;
}
private void SetShortcut(ItemSelect item)
{
item.SetPossibleValues(_mouseShortcuts, resizeListSprite: true, (string t) => Data.SystemText.Get(t));
if (ShortcutDetailPanel == ShortcutDetail.RightClick)
{
if (item.name == ID.MOUSE_SHORTCUT_PLAY.ToString() && ShortcutPlay == Shortcut.RightClick)
{
ShortcutPlay = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
else if (item.name == ID.MOUSE_SHORTCUT_EVOLUTION.ToString() && ShortcutEvolution == Shortcut.RightClick)
{
ShortcutEvolution = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
}
if (ShortcutDetailPanel == ShortcutDetail.MiddleClick)
{
if (item.name == ID.MOUSE_SHORTCUT_PLAY.ToString() && ShortcutPlay == Shortcut.MiddleClick)
{
ShortcutPlay = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
else if (item.name == ID.MOUSE_SHORTCUT_EVOLUTION.ToString() && ShortcutEvolution == Shortcut.MiddleClick)
{
ShortcutEvolution = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
}
if (ShortcutDetailPanel == ShortcutDetail.DoubleClick)
{
if (item.name == ID.MOUSE_SHORTCUT_PLAY.ToString() && ShortcutPlay == Shortcut.DoubleClick)
{
ShortcutPlay = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
else if (item.name == ID.MOUSE_SHORTCUT_EVOLUTION.ToString() && ShortcutEvolution == Shortcut.DoubleClick)
{
ShortcutEvolution = Shortcut.Off;
item.SetValue(item.PossibleValues[0]);
}
}
}
private void SetShortcutDetail(ItemSelect item)
{
item.SetPossibleValues(_mouseShortcutsDetail, resizeListSprite: true, (string t) => Data.SystemText.Get(t));
int index = item.PossibleValues.Count - 1;
if ((ShortcutPlay == Shortcut.RightClick || ShortcutEvolution == Shortcut.RightClick) && ShortcutDetailPanel == ShortcutDetail.RightClick)
{
ShortcutDetailPanel = ShortcutDetail.Auto;
item.SetValue(item.PossibleValues[index]);
}
if ((ShortcutPlay == Shortcut.MiddleClick || ShortcutEvolution == Shortcut.MiddleClick) && ShortcutDetailPanel == ShortcutDetail.MiddleClick)
{
ShortcutDetailPanel = ShortcutDetail.Auto;
item.SetValue(item.PossibleValues[index]);
}
}
private ItemToggle CreateKeyboardControl(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.KEYBOARD_CONTROL, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0056"));
bool value = PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.KEYBOARD_CONTROL);
item.SetValue(value: true);
item.AddChangeCallback(delegate
{
bool value2 = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.KEYBOARD_CONTROL, value2);
ItemToggle obj = FindItem(ID.KEYBOARD_SHORTCUT_EVOLUTION) as ItemToggle;
obj.SetLabelLooks(value2);
obj.SetToggleLooks(value2);
obj.SetButtonEnable(value2);
obj.SetToggleEnable(value2);
ItemToggle obj2 = FindItem(ID.KEYBOARD_SHORTCUT_SPACE) as ItemToggle;
obj2.SetToggleLooks(value2);
obj2.SetLabelLooks(value2);
obj2.SetButtonEnable(value2);
obj2.SetToggleEnable(value2);
InputMgr.KeyboardControl = value2;
});
StartCoroutine(InitializeKeyboardControlToggle(item, value));
return item;
}
private IEnumerator InitializeKeyboardControlToggle(ItemToggle item, bool value)
{
yield return null;
item.SetValue(value);
}
private ItemToggle CreateKeyboardShortcutEvolution(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.KEYBOARD_SHORTCUT_EVOLUTION, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0057"));
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.KEYBOARD_SHORTCUT_EVOLUTION));
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.KEYBOARD_SHORTCUT_EVOLUTION, value);
InputMgr.KeyboardControlEvolution = value;
});
return item;
}
private ItemToggle CreateKeyboardShortcutSpace(bool isDispSeparatorLine)
{
SystemText systemText = Data.SystemText;
ItemToggle item = CreateToggle(ID.KEYBOARD_SHORTCUT_SPACE, isDispSeparatorLine, _battleRoot);
item.SetTitleLabel(systemText.Get("OtherConfig_0058"));
item.SetTitleTextLocalPos(SettingBase.CHILD_STATE_LABEL_POS);
item.SetValue(PlayerPrefsWrapper.GetBool(PlayerPrefsWrapper.KEYBOARD_SHORTCUT_SPACE));
item.AddChangeCallback(delegate
{
bool value = item.GetValue();
PlayerPrefsWrapper.SetBool(PlayerPrefsWrapper.KEYBOARD_SHORTCUT_SPACE, value);
InputMgr.KeyboardControlSpace = value;
});
return item;
}
public static int GetBattleDetailPanelSizePercent()
{
string text = _battleDetailSizes[PlayerPrefsWrapper.GetValue(PlayerPrefsWrapper.BATTLE_DETAIL_PANEL_SIZE)];
return int.Parse(text.Remove(text.Length - 1));
}
}