Exemple #1
0
 public void Init(VehicleDirection vehicleDirection, RelativePositionCars relativePositionCars, SignPriorityWay signValue)
 {
     _movementAtCrossroad  = GetComponent <PointMovement>();
     _signValue            = signValue;
     _relativePositionCars = relativePositionCars;
     _vehicleDirection     = vehicleDirection;
     EnableTurnSignalCar(vehicleDirection);
 }
Exemple #2
0
 private bool IsOncomingTraffic(RelativePositionCars currentCar, RelativePositionCars carAtCrossroad)
 {
     if ((currentCar == RelativePositionCars.player && carAtCrossroad == RelativePositionCars.nord) || (currentCar == RelativePositionCars.east && carAtCrossroad == RelativePositionCars.west) ||
         (currentCar == RelativePositionCars.nord && carAtCrossroad == RelativePositionCars.player) || (currentCar == RelativePositionCars.west && carAtCrossroad == RelativePositionCars.east))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemple #3
0
 private bool IsHindranceOnRight(RelativePositionCars currentCar, RelativePositionCars carAtCrossroad)
 {
     if ((currentCar == RelativePositionCars.player && carAtCrossroad == RelativePositionCars.east) || (currentCar == RelativePositionCars.east && carAtCrossroad == RelativePositionCars.nord) ||
         (currentCar == RelativePositionCars.nord && carAtCrossroad == RelativePositionCars.west) || (currentCar == RelativePositionCars.west && carAtCrossroad == RelativePositionCars.player))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemple #4
0
    private VehicleDirection GetRandomDirection(RelativePositionCars relativePositionCars, SignPriorityWay signValue)
    {
        int directionNumber;

        do
        {
            if (signValue == SignPriorityWay.unsigned)//на равнозначных дорогах исключаем поворот на лево
            {
                directionNumber = Random.Range(1, 3);
            }
            else
            {
                directionNumber = Random.Range(0, 3);
            }
        } while ((relativePositionCars == RelativePositionCars.east && (VehicleDirection)directionNumber == VehicleDirection.right) ||//В игре машины не должны ехать в направлении игрока
                 (relativePositionCars == RelativePositionCars.west && (VehicleDirection)directionNumber == VehicleDirection.left));

        return((VehicleDirection)directionNumber);
    }