public void ObjectOutOfView(RunningObjectBehaviour obj) { if (obj.gameObject.tag == "place") { availablePlaces.Add((AvailablePlaceBehaviour)obj); } else { objects.Add(obj); } }
public void ObjectInView(RunningObjectBehaviour obj) { if (obj.gameObject.tag == "place") { availablePlaces.Remove((AvailablePlaceBehaviour)obj); } else { objects.Remove(obj); } }
public void ObjectStateCalculated(RunningObjectBehaviour obj, bool isInFOV) { if (isInFOV && !objectsInFov.Contains(obj)) { objectsInFov.Add(obj); objectsOutOfFov.Remove(obj); _pM.ObjectInView(obj); } else if (!isInFOV && !objectsOutOfFov.Contains(obj)) { objectsOutOfFov.Add(obj); objectsInFov.Remove(obj); _pM.ObjectOutOfView(obj); } }