Пример #1
0
 private void InvokeOnLineOfSightEXit(ILOSSource losSource)
 {
     if (OnLineOfSightExit != null)
     {
         OnLineOfSightExit(gameObject, losSource);
     }
 }
Пример #2
0
 private void InvokeOnLineOfSightEnter(ILOSSource losSource)
 {
     if (OnLineOfSightEnter != null)
     {
         OnLineOfSightEnter(gameObject, losSource);
     }
 }
Пример #3
0
 private void InvokeOnLineOfSightStay(ILOSSource losSource)
 {
     if (OnLineOfSightStay != null)
     {
         OnLineOfSightStay(gameObject, losSource);
     }
 }
Пример #4
0
 /// <summary>
 /// Updates the list with visible sources and trigger events if needed
 /// </summary>
 private void UpdateList(ILOSSource losSource, bool isVisible)
 {
     if (isVisible)
     {
         // LOS Source is already in list.
         if (m_VisibleSources.Contains(losSource))
         {
             InvokeOnLineOfSightStay(losSource);
         }
         // LOS Source is added to list.
         else
         {
             m_VisibleSources.Add(losSource);
             InvokeOnLineOfSightEnter(losSource);
         }
     }
     else
     {
         // Source is removed from list.
         if (m_VisibleSources.Contains(losSource))
         {
             m_VisibleSources.Remove(losSource);
             InvokeOnLineOfSightEXit(losSource);
         }
     }
 }