37 lines
1.5 KiB
C#
37 lines
1.5 KiB
C#
using asap.core;
|
|
using GameCore;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
|
|
namespace Assets.Scripts.UI.JigsawPuzzle
|
|
{
|
|
public class JigsawPuzzleRewardComponent : MonoBehaviour
|
|
{
|
|
private RewardItemNew reward;
|
|
private JigsawPuzzleManager _jigsawPuzzleManager;
|
|
private JigsawPuzzleManager JigsawPuzzleManager => _jigsawPuzzleManager ??= GContext.container.Resolve<JigsawPuzzleManager>();
|
|
|
|
private void Awake()
|
|
{
|
|
reward = this.gameObject.GetComponentInChildren<RewardItemNew>();
|
|
reward.gameObject.SetActive(false);
|
|
}
|
|
|
|
private void Start()
|
|
{
|
|
if (JigsawPuzzleManager == null || JigsawPuzzleManager.Data == null) return;
|
|
var data = JigsawPuzzleManager.Data;
|
|
if (data == null) return;
|
|
var piecePuzzleReward = JigsawPuzzleManager.GetEventRewards().Where((x) => x.PictureID > 0).FirstOrDefault();
|
|
if (piecePuzzleReward == null) return;
|
|
var puzzlePicture = data.Tables.TbEventJigsawPuzzlePicture.GetOrDefault(piecePuzzleReward.PictureID);
|
|
if (puzzlePicture == null)
|
|
{
|
|
Debug.LogError($"{this.GetType().Name} 配置错误 puzzlePicture is null PictureID {piecePuzzleReward.PictureID}");
|
|
}
|
|
var rewardData = GContext.container.Resolve<PlayerItemData>().GetItemDataByDropIdLureInflation(data.InflationRate, puzzlePicture.DropID).FirstOrDefault();
|
|
reward.SetData(rewardData);
|
|
reward.gameObject.SetActive(true);
|
|
}
|
|
}
|
|
} |