using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
public class NuwaRuleRewardCell : CellView
|
{
|
[SerializeField] Text m_FloorName;
|
[SerializeField] ScrollRect m_Scroller;
|
[SerializeField] Transform m_Parent;
|
[SerializeField] RareItem m_CloneInstance;
|
[SerializeField] List<RareItem> m_Items;
|
|
DungeonNuwaModel model { get { return ModelCenter.Instance.GetModel<DungeonNuwaModel>(); } }
|
|
public void Display(int floor)
|
{
|
m_FloorName.text = Language.Get("NuwaFloorName", Language.Get("Num_CHS_" + floor));
|
|
List<Item> items;
|
model.TryGetFloorReward(floor, out items);
|
|
CreateItemBehaviour(items == null ? 0 : items.Count);
|
|
m_Scroller.horizontalNormalizedPosition = 0f;
|
|
for (int i = 0; i < m_Items.Count; i++)
|
{
|
if (items != null && i < items.Count)
|
{
|
var item = items[i];
|
m_Items[i].SetActive(true);
|
var itemModel = new ItemCellModel(item.id, true, (ulong)item.count);
|
m_Items[i].SetItemRare(itemModel, model.IsNewComparePreFloor(floor, item.id));
|
m_Items[i].button.SetListener(() =>
|
{
|
ItemTipUtility.Show(item.id);
|
});
|
}
|
else
|
{
|
m_Items[i].SetActive(false);
|
}
|
}
|
}
|
|
void CreateItemBehaviour(int count)
|
{
|
if (m_Items.Count >= count)
|
{
|
return;
|
}
|
for (int i = m_Items.Count; i < count; i++)
|
{
|
var instance = GameObject.Instantiate(m_CloneInstance, Vector3.zero, Quaternion.identity);
|
instance.transform.SetParent(m_Parent);
|
instance.transform.localScale = Vector3.one;
|
var item = instance.GetComponent<RareItem>();
|
m_Items.Add(item);
|
}
|
}
|
}
|
}
|
|