yyl
2025-05-19 b118ece3db250a5a257b60713da92234d8d5a57a
Main/Component/UI/Common/EnableAccordingToMap.cs
@@ -1,88 +1,88 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Wednesday, January 10, 2018
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
// //--------------------------------------------------------
// //    [Author]:           第二世界
// //    [  Date ]:           Wednesday, January 10, 2018
// //--------------------------------------------------------
// using UnityEngine;
// using System.Collections;
// using UnityEngine.UI;
namespace vnxbqy.UI
{
// namespace vnxbqy.UI
// {
    public class EnableAccordingToMap : MonoBehaviour
    {
        [SerializeField] EnableType m_EnableType;
        [SerializeField] MonoBehaviour m_Component;
//     public class EnableAccordingToMap : MonoBehaviour
//     {
//         [SerializeField] EnableType m_EnableType;
//         [SerializeField] MonoBehaviour m_Component;
        private void Awake()
        {
            DTC0403_tagPlayerLoginLoadOK.mapInitOkEvent += OnMapInitOk;
        }
//         private void Awake()
//         {
//             DTC0403_tagPlayerLoginLoadOK.mapInitOkEvent += OnMapInitOk;
//         }
        private void OnDestroy()
        {
            DTC0403_tagPlayerLoginLoadOK.mapInitOkEvent -= OnMapInitOk;
        }
//         private void OnDestroy()
//         {
//             DTC0403_tagPlayerLoginLoadOK.mapInitOkEvent -= OnMapInitOk;
//         }
        private void OnEnable()
        {
            OnMapInitOk();
        }
//         private void OnEnable()
//         {
//             OnMapInitOk();
//         }
        private void OnMapInitOk()
        {
            if (PlayerDatas.Instance.baseData.MapID == 0)
            {
                return;
            }
//         private void OnMapInitOk()
//         {
//             if (PlayerDatas.Instance.baseData.MapID == 0)
//             {
//                 return;
//             }
            var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
            var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
//             var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
//             var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
            if (dataMapId != 0)
            {
                var config = DungeonOpenTimeConfig.Get(dataMapId);
                switch (m_EnableType)
                {
                    case EnableType.PlayerMove:
                        m_Component.SetActive(config.Movable == 1);
                        break;
                    case EnableType.PlayerSkill:
                        m_Component.enabled = config.Skillable == 1;
                        break;
                    case EnableType.SelectPlayer:
                        m_Component.enabled = config.SelectPlayerable == 1;
                        break;
                }
            }
            else
            {
                switch (m_EnableType)
                {
                    case EnableType.PlayerMove:
                        m_Component.SetActive(true);
                        break;
                    case EnableType.PlayerSkill:
                        m_Component.enabled = true;
                        break;
                    case EnableType.SelectPlayer:
                        m_Component.enabled = true;
                        break;
                }
            }
        }
//             if (dataMapId != 0)
//             {
//                 var config = DungeonOpenTimeConfig.Get(dataMapId);
//                 switch (m_EnableType)
//                 {
//                     case EnableType.PlayerMove:
//                         m_Component.SetActive(config.Movable == 1);
//                         break;
//                     case EnableType.PlayerSkill:
//                         m_Component.enabled = config.Skillable == 1;
//                         break;
//                     case EnableType.SelectPlayer:
//                         m_Component.enabled = config.SelectPlayerable == 1;
//                         break;
//                 }
//             }
//             else
//             {
//                 switch (m_EnableType)
//                 {
//                     case EnableType.PlayerMove:
//                         m_Component.SetActive(true);
//                         break;
//                     case EnableType.PlayerSkill:
//                         m_Component.enabled = true;
//                         break;
//                     case EnableType.SelectPlayer:
//                         m_Component.enabled = true;
//                         break;
//                 }
//             }
//         }
        public enum EnableType
        {
            PlayerMove,
            PlayerSkill,
            SelectPlayer,
        }
//         public enum EnableType
//         {
//             PlayerMove,
//             PlayerSkill,
//             SelectPlayer,
//         }
    }
//     }
}
// }