void Update()
 {
     if (cooldownTimer > 0.0f)
     {
         cooldownTimer -= Time.deltaTime;
     }
     if (!isDashing)
     {
         return;
     }
     if (dashTimer > 0.0f)
     {
         //Apply velocity for dashing
         Vector2 dashDirection = characterController.spriteRenderer.flipX ? Vector2.left : Vector2.right;
         //rb.velocity = dashDirection * dashSpeed;
         characterController.Movement(dashDirection * dashSpeed * Time.deltaTime, false);
         characterController.gravityModifier = 0.0f;
         dashTimer -= Time.deltaTime;
         isDashing  = true;
     }
     else
     {
         //Stop dashing and start cooldown
         isDashing = false;
         characterController.gravityModifier = 2.0f;
         //rb.velocity = new Vector2(0.0f, 0.0f);
         cooldownTimer = dashCooldown;
         dashTimer     = maxDashDuration;
     }
 }