public void EnterArea(CameraAreaTrigger area) { if (_areasList.IndexOf(area) > 0) { return; } _areasList.Add(area); area.Activate(this); }
public void ExitArea(CameraAreaTrigger area) { int areaIndex = _areasList.IndexOf(area); if (areaIndex < 0) { return; } if (areaIndex == _areasList.Count - 1) { _areasList.Remove(area); area.Deactivate(this); if (_areasList.Count > 0) { CameraAreaTrigger lastArea = _areasList[_areasList.Count - 1]; lastArea.Activate(this); } } else { _areasList.Remove(area); } }