using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public enum RewardPositionType { Left, Right } namespace Snxxz.UI { public class ContainerRidingPet : MonoBehaviour { [SerializeField] Text m_MountsBossName; [SerializeField] Text m_ActivityInfo; [SerializeField] RawImage m_BossRawImage; DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel(); } } ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel(); } } RidingPetBossModel ridingPetMdoel { get { return ModelCenter.Instance.GetModel(); } } public int RawImagetestBossID = 50103006; public RewardPositionType rewardPositonType; [SerializeField] ItemCell[] m_RewardArray; public int bossIdIndex = 0; public void DisplayBossName() { m_MountsBossName.text = ModelCenter.Instance.GetModel().GetBossName(bossIdIndex); } public void DisplayBossRawImage() { var config = NPCConfig.Get(ridingPetMdoel.BossIDArray[0]); UI3DModelExhibition.Instance.ShowNPC(ridingPetMdoel.BossIDArray[0], config.UIModeLOffset, config.UIModelRotation, m_BossRawImage); } public void StopShowBossRawImage() { UI3DModelExhibition.Instance.StopShow(); } public void StopShowAnotherBossImage() { UI3DModelExhibition.InstanceClone1.StopShow(); } public void DisplayAnotherBossRawImage() { var config = NPCConfig.Get(ridingPetMdoel.BossIDArray[1]); UI3DModelExhibition.InstanceClone1.ShowNPC(ridingPetMdoel.BossIDArray[1], config.UIModeLOffset, config.UIModelRotation, m_BossRawImage); } public void DisplaySpiritPetHP() { m_ActivityInfo.text = Language.Get("RidingPetBossRemainHP", ModelCenter.Instance.GetModel().GetBossRemianedHP(bossIdIndex)); } public void DisplayActivityTime() { DailyQuestOpenTime dailyQuestOpentime; dailyQuestModel.TryGetOpenTime((int)DailyQuestType.RidingPetActivity, out dailyQuestOpentime); HourMinute hourMin; dailyQuestOpentime.TryGetNextOpenTime(out hourMin); m_ActivityInfo.text = Language.Get("RidingPetBossQuestTime", ""+hourMin.hourBegin+":"+hourMin.minuteBegin+""); } public void DisplayRewardItem() { switch (rewardPositonType) { case RewardPositionType.Left: ModelIDArrayToRewardItem(ModelCenter.Instance.GetModel().Boss1RewardIDArray); break; case RewardPositionType.Right: ModelIDArrayToRewardItem(ModelCenter.Instance.GetModel().Boss2RewardIDArray); break; } } public void ModelIDArrayToRewardItem(int[] idArray) { for (int i = 0; i < idArray.Length; i++) { var itemConfig = ItemConfig.Get(idArray[i]); if (itemConfig != null) { ItemCellModel cellModel = new ItemCellModel(itemConfig.ID, true, (ulong)1); m_RewardArray[i].Init(cellModel); if (m_RewardArray[i].button != null) { m_RewardArray[i].button.SetListener(()=> { ItemAttrData attrData = new ItemAttrData(itemConfig.ID, true, (ulong)1); itemTipsModel.SetItemTipsModel(attrData); }); } } } } } }