示例#1
0
    //===================================================================================
    //
    // Event
    //
    //===================================================================================
    private void OnSelectRegion(GameObject go)
    {
        if (go != null)
        {
            SoundManager.Instance.PlayFX(enSoundFXUI.BUTTON_MEDIUM);
        }

        if (m_SelectRegionObj != null && m_SelectRegionObj == go)
        {
            return;
        }

        m_SelectRegionObj = go;

        DATA_DISPATCH_CATEGORY._enCategory SelectDispatchCategory = DATA_DISPATCH_CATEGORY._enCategory.Dispatch_World_None;
        for (int i = 0; i < m_SelectRegionList.Count; ++i)
        {
            DispatchMissionItemLeft region = m_SelectRegionList[i];
            if (region == null)
            {
                continue;
            }

            if (region.gameObject == go)
            {
                SelectDispatchCategory = region.DispatchTableData.DispatchCategory;
                region.SetActiveSelect(true);
            }
            else
            {
                region.SetActiveSelect(false);
            }
        }

        DestroySelectMission();

        int iCount = m_DispatchTableData.Count;

        for (int i = 0; i < iCount; ++i)
        {
            DATA_DISPATCH DispatchData = m_DispatchTableData[i];
            if (DispatchData == null)
            {
                continue;
            }

            if (SelectDispatchCategory == DATA_DISPATCH_CATEGORY._enCategory.Dispatch_World_None || SelectDispatchCategory == DATA_DISPATCH_CATEGORY._enCategory._enCategory_Max)
            {
                continue;
            }

            if (SelectDispatchCategory != DispatchData.DispatchCategory)
            {
                continue;
            }

            DispatchMissionItemRight mission = UIResourceMgr.CreatePrefab <DispatchMissionItemRight>(BUNDLELIST.PREFABS_UI_DISPATCH, m_SelectMissionGrid.transform, "DispatchMissionItemRight");
            UIEventListener.Get(mission.gameObject).onClick = OnSelectMission;
            mission.Init(DispatchData);

            m_SelectMissionList.Add(mission);
        }

        ResetPositionMission();
    }