using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.Item; using GCGame.Table; using GCGame; using Games.Fellow; using Games.GlobeDefine; public class WorldBossItem : UIItemSelect { public Text Name; public Text Level; public TimeDownText TimeDown; public Image BackImage; public GameObject SaveObj; public GameObject DangerObj; public GameObject KilledObj; WorldBossData.BossInfo m_BossInfo = null; public int BossID { get { return m_BossInfo == null ? -1 : m_BossInfo.m_BossTabId; } } public override void Show(Hashtable hash) { int boosId = (int)hash["InitObj"]; Tab_WorldBossConfig TabBoss = TableManager.GetWorldBossConfigByID(boosId, 0); if(TabBoss==null) { return; } Tab_RoleBaseAttr RoleBase = TableManager.GetRoleBaseAttrByID(boosId, 0); if (RoleBase == null) return; m_BossInfo = WorldBossData.Instance.GetBossInfo(boosId); if (m_BossInfo == null) return; LoadAssetBundle.Instance.SetImageSprite(BackImage, TabBoss.Icon); Name.text = RoleBase.Name; if(GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.Level < TabBoss.Level) { Level.text = string.Format("Lv.{0}", TabBoss.Level); } else { Level.text = string.Format("Lv.{0}", TabBoss.Level); } if (KilledObj != null) KilledObj.SetActive(m_BossInfo != null && m_BossInfo.m_Killed); bool IsSave = true; Tab_Fuben fuben = TableManager.GetFubenByID(TabBoss.FubenID, 0); if(fuben!=null) { Tab_SceneClass sceneClass = TableManager.GetSceneClassByID(fuben.GetSceneIdbyIndex(0), 0); if(sceneClass!=null) { IsSave = (sceneClass.PVPRule == 0 ? true : false); } } m_BossInfo.m_LeaveTime = (int)Time.realtimeSinceStartup + GlobalData.ActivityNextStartTimeOnSecond((int)ActivityDataManager.Activity_Type.ACTIVITY_TYPE_WORLD_BOSS); DangerObj.SetActive(!IsSave); SaveObj.SetActive(IsSave); if (m_BossInfo.m_Killed) TimeDown.Init("", m_BossInfo.m_LeaveTime, timeFormat: TimeDownText.TimeFormat.china); else TimeDown.Init(""); base.Show(); } }