static public void Remove(DriverPlayer player, bool triggerGameOver) { activePlayers.Remove(player); if (triggerGameOver && activePlayers.Count == 0) { activeManager.GameOver(); } }
private void FindAnAttackTarget() { if (attackTarget == null) { DriverPlayer player = PlayerManager.FindNearest(car.transform.position); if (player != null) { attackTarget = player.car; } } }
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); }
// 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(); }
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); }
// 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; } }
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 }
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); }
public void SetPlayer(DriverPlayer player) { driver = player; }