| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 | 
							- using System.Linq;
 
- using Core.Event.Event;
 
- using Excel2Json;
 
- using Fort23.Core;
 
- using Fort23.UTool;
 
- using UnityEngine;
 
- public class RedDotWidget : MonoBehaviour
 
- {
 
-     public int RedDotConfigId;
 
-     public int GroupId;
 
-     public int Layer;
 
-     public int[] LinkGroupIds;
 
-     public int UnlockId;
 
-     public GameObject RedDotRoot;
 
-     
 
-     [ContextMenu("test")]
 
-     public void Test()
 
-     {
 
-         RedDotUpdate(new DefaultEventData(){eventData = 0});
 
-     }
 
-     public void Start()
 
-     {
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotUpdate, RedDotUpdate);
 
-         EventManager.Instance.AddEventListener(CustomEventType.RedDotUpdate, RedDotUpdate);
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotChangeState, RedDotChangeState);
 
-         EventManager.Instance.AddEventListener(CustomEventType.RedDotChangeState, RedDotChangeState);
 
-         ReddotConfig reddotConfig = ConfigComponent.Instance.Get<ReddotConfig>(RedDotConfigId);
 
-         RedDotRoot.SetActive(false);
 
-         GroupId = reddotConfig.GroupID;
 
-         Layer = reddotConfig.Layer;
 
-         LinkGroupIds = reddotConfig.LinkGroupID;
 
-         RedDotUpdate(new DefaultEventData(){eventData = 0});
 
-     }
 
-     private void RedDotChangeState(IEventData e)
 
-     {
 
-         if (UnlockId != 0)
 
-         {
 
-             if (!ULockManager.Instance.IsULock(UnlockId))
 
-             {
 
-                 return;
 
-             }
 
-         }
 
-         ReddotConfig reddotConfig = ConfigComponent.Instance.Get<ReddotConfig>(RedDotConfigId);
 
-         DefaultEventData data = (DefaultEventData)e;
 
-         int[] eventData = data.eventData as int[];
 
-         if (eventData[0] == RedDotConfigId)
 
-         {
 
-             if (eventData[1] == 0)
 
-             {
 
-                 // if (reddotConfig.Visible == 1)
 
-                 {
 
-                     RedDotRoot.SetActive(false);
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 RedDotRoot.SetActive(true);
 
-             }
 
-         }
 
-     }
 
-     public void CustomInit(int reddDotConfigId)
 
-     {
 
-         RedDotConfigId = reddDotConfigId;
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotUpdate, RedDotUpdate);
 
-         EventManager.Instance.AddEventListener(CustomEventType.RedDotUpdate, RedDotUpdate);
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotChangeState, RedDotChangeState);
 
-         EventManager.Instance.AddEventListener(CustomEventType.RedDotChangeState, RedDotChangeState);
 
-         ReddotConfig reddotConfig = ConfigComponent.Instance.Get<ReddotConfig>(RedDotConfigId);
 
-         RedDotRoot.SetActive(false);
 
-         GroupId = reddotConfig.GroupID;
 
-         Layer = reddotConfig.Layer;
 
-         LinkGroupIds = reddotConfig.LinkGroupID;
 
-         RedDotUpdate(new DefaultEventData(){eventData =  0});
 
-     }
 
-     private void RedDotUpdate(IEventData e)
 
-     {
 
-         DefaultEventData data = (DefaultEventData)e;
 
-         if ((int)data.eventData != 0 && (int)data.eventData != GroupId)
 
-         {
 
-             return;
 
-         }
 
-         if (UnlockId != 0)
 
-         {
 
-             if (ULockManager.Instance.IsULock(UnlockId))
 
-             {
 
-                 if (RedDotManager.Instance.TargetRedDotIsEnable(RedDotConfigId))
 
-                 {
 
-                     RedDotRoot.SetActive(true);
 
-                     ReddotConfig reddotConfig = ConfigComponent.Instance.Get<ReddotConfig>(RedDotConfigId);
 
-                     if (reddotConfig.EnableForTarget != 0)
 
-                     {
 
-                         bool isEnable = RedDotManager.Instance.TargetRedDotIsEnable2(reddotConfig.EnableForTarget);
 
-                         if (isEnable)
 
-                         {
 
-                             RedDotRoot.SetActive(true);
 
-                         }
 
-                         else
 
-                         {
 
-                             RedDotRoot.SetActive(false);
 
-                         }
 
-                     }
 
-                 }
 
-                 else
 
-                 {
 
-                     RedDotRoot.SetActive(false);
 
-                 }
 
-             }
 
-         }
 
-         else
 
-         {
 
-             if (RedDotManager.Instance.TargetRedDotIsEnable(RedDotConfigId))
 
-             {
 
-                 RedDotRoot.SetActive(true);
 
-                 ReddotConfig reddotConfig = ConfigComponent.Instance.Get<ReddotConfig>(RedDotConfigId);
 
-                 if (reddotConfig.EnableForTarget != 0)
 
-                 {
 
-                     bool isEnable = RedDotManager.Instance.TargetRedDotIsEnable2(reddotConfig.EnableForTarget);
 
-                     if (isEnable)
 
-                     {
 
-                         RedDotRoot.SetActive(true);
 
-                     }
 
-                     else
 
-                     {
 
-                         RedDotRoot.SetActive(false);
 
-                     }
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 RedDotRoot.SetActive(false);
 
-             }
 
-         }
 
-     }
 
-     public void OnDestroy()
 
-     {
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotUpdate, RedDotUpdate);
 
-         EventManager.Instance.RemoveEventListener(CustomEventType.RedDotChangeState, RedDotChangeState);
 
-     }
 
- }
 
 
  |