Files
SVSimServer/SVSim.BattleEngine/Engine/Wizard/StarterPurchaseConfirmationDialog.cs
gamer147 824309ec44 feat(battle-engine): close the AI-simulation subsystem (verbatim)
Copied the 89 uncopied AI*SimulationUtility/extension files defining the
AIVirtualCard/AIVirtualField extension methods; the compile loop then auto-closed
the revealed type deps (~3049 files total, drift-clean). 10.0k -> 62 errors.
2026-06-05 20:30:59 -04:00

126 lines
3.9 KiB
C#

using System;
using Cute;
using UnityEngine;
namespace Wizard;
public class StarterPurchaseConfirmationDialog : MonoBehaviour
{
[SerializeField]
private UILabel _packPriceLabel;
[SerializeField]
private UILabel _packConfirmLabel;
[SerializeField]
private UILabel _currentClassLabel;
[SerializeField]
private UILabel _labelAfterItemUnit;
[SerializeField]
private UILabel _cautionLabel;
[SerializeField]
private UILabel _haveCrystalBefore;
[SerializeField]
private UILabel _haveCrystalAfter;
[SerializeField]
private UILabel _freePackBeforeCountLabel;
[SerializeField]
private UILabel _freePackAfterCountLabel;
[SerializeField]
private UIButton _jpnLawButton;
[SerializeField]
private UILabel _saleTimeLabel;
[SerializeField]
private UISprite _jpaLawLine;
[SerializeField]
private GameObject _crystalLayoutRoot;
[SerializeField]
private UILabel _freePackTitleLabel;
[SerializeField]
private GameObject _freeBuyLayoutRoot;
[SerializeField]
private CenteringUIWidget _freeCountCenter;
[SerializeField]
private UITable _freeCountTable;
[SerializeField]
private UIScrollBar _scrollBar;
[SerializeField]
private UIScrollView _scrollView;
public void Init(DialogBase inDialog, int selectedClassId, PackConfig packConfig, PackChildGachaInfo info, Action<PackConfig, PackChildGachaInfo, int, int[], CardBasePrm.ClanType, int?> onPurchase)
{
inDialog.SetSize(DialogBase.Size.M);
inDialog.SetTitleLabel(packConfig.Title);
inDialog.SetButtonLayout(DialogBase.ButtonLayout.BlueBtn_CancelBtn);
SetTextAndLabels(inDialog, selectedClassId, packConfig, info);
inDialog.onPushButton1 = delegate
{
onPurchase.Call(packConfig, info, 10, null, (CardBasePrm.ClanType)selectedClassId, null);
};
inDialog.ClickSe_Btn1 = Se.TYPE.SYS_BTN_DECIDE_TRANS;
_jpnLawButton.onClick.Add(new EventDelegate(delegate
{
GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_COMMON_BUTTON);
UIManager.GetInstance().WebViewHelper.OpenWebView(WebViewHelper.WebViewType.LEGALTEXT);
}));
_jpaLawLine.gameObject.SetActive(value: true);
if (packConfig.ExpirtyInfo.IsEnableText)
{
_saleTimeLabel.text = packConfig.ExpirtyInfo.GetText();
}
else
{
_saleTimeLabel.gameObject.SetActive(value: false);
}
_crystalLayoutRoot.SetActive(!info.IsFreePack);
_freeBuyLayoutRoot.SetActive(info.IsFreePack);
if (info.IsFreePack)
{
int num = info.AvailableCount / info.PackCountBuyPer;
_freePackBeforeCountLabel.text = num.ToString();
_freePackAfterCountLabel.text = (num - 1).ToString();
_freePackTitleLabel.text = Data.SystemText.Get("Shop_0224");
_freePackTitleLabel.ProcessText();
_freeCountTable.Reposition();
_freeCountCenter.Reposition();
}
_jpnLawButton.gameObject.SetActive(value: false);
_saleTimeLabel.gameObject.SetActive(value: false);
_jpaLawLine.gameObject.SetActive(value: false);
_scrollBar.gameObject.SetActive(value: false);
_scrollView.enabled = false;
}
private void SetTextAndLabels(DialogBase inDialog, int selectedClassId, PackConfig packConfig, PackChildGachaInfo info)
{
int num = 10 * info.Cost;
inDialog.SetButtonText(Data.SystemText.Get("Shop_0082"));
string clanNameByKey = GameMgr.GetIns().GetDataMgr().GetClanNameByKey(selectedClassId);
_packPriceLabel.text = Data.SystemText.Get("Shop_0241", num.ToString());
_packConfirmLabel.text = Data.SystemText.Get("Shop_0242", packConfig.Title);
_currentClassLabel.text = Data.SystemText.Get("Shop_0243", clanNameByKey);
_cautionLabel.text = Data.SystemText.Get("Shop_0244", clanNameByKey);
_labelAfterItemUnit.text = Data.SystemText.Get("Card_0100");
int userCrystalCount = PlayerStaticData.UserCrystalCount;
int num2 = userCrystalCount - 10 * info.Cost;
_haveCrystalBefore.text = userCrystalCount.ToString();
_haveCrystalAfter.text = num2.ToString();
}
}