Esempio n. 1
0
 static public void Remove(DriverPlayer player, bool triggerGameOver)
 {
     activePlayers.Remove(player);
     if (triggerGameOver && activePlayers.Count == 0)
     {
         activeManager.GameOver();
     }
 }
Esempio n. 2
0
 private void FindAnAttackTarget()
 {
     if (attackTarget == null)
     {
         DriverPlayer player = PlayerManager.FindNearest(car.transform.position);
         if (player != null)
         {
             attackTarget = player.car;
         }
     }
 }
Esempio n. 3
0
    public void Init(DriverPlayer driver)
    {
        if (driver.car.currentFuel <= 0)
        {
            message.text = "No Fuel";
        }
        string text = "Score : " + (int)driver.score;

        string[] chars = text.Split();
        score.text = string.Join(" ", chars);
    }
Esempio n. 4
0
        // TODO: This class should do version detect first before initializing session, drivers and driverplayer classes.

        public rFactor2(Simulator simulator)
        {
            Sim  = simulator;
            Game = new MemoryPolledReader(simulator);

            Session = new Session();
            Drivers = new Drivers();

            Player = new DriverPlayer();
            Garage = new rFactor2Garage();
        }
Esempio n. 5
0
    void SpawnEnemyNear(DriverPlayer player)
    {
        Vector3 position = GetSpawnLocationNear(player.car.transform);

        Car car = Instantiate(enemyPrefab, position, Quaternion.identity);

        car.InitSpeed(player.car);

        DriverAI ai = new DriverAI();

        ai.TakeControl(car);
        activeAi.Add(ai);

        spawnTimer = Random.Range(1, 2);
    }
Esempio n. 6
0
 // Update is called once per frame
 void Update()
 {
     if (activeAi.Count < maxEnemies && spawnTimer <= 0)
     {
         DriverPlayer player = PlayerManager.PickRandom();
         if (player != null && player.car != null)
         {
             SpawnEnemyNear(player);
         }
     }
     else if (spawnTimer > 0)
     {
         spawnTimer -= Time.deltaTime;
     }
 }
Esempio n. 7
0
    void SpawnPlayer()
    {
        DriverPlayer player = new DriverPlayer(); // spawn player

        activePlayers.Add(player);

        Car car = Instantiate(playerCarPrefab);        // spawn car

        player.TakeControl(car);                       // player takes control of new car

        camera.target = car;                           // set camera to follow new car

        PlayerHUD hud = Instantiate(prefabGuiOverlay); // spawn hud for this player

        hud.SetPlayer(player);                         // set hud to track this player
    }
Esempio n. 8
0
    public static DriverPlayer FindNearest(Vector3 position)
    {
        float        nearestPlayerDistance = 0;
        DriverPlayer nearestPlayer         = null;

        for (int i = 0; i < activePlayers.Count; i++)
        {
            DriverPlayer player = activePlayers[i];
            if (player.car == null)
            {
                continue;
            }
            float dis2 = (player.car.transform.position - position).sqrMagnitude;
            if (i == 0 || dis2 < nearestPlayerDistance)
            {
                nearestPlayerDistance = dis2;
                nearestPlayer         = player;
            }
        }
        return(nearestPlayer);
    }
Esempio n. 9
0
 public void SetPlayer(DriverPlayer player)
 {
     driver = player;
 }