Files
JJBB/Assets/Project/Script/GUI/Interaction/InteractionItem.cs

64 lines
1.9 KiB
C#
Raw Normal View History

2024-08-23 15:49:34 +08:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using GCGame.Table;
using Module.Log;
public class InteractionItem : UIItemBase {
public Text _title;
public GameObject _canBtn;
public GameObject _cantBtn;
public GameObject _getedBtn;
public UIContainerBase _rewItemContainer;
public int _interactionNodeId;
private int _curType;
public override void Show(Hashtable hash)
{
base.Show(hash);
var tab = (Tab_InteractionNode)hash["InitObj"];
_interactionNodeId = tab.Id;
var _interactionNodeTab = TableManager.GetInteractionNodeByID(_interactionNodeId, 0);
if(_interactionNodeTab == null)
{
LogModule.ErrorLog("_interactionNodeTab is null : " + _interactionNodeId);
gameObject.SetActive(false);
return;
}
_curType = _interactionNodeTab.InteractiveType;
_title.text = _interactionNodeTab.Title;
List<InteractionRewItem.InteractionRewItemData> rewList = new List<InteractionRewItem.InteractionRewItemData>();
for(int index = 0; index < _interactionNodeTab.getRewardCount(); index++)
{
rewList.Add(new InteractionRewItem.InteractionRewItemData(
_interactionNodeTab.GetRewardbyIndex(index), _interactionNodeTab.GetNumbyIndex(index)));
}
if (rewList.Count > 0)
_rewItemContainer.InitContentItem(rewList);
}
private int _curState = 0; // 0.不可领取 1.可领取 2.已领取
public void InitState(int state)
{
_curState = state;
_canBtn.SetActive(_curState == 1);
_cantBtn.SetActive(_curState == 0);
_getedBtn.SetActive(_curState == 2);
}
public void OnGainBtnClick()
{
ReqGetInteractionRew req = new ReqGetInteractionRew();
req._type = _curType;
req._nodeId = _interactionNodeId;
req.SendMsg();
}
}