public override void EnterState(PlayerController.CharacterStateNames p_prevState)
    {
        //Debug.Log("DYING DRAGON");
        GameObject exp = ExplosionManager.Inst.GetExplosion();

        exp.transform.position = m_cont.gameObject.transform.position;
        Object.Destroy(m_cont.gameObject);
    }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     m_stompTime  = m_cont.m_stompPauseDuration;
     flag         = false;
     m_hasStomped = false;
     m_lastState  = p_prevState;
     //Debug.Log("Stomping");
 }
    public override void EnterState(PlayerController.CharacterStateNames p_prevState)
    {
        m_riseTime  = m_cont.m_riseDuration;
        m_direction = m_cont.m_Direction;

        AudioManager.GetInstance().PlayClip(3);

        //Debug.Log("Rising!");
    }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     //Debug.Log("Shooting a fireball");
     m_cont.m_shootCooldown = m_cont.m_shootMaxCooldown;
     m_ShootTime            = m_cont.m_shootDuration;
     m_ShootDelayTime       = m_cont.m_ShootDelayTime;
     m_laststate            = p_prevState;
     m_hasShot        = false;
     m_shootDirection = new Vector2(m_cont.m_Direction, 0.0f);
 }
    public override void EnterState(PlayerController.CharacterStateNames p_prevState)
    {
        m_chompTime  = m_cont.m_chompDuration;
        m_waitTime   = m_cont.m_chompWaitTime;
        m_lastState  = p_prevState;
        m_col.size   = new Vector2(4.0f, 2.0f);
        m_col.offset = new Vector2(0.0f, -1.2f);
        m_hasChomped = false;

        //Debug.Log("Chomp");
    }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     if (p_prevState != PlayerController.CharacterStateNames.ShootState)
     {
         m_jumpTime = m_cont.m_jumpDuration;
     }
     else
     {
         m_jumpTime = 0;
     }
     AudioManager.GetInstance().PlayClip(19);
 }
    public override void EnterState(PlayerController.CharacterStateNames p_prevState)
    {
        m_cont.GetComponent <Health>().Blocking = true;
        m_blockTime = m_cont.m_blockDuration;
        //Debug.Log("Blocking");
        Shield = Object.Instantiate(Resources.Load("DragonShield", typeof(GameObject))) as GameObject;
        AudioManager.GetInstance().PlayClip(20);
        Vector3 l_facing = Shield.transform.localScale;

        l_facing.x = m_cont.m_Direction * -1;
        Shield.transform.localScale = l_facing;
        Shield.transform.position   = m_cont.transform.position + new Vector3(m_cont.m_Direction * 2, 0, 0);;
    }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     m_direction = m_cont.m_Direction;
     m_hurtTimer = m_cont.m_hurtTimer;
     //Debug.Log("Dragon was Hurt");
 }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     //Debug.Log("Idling");
 }
 public override void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
     m_cont.m_dashCooldown = m_cont.m_maxDashCoolDown;
 }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     m_dashTime  = m_cont.m_dashDuration;
     m_direction = m_cont.m_Direction;
     //Debug.Log("Dashing!");
 }
 public override void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
     m_cont.GetComponent <Health>().Blocking = false;
     m_cont.m_blockCooldown = m_cont.m_maxBlockCoolDown;
     Object.Destroy(Shield);
 }
 public override void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
     Object.Destroy(m_hitbox);
 }
 public virtual void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
 }
    public override void EnterState(PlayerController.CharacterStateNames p_prevState)
    {
//Debug.Log("Walking");
        //AudioManager.GetInstance().PlayClip(10);
    }
 public override void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
     m_col.size   = new Vector2(3.0f, 4.0f);
     m_col.offset = new Vector2(0f, -0.2f);
     Object.Destroy(m_hitbox);
 }
 public override void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
     //Debug.Log("In Crouching State");
     m_col.size   = new Vector2(4.0f, 2.0f);
     m_col.offset = new Vector2(0.0f, -1.2f);
 }
 public override void ExitState(PlayerController.CharacterStateNames p_nextState)
 {
 }
 public virtual void EnterState(PlayerController.CharacterStateNames p_prevState)
 {
 }