Beispiel #1
0
    public void Init(GameObject target, eMapPointType type)
    {
        m_CurrentTarget = target;
        m_CurrentType   = type;
        FindRadarCenter();
        CalculatePosition();
        switch (type)
        {
        case eMapPointType.FISH:
            FishAI fish = target.GetComponent <FishAI>();
            fish.OnSpawn += ShowPoint;
            fish.OnDeath += HidePoint;
            break;

        case eMapPointType.MISSIONTOWER:
            m_Image = this.GetComponent <Image>();
            //m_Color.r = 0.2666f;
            //m_Color.g = 0.843f;
            //m_Color.b = 1;
            m_Color = m_Image.color;
            MissionTower missionTower = target.GetComponent <MissionTower>();
            missionTower.OnActive            += CompletePoint;
            missionTower.OnActivating        += MobManager.m_Instance.StopAutoSpawn;
            missionTower.OnActive            += MobManager.m_Instance.StartAutoSpawn;
            UIPanelMap.Instance.DisplayPoint += ShowPoint;
            UIPanelMap.Instance.HidePoint    += ClosePoint;
            break;
        }
    }
Beispiel #2
0
    private void OnDestroy()
    {
        if (m_CurrentTarget == null)
        {
            return;
        }
        switch (m_CurrentType)
        {
        case eMapPointType.FISH:
            FishAI fish = m_CurrentTarget.GetComponent <FishAI>();
            fish.OnSpawn -= ShowPoint;
            fish.OnDeath -= HidePoint;
            break;

        case eMapPointType.MISSIONTOWER:
            MissionTower missionTower = m_CurrentTarget.GetComponent <MissionTower>();
            missionTower.OnActive            -= CompletePoint;
            missionTower.OnActivating        -= MobManager.m_Instance.StopAutoSpawn;
            missionTower.OnActive            -= MobManager.m_Instance.StartAutoSpawn;
            UIPanelMap.Instance.DisplayPoint -= ShowPoint;
            UIPanelMap.Instance.HidePoint    -= ClosePoint;
            break;

        case eMapPointType.PLAYER:
            UIPanelMap.Instance.DisplayPoint -= ShowPoint;
            UIPanelMap.Instance.HidePoint    -= ClosePoint;
            m_CurrentPlayer.OnSpawnBegin     -= ShowPoint;
            m_CurrentPlayer.OnDeathBegin     -= HidePoint;
            break;
        }
    }
        public void Init(MissionTower tower)
        {
            CurrentTower = tower;

            m_Arrows = new List <Image>();
            for (int i = 0; i < CurrentTower.Codes.Length; i++)
            {
                Image arrow = CreateArrow(CurrentTower.Codes[i]);
                arrow.gameObject.SetActive(true);
                m_Arrows.Add(arrow);
            }
            m_arrowRoot.gameObject.SetActive(false);

            SubscribeEvent();
            ToIdle();
        }
    public Mission CreateMission(eMissionType type, Transform pos = null, uint level = 0)
    {
        Mission mission = null;

        switch (type)
        {
        case eMissionType.Tower:
            GameObject       tower             = new GameObject("MissionTower");
            MissionTower     missionTower      = tower.AddComponent <MissionTower>();
            string           towerDataFileName = string.Format("MissionTowerSetting_{0}", level);
            MissionTowerData data = ResourceManager.m_Instance.LoadData(typeof(MissionTowerData), "Mission/Settings", towerDataFileName) as MissionTowerData;
            missionTower.Initialize(data);
            mission = missionTower;

            if (pos != null)
            {
                tower.transform.SetParent(pos);
                tower.transform.position = pos.position;
            }

            UIInGameMain.Instance.AddMissionInfo(mission);
            UIInGameMain.Instance.AddDynamicMissionMsg(missionTower);
            UIInGameMain.Instance.AddMapPoint(tower, eMapPointType.MISSIONTOWER);
            break;

        case eMissionType.KillMob:
            GameObject         killMob             = new GameObject("MissionKillMob");
            MissionKillMob     missionKill         = killMob.AddComponent <MissionKillMob>();
            string             killMobDataFileName = string.Format("MissionKillMobSetting_{0}", level);
            MissionKillMobData killData            = ResourceManager.m_Instance.LoadData(typeof(MissionKillMobData), "Mission/Settings", killMobDataFileName) as MissionKillMobData;
            missionKill.Initialize(killData);
            mission = missionKill;

            UIInGameMain.Instance.AddMissionInfo(mission);
            break;
        }

        return(mission);
    }
Beispiel #5
0
        public void AddDynamicMissionMsg(MissionTower mission)
        {
            UIDynamicMissionMsg missionMsg = Instantiate(m_DynamicMissionMsg, this.transform);

            missionMsg.Init(mission);
        }