public ShipObstacleDistance(GenericShip ship, GenericObstacle obstacle)
        {
            CollisionDetectionQuality currentQuality = ObstaclesManager.CollisionDetectionQuality;

            ObstaclesManager.SetObstaclesCollisionDetectionQuality(CollisionDetectionQuality.Low);
            Ship     = ship;
            Obstacle = obstacle;

            if (!CheckDistanceSimple())
            {
                CheckDistanceAdvanced();
            }
            ObstaclesManager.SetObstaclesCollisionDetectionQuality(currentQuality);
        }
Beispiel #2
0
 public static void SetObstaclesCollisionDetectionQuality(CollisionDetectionQuality quality)
 {
     CollisionDetectionQuality = quality;
     if (quality == CollisionDetectionQuality.High)
     {
         foreach (GenericObstacle obstacle in Instance.ChosenObstacles)
         {
             obstacle.ObstacleGO.GetComponentInChildren <MeshCollider>().isTrigger = false;
             obstacle.ObstacleGO.GetComponentInChildren <MeshCollider>().convex    = false;
         }
     }
     else
     {
         foreach (GenericObstacle obstacle in Instance.ChosenObstacles)
         {
             obstacle.ObstacleGO.GetComponentInChildren <MeshCollider>().convex    = true;
             obstacle.ObstacleGO.GetComponentInChildren <MeshCollider>().isTrigger = true;
         }
     }
 }