Files
SVSimServer/SVSim.BattleEngine/Engine/Wizard.Lottery/LotteryBigChanceTreasureBox.cs
gamer147 0455ff649e feat(battle-engine): EffectType full enum + collection/card/vfx extension copies
Replaces partial EffectMgr.EffectType with all 226 decomp values; copies the
IsNotNullOrEmpty/EquelsID/FindFromCardId/GetAllFuncVfxResults extension files +
UI extensions; adds Renderer/MeshFilter shared-material/mesh/sortingOrder. Compile
loop then closed the revealed deps (3242 files). 9.1k -> 18 errors.
2026-06-05 20:38:56 -04:00

165 lines
5.3 KiB
C#

using Cute;
using UnityEngine;
namespace Wizard.Lottery;
public class LotteryBigChanceTreasureBox : LotteryTreasureBox
{
[SerializeField]
private GameObject _parentTreasureObj;
[SerializeField]
private GameObject _centerLine;
[SerializeField]
private UISprite _backGround;
[SerializeField]
private UILabel _labelOverTrasureBox;
[SerializeField]
private UISprite _touchBg;
[SerializeField]
private UILabel _labelCenter;
protected override void UpdateInfoLabel()
{
switch (_lotteryRewardData.state)
{
case LotteryRewardData.eLotteryRewardState.Unapplied:
_labelInfoText.gameObject.SetActive(value: true);
break;
case LotteryRewardData.eLotteryRewardState.Applied:
case LotteryRewardData.eLotteryRewardState.WaitResult:
_labelInfoText.fontSize = 13;
_labelInfoText.gameObject.SetActive(value: true);
break;
default:
_labelInfoText.gameObject.SetActive(value: false);
break;
}
}
protected override void UpdateStatusText()
{
switch (_lotteryRewardData.state)
{
case LotteryRewardData.eLotteryRewardState.Unapplied:
_labelStatus.text = Data.SystemText.Get("Mission_0087");
_labelInfoText.color = LabelDefine.TEXT_COLOR_ORANGE;
_labelOverTrasureBox.text = Data.SystemText.Get("Mission_0010");
break;
case LotteryRewardData.eLotteryRewardState.Applied:
case LotteryRewardData.eLotteryRewardState.WaitResult:
_labelStatus.text = Data.SystemText.Get("Mission_0089");
_labelStatus.color = LabelDefine.TEXT_COLOR_ORANGE;
break;
case LotteryRewardData.eLotteryRewardState.NotReceived:
_labelCenter.text = Data.SystemText.Get("Mission_0091");
_labelCenter.color = LabelDefine.TEXT_COLOR_ORANGE;
break;
case LotteryRewardData.eLotteryRewardState.Received:
_labelCenter.text = Data.SystemText.Get("Mission_0092");
break;
case LotteryRewardData.eLotteryRewardState.NotAchieved:
_labelCenter.text = Data.SystemText.Get("Mission_0059");
break;
default:
_labelStatus.text = string.Empty;
break;
}
}
protected override void UpdateRewardImage()
{
if (_lotteryRewardData.state == LotteryRewardData.eLotteryRewardState.Received)
{
string textureRewardImage = string.Empty;
if (_lotteryRewardData.IsSpecial)
{
string path = "thumbnail_lottery";
textureRewardImage = Toolbox.ResourcesManager.GetAssetTypePath(path, ResourcesManager.AssetLoadPathType.Lottery, isfetch: true);
_labelRewardNum.gameObject.SetActive(value: false);
}
else if (_lotteryRewardData.NormalGotRewardList.Count > 0)
{
string textureName = _lotteryRewardData.NormalGotRewardList[0].TextureName;
textureRewardImage = Toolbox.ResourcesManager.GetAssetTypePath(textureName, ResourcesManager.AssetLoadPathType.Item, isfetch: true);
_labelRewardNum.gameObject.SetActive(value: true);
_labelRewardNum.text = _lotteryRewardData.NormalGotRewardList[0].RewardGotNum.ToString();
}
SetTextureRewardImage(textureRewardImage);
_labelCenter.gameObject.SetActive(value: true);
_backGround.gameObject.SetActive(value: false);
_labelTreasureTouch.gameObject.SetActive(value: false);
_touchBg.gameObject.SetActive(value: false);
return;
}
if (_lotteryRewardData.state == LotteryRewardData.eLotteryRewardState.Unapplied)
{
_centerLine.SetActive(value: true);
UIManager.SetObjectToGrey(_spriteTreasureImage.gameObject, b: true);
_textureRewardImage.gameObject.SetActive(value: false);
_labelRewardNum.gameObject.SetActive(value: false);
_backGround.gameObject.SetActive(value: false);
_labelOverTrasureBox.gameObject.SetActive(value: true);
return;
}
_textureRewardImage.gameObject.SetActive(value: false);
_labelRewardNum.gameObject.SetActive(value: false);
_spriteTreasureImage.gameObject.SetActive(value: true);
if (_lotteryRewardData.state == LotteryRewardData.eLotteryRewardState.NotReceived)
{
_labelTreasureTouch.gameObject.SetActive(value: true);
_labelTreasureTouch.text = GetTouchText();
_backGround.gameObject.SetActive(value: false);
_touchBg.gameObject.SetActive(value: true);
_labelCenter.gameObject.SetActive(value: true);
}
else
{
_labelTreasureTouch.gameObject.SetActive(value: false);
if (_lotteryRewardData.state == LotteryRewardData.eLotteryRewardState.NotAchieved)
{
_labelCenter.gameObject.SetActive(value: true);
_backGround.gameObject.SetActive(value: false);
}
}
}
protected override void UpdateNonActiveColor()
{
switch (_lotteryRewardData.state)
{
case LotteryRewardData.eLotteryRewardState.Received:
if (_lotteryRewardData.IsSpecial)
{
SetNonActiveColor(isNonActive: false);
}
else
{
SetNonActiveColor(isNonActive: true);
}
break;
case LotteryRewardData.eLotteryRewardState.Unapplied:
case LotteryRewardData.eLotteryRewardState.NotAchieved:
SetNonActiveColor(isNonActive: true);
break;
case LotteryRewardData.eLotteryRewardState.Applied:
case LotteryRewardData.eLotteryRewardState.WaitResult:
case LotteryRewardData.eLotteryRewardState.NotReceived:
SetNonActiveColor(isNonActive: false);
break;
default:
_labelStatus.text = string.Empty;
break;
}
}
protected override void SetNonActiveColor(bool isNonActive)
{
UIManager.SetObjectToGrey(_parentTreasureObj, isNonActive);
}
}