// Start is called before the first frame update void Start() { myNeed = NEEDS.NONE; myState = STATE.MOVING; statHealth = 0; statLove = 0; statInteligence = 0; statHealthFails = 0; statLoveFails = 0; statInteligenceFails = 0; angle = 0; timeSinceAngleChange = Time.time; rigidbody2d = GetComponent <Rigidbody2D>(); animator = GetComponent <Animator>(); audioSource = GetComponent <AudioSource>(); spriteRenderer = this.gameObject.GetComponent <SpriteRenderer>(); spriteRenderer.sprite = baby; spawnPoint = transform.position; spawnRotation = transform.rotation; ForceNeedClear(); myUIStatHealthText.text = "H: " + statHealth + " / " + (statHealth + statHealthFails); myUIStatLoveText.text = "L: " + statLove + " / " + (statLove + statLoveFails); myUIStatInteligenceText.text = "I: " + statInteligence + " / " + (statInteligence + statInteligenceFails); }
// Update is called once per frame void Update() { if (myNeed != NEEDS.NONE) { myUI.SetUINeed((Time.time - timeOfNeedStart) / needLength); if (Time.time - timeOfNeedStart > needLength) { // Failed to meet need! switch (myNeed) { case NEEDS.CLEAN: statHealthFails++; break; case NEEDS.FOOD: statHealthFails++; break; case NEEDS.EDUCATE: statInteligenceFails++; break; case NEEDS.LOVE: statLoveFails++; break; case NEEDS.SLEEP: statHealthFails++; break; } MakeMess(myNeed); myNeed = NEEDS.NONE; myUINeedText.text = "NEED: None "; myUI.SetUINeed(0); myUIStatHealthText.text = "H: " + statHealth + " / " + (statHealth + statHealthFails); myUIStatLoveText.text = "L: " + statLove + " / " + (statLove + statLoveFails); myUIStatInteligenceText.text = "I: " + statInteligence + " / " + (statInteligence + statInteligenceFails); } } // Handle random child movement if (Time.time - timeSinceAngleChange > AngleChangeTime) { timeSinceAngleChange = Time.time; angle = Random.Range(0, 360); } if (myState == STATE.MOVING) { horizontal = Mathf.Sin(Mathf.Deg2Rad * angle); vertical = Mathf.Cos(Mathf.Deg2Rad * angle); } }
public void HelpChild(NEEDS givenNeed) { if (myNeed == givenNeed) { Debug.Log("You met the childs need!"); // Failed to meet need! switch (myNeed) { case NEEDS.CLEAN: statHealth++; playCleanAudio(); break; case NEEDS.FOOD: statHealth++; playFoodAudio(); break; case NEEDS.EDUCATE: statInteligence++; playLearnAudio(); break; case NEEDS.LOVE: statLove++; playLoveAudio(); break; case NEEDS.SLEEP: statHealth++; playSleepAudio(); break; } myNeed = NEEDS.NONE; myUINeedText.text = "NEED: None "; myUI.SetUINeed(0); myLevelController.NeedMet(); myUIStatHealthText.text = "H: " + statHealth + " / " + (statHealth + statHealthFails); myUIStatLoveText.text = "L: " + statLove + " / " + (statLove + statLoveFails); myUIStatInteligenceText.text = "I: " + statInteligence + " / " + (statInteligence + statInteligenceFails); } else { Debug.Log("You gave the child the wrong need!"); } }
// Trigger a need at time of game day public void TriggerNeed(float percentDay) { int sel; if (myNeed == NEEDS.NONE) { Debug.Log("Triggering" + myStage + " Event at " + percentDay); switch (myStage) { case STAGE.BABY: // Handle BABY Times playWhineAudio(); if (percentDay < .25 || percentDay >= .75) { myNeed = NEEDS.SLEEP; } if (percentDay >= 0.25 && percentDay < 0.75) { sel = Random.Range(0, 3); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.CLEAN; } else { myNeed = NEEDS.SLEEP; } } timeOfNeedStart = Time.time; break; case STAGE.TODDLER: // Handle TODDLER Times playWhineAudio(); if (percentDay < .3 || percentDay >= .7) { myNeed = NEEDS.SLEEP; } if (percentDay >= 0.3 && percentDay < 0.7) { sel = Random.Range(0, 3); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.CLEAN; } else { myNeed = NEEDS.LOVE; } } timeOfNeedStart = Time.time; break; case STAGE.CHILD: // Handle CHILD Times playWhineAudio(); if (percentDay < .3 || percentDay >= .7) { myNeed = NEEDS.SLEEP; } if (percentDay >= 0.3 && percentDay < 0.4) { sel = Random.Range(0, 4); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.CLEAN; } else if (sel == 2) { myNeed = NEEDS.EDUCATE; } else { myNeed = NEEDS.LOVE; } } if (percentDay >= 0.4 && percentDay < 0.6) { sel = Random.Range(0, 3); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.LOVE; } else if (sel == 2) { myNeed = NEEDS.EDUCATE; } } if (percentDay >= 0.6 && percentDay < 0.7) { sel = Random.Range(0, 4); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.CLEAN; } else if (sel == 2) { myNeed = NEEDS.EDUCATE; } else { myNeed = NEEDS.LOVE; } } timeOfNeedStart = Time.time; break; case STAGE.TEEN: // Handle TEEN Times playWhineAudio(); sel = Random.Range(0, 5); if (sel == 0) { myNeed = NEEDS.FOOD; } else if (sel == 1) { myNeed = NEEDS.CLEAN; } else if (sel == 2) { myNeed = NEEDS.EDUCATE; } else if (sel == 3) { myNeed = NEEDS.SLEEP; } else { myNeed = NEEDS.LOVE; } timeOfNeedStart = Time.time; break; default: break; } } string currentNeedText = ""; switch (myNeed) { case NEEDS.NONE: currentNeedText = "None"; break; case NEEDS.CLEAN: currentNeedText = "Clean"; break; case NEEDS.FOOD: currentNeedText = "Food"; break; case NEEDS.EDUCATE: currentNeedText = "Educate"; break; case NEEDS.LOVE: currentNeedText = "Love"; break; case NEEDS.SLEEP: currentNeedText = "Sleep"; break; } myUINeedText.text = "NEED: " + currentNeedText; }
public void ForceNeedClear() { myNeed = NEEDS.NONE; myUI.SetUINeed(0); }