/// <summary> /// Спавнит UI-хелсбар /// </summary> private void SpawnHealthBar(CarBase car) { var healtBar = Instantiate(GlobalSettings.Instance.HealthBarPrefab).GetComponent <HealhBar>(); healtBar.Target = car.transform; car.OnHealthChanged += healtBar.ShowHealth; car.OnDeath += (x) => Destroy(healtBar.gameObject); }
/// <summary> /// Спавнит UI-обьект с ником /// </summary> private void SpawnFloatingNickName(CarBase car) { var nickNameComponent = Instantiate(GlobalSettings.Instance.NickNamePrefab).GetComponent <NameBar>(); nickNameComponent.Target = car.transform; nickNameComponent.NickName = car.GetCarNickName(); car.OnDeath += (x) => Destroy(nickNameComponent.gameObject); }
/// <summary> /// Отметка смерти машинки /// </summary> /// <param name="Car">Управляющий компонент машинки, которая умерла</param> /// void RegisterBotDeath(CarBase Car) { BotCars.Remove(BotCars.Find(x => x == Car)); AllCars.Remove(Car); if (BotCars.Count == 0) { WinMatch(); } }
private void OnTriggerEnter(Collider other) { CarBase car = other.gameObject.GetComponentInParent <CarBase>(); if (car != null) { car.KillImmediately(gameObject); } else { Destroy(other.gameObject); } }