public string getAnim(HeroStage stage) { switch (stage) { case HeroStage.start: return(run); case HeroStage.run: return(run); case HeroStage.jump: return(jump); case HeroStage.kick: return(dash); case HeroStage.stop: return(relax); case HeroStage.attack: return(attack); case HeroStage.death: return(death); default: return(idle); } }
// Use this for initialization private void Start() { stage = HeroStage.start; runSpeed = runSpeed <= 0f ? 1f : runSpeed; dirJump = Vector3.up * 0.05f; // rigid = heroObject.GetComponent<Rigidbody> (); isJumpAgain = true; audioSource = gameObject.GetComponent <AudioSource> (); }
private void onChangeStage(HeroStage oldStage, HeroStage newStage) { if (oldStage == newStage || (newStage == HeroStage.jump && !isWillJump())) { return; } else if (oldStage == HeroStage.jump) { didJump(); } else if (newStage == HeroStage.death) { playClip(soundDeath); } // Change Anim animator.SetBool(heroAnim.getAnim(newStage), true); time = 0f; }
public void setStage(HeroStage stage) { onChangeStage(this.stage, stage); this.stage = stage; setRunDir(); }