public virtual void UnitDie() { //if (!GameMaster.Player1Hero) //{ if (faction.Equals(Faction.Blue)) { ScoreRegister.AddRedScore(1); } else if (faction.Equals(Faction.Red)) { ScoreRegister.AddBlueScore(1); } if (Interactionable && !this.GetComponent <HerosUnit>()) { GetGUI.DesactivateButtons(); GetGUI.DesctivateProductionBar(); GetGUI.GUIButtons.Clear(); } //} if (GetComponentInChildren <TriggerXp>()) { GetComponentInChildren <TriggerXp>().GiveExp(); } DestroyIt(); }
public override void UnitDie() { // TODO if (faction.Equals(Faction.Blue)) { ScoreRegister.AddRedScore(1); } else if (faction.Equals(Faction.Red)) { ScoreRegister.AddBlueScore(1); } if (Interactionable && !this.GetComponent <HerosUnit>()) { GetGUI.DesactivateButtons(); GetGUI.DesctivateProductionBar(); GetGUI.GUIButtons.Clear(); } //} foreach (Order order in Orders) { if (order.BuildingGhost) { order.BuildingGhost.GetComponent <BuildingGhost>().NbWorkersAssigned--; } } SendMessage("StopAction"); Destroy(SmallHealthBar); Destroy(gameObject); }
void Awake() { currentExperiencePoints = PlayerPrefsManager.GetPlayerScore(); gameOverMessage.GetComponent <Text>().text = ScoreRegister.Winner == GameMaster.PlayerFaction ? "Victory" : "Defeat"; gameOverMessage.GetComponent <Text>().color = ScoreRegister.Winner == GameMaster.PlayerFaction ? Color.green : Color.red; experiencePointsEarned = ScoreRegister.PlayerScore(); experiencePointsEarned += ScoreRegister.Winner == GameMaster.PlayerFaction ? 100 : 0; playerAdditionnalPoints.GetComponent <Text>().text = "+ " + experiencePointsEarned.ToString(); UpdateExperiencePointsDisplay(); firstExperiencePoints = currentExperiencePoints; totalExperiencePoints = currentExperiencePoints + experiencePointsEarned; PlayerPrefsManager.SetPlayerScore(totalExperiencePoints); ScoreRegister.ResetScores(); }
// Update is called once per frame void Update() { if (HasBeenRepaired) { return; } if (IsDamaged) { if (Repairing) { CurrentRepairTime -= Time.deltaTime; if (CurrentRepairTime <= 0.1f) { IsDamaged = false; GetComponent <MeshFilter>().sharedMesh = RepariedObject.GetComponent <MeshFilter>().sharedMesh; if (!ShouldBreakAgain) { HasBeenRepaired = true; } Repairing = false; SetRepairedState(); print("repair complete"); CurrentTime = TimeUntilBroken; RepairProgress = 1.0f; GameObject go = GameObject.FindWithTag("ScoreText"); ScoreRegister other = (ScoreRegister)go.GetComponent(typeof(ScoreRegister)); if (ShouldBreakAgain) { other.EngineFixed(); } else { other.DamageFixed(); } } RepairProgress = CurrentRepairTime / TimeUntilRepair; progressSlider.value = 1.0f - RepairProgress; } return; } else if (TextVis) { CurrentVisTime -= Time.deltaTime; if (CurrentVisTime < 0.1f) { TextVis = false; //GameObject.FindWithTag("DamageText").GetComponent<TextMesh>().GetComponent<Renderer>().enabled = false; } } else { } CurrentTime -= Time.deltaTime; if (CurrentTime < 0.1f) { //GameObject.FindWithTag("DamageText").GetComponent<TextMesh>().color = Color.red; //GameObject.FindWithTag("DamageText").GetComponent<TextMesh>().text = "Damaged"; //GameObject.FindWithTag("DamageText").GetComponent<TextMesh>().GetComponent<Renderer>().enabled = true; IsDamaged = true; RepairProgress = 0.0f; progressSlider.value = 0.0f; GetComponent <MeshFilter>().sharedMesh = DamagedObject.GetComponent <MeshFilter>().sharedMesh; CurrentRepairTime = TimeUntilRepair; } }