public void TriggerExit(WSB_TriggerCam _trigger) { if (lastTriggered.Contains(_trigger)) { lastTriggered.Remove(_trigger); } }
public void TriggerEntered(WSB_TriggerCam _trigger) { // Checks if the trigger is already used or any other triggers have a player inside if (lastTriggered.Contains(_trigger) || lastTriggered.Find(t => t != _trigger && t.PlayersIn > 0)) { return; } lastTriggered.Add(_trigger); //// If the FOV has to change, call the methods to do it //if (!IsOrtho && camBan.Cam.fieldOfView != _trigger.FOV) // camBan.SetFOV(_trigger.FOV); //if (!IsOrtho && camLux.Cam.fieldOfView != _trigger.FOV) // camLux.SetFOV(_trigger.FOV); // Change the type of the camera to the trigger given type switch (_trigger.Type) { case CamType.Fixe: SwitchCamType(CamType.Fixe, _trigger.Position, _trigger.Zoom); break; case CamType.Dynamic: SwitchCamType(CamType.Dynamic, _trigger.Position); break; case CamType.SplitFixe: SwitchCamType(CamType.SplitFixe, _trigger.Angle, /*IsOrtho ? */ _trigger.Zoom /* : _trigger.Position.z*/); break; case CamType.SplitDynamic: SwitchCamType(CamType.SplitDynamic, _trigger.Position); break; } }