public void Initialize(int unitID, int unitTier, Line line, FactionEnum faction, Material factionMaterial) { UnitID = unitID; if (unitTier < 0 || unitTier > unitTiers.Count - 1) { _unitData = unitTiers[0]; } else { _unitData = unitTiers[unitTier]; } unitHealth.Initialize(_unitData.HitPoints, false); Line = line; Faction = faction; transform.position = Line.GetSpawnPointPosition(Faction); _nextCheckpointIndex = 0; _destination = Line.GetCheckpointPosition(_nextCheckpointIndex, Faction); transform.LookAt(_destination); if (colorSwitcher != null) { colorSwitcher.SwitchColors(factionMaterial.color); } }
private void Upgrade(int tier) { float dmg = 0; if (tier > 0) { dmg = outpostTiers[_outpostTier].Health - GetHealth(); } _outpostTier = tier; _outpostData = outpostTiers[_outpostTier]; healthSlider.Initialize(_outpostData.Health, _outpostData.Health - dmg, true); healthText.text = ((int)_outpostData.Health - dmg).ToString(); EventManager.Instance.ExecuteEvent <IOutpostUpgraded>((x, y) => x.OnOutpostUpgraded(_outpostData, Faction)); }