// Update is called once per frame void Update() { // Check if the character is dead if (HealthComp.IsDead && !HealthComp.Respawning) { HealthComp.Respawning = true; gameObject.GetComponent <ParticleSystem>().Play(); this.LifeState = CharacterLifeState.Leafy_Dead; this.audioSource.PlayOneShot(deathSound); ResetLeafyAtCheckpoint(); } if (!HealthComp.IsDead && HealthComp.Damaged) { this.LifeState = CharacterLifeState.Leafy_Tired; } if (!HealthComp.Damaged && !HealthComp.IsDead) { this.LifeState = CharacterLifeState.Leafy_Idle; } MovementState = moveController.MovementState; // Set appropriate sprites this.GetComponent <CharacterLifeSpriteController>().SetState(LifeState); this.GetComponent <MovementSpriteController>().SetState(MovementState); }
IEnumerator Delayed() { yield return(new WaitForSeconds(Random.value)); Leafy.GetComponentInParent <LevelController>().ReloadPlayerAtCheckpoint(Leafy); this.LifeState = CharacterLifeState.Leafy_Idle; }
public void SetState(CharacterLifeState state) { if (SpriteLibrary.ContainsKey(state)) { currentState = state; renderer.sprite = SpriteLibrary[state]; this.GetComponentInParent <SpriteRenderer>().sprite = SpriteLibrary[state]; } }