Esempio n. 1
0
        /// <summary>
        /// 创建挂机点怪物和特殊怪物(世界boss)位置的UI物体
        /// </summary>
        public void CreateMonsterPoint()
        {
            var monster_infos = MiniMapHelp.GetInstanceAllNormalMonster(m_CurSceneId);

            WorldBossList.Clear();
            for (int i = 0; i < monster_infos.Count; i++)
            {
                var     info = monster_infos[i];
                var     rect = GetItem(m_MonsterPoint);
                Vector3 vect = new Vector3((info.Position.x - minX) / uiScalex, (info.Position.z - minY) / uiScaley, 0);
                rect.localPosition = vect;
                Text   nameText   = UIHelper.FindChild(rect.gameObject, "NameText").GetComponent <Text>();
                var    monster1   = UIHelper.FindChild(rect.gameObject, "MonsterType1");
                var    monster2   = UIHelper.FindChild(rect.gameObject, "MonsterType2");
                var    monster3   = UIHelper.FindChild(rect.gameObject, "MonsterType3");
                var    bossDead   = UIHelper.FindChild(rect.gameObject, "BossDead");
                Button moneterBtn = rect.GetComponent <Button>();
                moneterBtn.onClick.RemoveAllListeners();
                moneterBtn.onClick.AddListener(() => { OnClickMonsterPoint(info); });
                monster1.SetActive(false);
                monster2.SetActive(false);
                monster3.SetActive(false);
                bossDead.SetActive(false);

                string blackLv = ActorHelper.GetColorLvDiff(info.ActorId, 1);
                switch (info.PointType)
                {
                case MiniMapPointType.Monster:
                case MiniMapPointType.EliteMonster:
                    monster2.SetActive(true);
                    nameText.text = info.BlackName;
                    break;

                case MiniMapPointType.Boss:
                    monster3.SetActive(true);
                    WorldBossList.Add(info.Id, info);
                    nameText.text = string.Format("{0}\n{1}", info.BlackName, blackLv);
                    break;
                }

                mMonsterListPointObjs.Add(info.Id, rect.gameObject);
            }
        }