public void Convert(Entity entity, EntityManager entityManager, GameObjectConversionSystem conversionSystem) { entityManager.AddComponent(entity, typeof(InsideRoom)); var hunger = new HungerLevel(); hunger.Value = 50; var happy = new HappinessLevel(); happy.Value = 50; var temperature = new Temperature(); temperature.Value = 68; var timeRemaining = new TimeToLeave(); timeRemaining.TimeRemaining = 60; entityManager.AddComponentData(entity, hunger); entityManager.AddComponentData(entity, happy); entityManager.AddComponentData(entity, temperature); entityManager.AddComponentData(entity, timeRemaining); }
public FamilyMemberResult( FamilyMember familyMember, Gift gift, HappinessLevel happinessLevel) { FamilyMember = familyMember; Gift = gift; HappinessLevel = happinessLevel; }
public static HappinessLevel DecrementHappiness(HappinessLevel level) { if (level == HappinessLevel.NoGift) { return(level); } if (level == HappinessLevel.Hate) { return(level); } return(happinessLevelOrder[Array.IndexOf(happinessLevelOrder, level) - 1]); }
public static HappinessLevel IncrementHappiness(HappinessLevel level) { if (level == HappinessLevel.NoGift) { return(level); } if (level == HappinessLevel.Favorite) { return(level); } return(happinessLevelOrder[Array.IndexOf(happinessLevelOrder, level) + 1]); }
void SetHappinessLevel() { HappinessLevel highestLevel = happinessLevels[0]; foreach (var level in happinessLevels) { if (happiness > level.amt && highestLevel.amt < level.amt) { highestLevel = level; } } currentHappinessLevel = highestLevel; happinessImage.sprite = currentHappinessLevel.sprite; SM.breedNote.SetActive(currentHappinessLevel.canBreed && CreatureManager.Instance.creaturesInWorld.Count > 1); //face.sprite = currentHappinessLevel.faceSprite; speedMultiplier = currentHappinessLevel.speedMultiplier; }
void SetHappinessLevel() { HappinessLevel highestLevel = happinessLevels[0]; foreach (var level in happinessLevels) { if (happiness > level.amt && highestLevel.amt < level.amt) { highestLevel = level; } } currentHappinessLevel = highestLevel; happinessImage.sprite = currentHappinessLevel.sprite; SM.breedNote.SetActive(currentHappinessLevel.canBreed); face.sprite = currentHappinessLevel.faceSprite; speedMultiplier = currentHappinessLevel.speedMultiplier; }
public Sprite GetHappinessLevelSprite(HappinessLevel happinessLevel) { switch (happinessLevel) { case HappinessLevel.Hate: return(hateSprite); case HappinessLevel.Disappointed: return(disappointedSprite); case HappinessLevel.Indifferent: return(indifferentSprite); case HappinessLevel.Satisfied: return(satisfiedSprite); case HappinessLevel.Happy: return(happySprite); case HappinessLevel.Love: return(loveSprite); case HappinessLevel.Favorite: return(favoriteSprite); default: return(invalidSprite); } }
public static EndOfGameResults EvaluateGameResults(ReadOnlyDictionary <FamilyMember, Gift> choices) { var familyMemberResults = new List <FamilyMemberResult>(); int score = 0; foreach (KeyValuePair <FamilyMember, Gift> kvp in choices) { FamilyMember member = kvp.Key; Gift gift = kvp.Value; HappinessLevel happiness = GetHappinessLevelForGiftChoice(member, gift); score += CalculateBaseScoreForGiftChoice(member, gift); familyMemberResults.Add(new FamilyMemberResult( familyMember: member, gift: gift, happinessLevel: happiness)); } return(new EndOfGameResults( familyMemberResults: familyMemberResults.ToArray(), score: score)); }
public override void AnimateChanges( FamilyMember source, Dictionary <FamilyMember, FamilyMemberResult> results, Dictionary <FamilyMember, FamilyMemberPortrait> portraits, int score, out int modifiedScore) { base.AnimateChanges(source, results, portraits, score, out modifiedScore); int outScore = modifiedScore; portraits.ForEach((member, portrait) => { if (member == source) { return; } Gift sourceGift = results[source].Gift; Gift evalGift = results[member].Gift; if (sourceGift.Cost > evalGift.Cost) { HappinessLevel current = portrait.HappinessLevel; HappinessLevel modified = ResultsEvaluation.DecrementHappiness(portrait.HappinessLevel); int scoreDifference = ResultsEvaluation.GetHappinessScoreDifference(current, modified); portrait.PlayNegativePingAnimation(); portrait.HappinessLevel = modified; outScore += scoreDifference; } }); modifiedScore = outScore; }
public static int GetHappinessScoreDifference(HappinessLevel prev, HappinessLevel next) { return(GetHappinessScoreValue(next) - GetHappinessScoreValue(prev)); }
public static int GetHappinessScoreValue(HappinessLevel happiness) { return((int)happiness * HappinessMultiplier); }
public static int CalculateBaseScoreForGiftChoice(FamilyMember member, Gift gift) { HappinessLevel happiness = GetHappinessLevelForGiftChoice(member, gift); return(GetHappinessScoreValue(happiness)); }
public async Task <ActionResult <long> > AddInmate(string name, decimal size, ArrestLocation arrestLocation, HungerLevel hungerLevel, HappinessLevel happinessLevel) { _logger.LogInformation("I just got an AddInmate request"); return(await _inmateCrudService.AddInmateAndReturnId(name, size, arrestLocation, hungerLevel, happinessLevel)); }