protected override void OnUpdate() { if (this.partyHappinessQuery.CalculateEntityCount() > 0) { PartyHappiness partyHappiness = this.partyHappinessQuery.ToComponentArray <PartyHappiness>()[0]; Entities.ForEach((Entity entity, HUD hud) => { hud.PartyHappinessText.text = $"Party Happiness: {(int)(partyHappiness.Happiness)}%"; }); } }
protected override void OnUpdate() { if (this.partyHappinessQuery.CalculateEntityCount() > 0) { PartyHappiness partyHappiness = this.partyHappinessQuery.ToComponentArray <PartyHappiness>()[0]; if (partyHappiness.Happiness > 0f) { Entities.ForEach((Entity entity, Score score) => { score.Value += Mathf.CeilToInt(Time.DeltaTime * 30f); }); } } }
protected override void OnUpdate() { if (this.partyHappinessQuery.CalculateEntityCount() > 0) { PartyHappiness partyHappiness = this.partyHappinessQuery.ToComponentArray <PartyHappiness>()[0]; float numCharacters = 0f; float totalHappiness = 0f; Entities.WithNone <PlayerControlled>().ForEach((Entity entity, Character character) => { numCharacters += 1f; totalHappiness += character.Happiness; }); partyHappiness.Happiness = Mathf.Clamp(totalHappiness / numCharacters, 0f, partyHappiness.MaxPartyHappiness.Value); } }