void vCharacterStateOnGround::change(hkpCharacterContext& context, const hkpCharacterInput& input, hkpCharacterOutput& output)
{
  if (((vCharacterInput*)input.m_userData)->m_fly)
  {
    context.setState(HK_CHARACTER_FLYING, input, output);
    return;
  }

  hkpCharacterStateOnGround::change(context, input, output);
}
void vCharacterStateFlying::change(hkpCharacterContext& context, const hkpCharacterInput& input, hkpCharacterOutput& output)
{
    if (!((vCharacterInput*)input.m_userData)->m_fly)
    {
        context.setState(HK_CHARACTER_IN_AIR, input, output);
        return;
    }

    hkpCharacterStateFlying::change(context, input, output);
}