it seems like my ‘down’ boolean isn’t updating, any help plz?
Here is my code:
public void sprintManager()
{
if(needsSprint)
{
if(down)
{
CurrentWeapon.WeaponTransform.animation[CurrentWeapon.sprintLoopAnim].speed = 0.5f;
CurrentWeapon.WeaponTransform.animation.CrossFade(CurrentWeapon.sprintLoopAnim,0.2f);
}
else
down_to_sprint();
}
else
{
up_from_sprint();
}
}
void down_to_sprint()
{
CurrentWeapon.WeaponTransform.animation[CurrentWeapon.sprintInAnim].speed = 0.5f;
CurrentWeapon.WeaponTransform.animation.CrossFade(CurrentWeapon.sprintInAnim,0.2f);
if(animation_finished(CurrentWeapon.WeaponTransform.animation[CurrentWeapon.sprintInAnim].name))
down = true;
}
void up_from_sprint()
{
if(down)
{
CurrentWeapon.WeaponTransform.animation[CurrentWeapon.sprintOutAnim].speed = 0.5f;
CurrentWeapon.WeaponTransform.animation.CrossFade(CurrentWeapon.sprintOutAnim,0.2f);
if(animation_finished(CurrentWeapon.WeaponTransform.animation[CurrentWeapon.sprintOutAnim].name))
{
down = false;
force_idle();
}
}
}
public bool animation_finished(string anim)
{
if(CurrentWeapon.WeaponTransform.animation.IsPlaying(anim) || CurrentWeapon.WeaponTransform.animation[anim].normalizedTime >= 1 )
return true;
else
return false;
}