Exemple #1
0
    void Update()
    {
        unidentifiedObjects.Clear();
        CollectColliders();

        if (Application.isPlaying)
        {
            for (int i = 0; i < unidentifiedObjects.Count; i++)
            {
                if (identifiedObjects.Contains(unidentifiedObjects[i]))
                {
                    kLight.TriggerBeamEvent(LightEventListenerType.OnStay, unidentifiedObjects[i]);
                }

                if (!identifiedObjects.Contains(unidentifiedObjects[i]))
                {
                    identifiedObjects.Add(unidentifiedObjects[i]);

                    kLight.TriggerBeamEvent(LightEventListenerType.OnEnter, unidentifiedObjects[i]);
                }
            }

            for (int i = 0; i < identifiedObjects.Count; i++)
            {
                if (!unidentifiedObjects.Contains(identifiedObjects[i]))
                {
                    kLight.TriggerBeamEvent(LightEventListenerType.OnExit, identifiedObjects[i]);

                    identifiedObjects.Remove(identifiedObjects[i]);
                }
            }
        }
    }