internal void TransportHasArrived(PositionType.PositionsType type, Transport transport) { if (type != _type) { return; } if (_willTakeTransport && !_isEscaped) { _transport = transport; BoardTransport(); } }
private void SetNewTimer(PositionType.PositionsType type) { if (_minMaxArrivalInterval.Count > 0) { var newMinMax = _minMaxArrivalInterval[0]; _minMaxArrivalInterval.RemoveAt(0); _arrivalTimer = 0; _arrivalThreshold = UnityEngine.Random.Range(newMinMax.x, newMinMax.y); SetTransportTimer(type); } else { // End game when this transport leaves } }
private void SetTransportTimer(PositionType.PositionsType type) { if (type == PositionType.PositionsType.Airport) { _countPlaneArrival = true; _planeThreshold = _arrivalThreshold + 10; } if (type == PositionType.PositionsType.Bus) { _countBusArrival = true; _busThreshold = _arrivalThreshold + 10; } if (type == PositionType.PositionsType.Train) { _countTrainArrival = true; _trainThreshold = _arrivalThreshold + 10; } }
internal void TransportWillAriveSoon(PositionType.PositionsType type) { if (type != _type) { return; } if (!_isPrisoner) { if (UnityEngine.Random.Range(0, 100) < _chanceToEnterTransport) { _willTakeTransport = true; GoToPlatform(); } } else if (!_isEscaped) { _willTakeTransport = true; GoToPlatform(); } }
internal void SetPositionType(PositionType.PositionsType type) { _type = type; }