- Статус
- Оффлайн
- Регистрация
- 16 Май 2025
- Сообщения
- 261
- Реакции
- 54
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
/* 48 8B C4 48 89 58 ? 48 89 70 ? 55 57 41 56 48 8D 68 ? 48 81 EC ? ? ? ? 0F 29 70 ? 4C 8D 4D @server.dll */
/* btw u can use it for calc some shit for air_strafe_booster/air_stafe improvements(like WASD) */
void c_game_movement::air_accelerate( sdk::vec3_t& wish_vel, sdk::qang_t& wish_angles, float friction, sdk::vec3_t& move, float frame_time, float max_speed )
{
sdk::vec3_t right{};
auto fwd = wish_angles.vectors( &right );
if ( fwd.z( ) ) {
fwd.z( ) = 0.f;
fwd.normalize( );
}
if ( right.z( ) ) {
right.z( ) = 0.f;
right.normalize( );
}
sdk::vec3_t dir{};
dir.x( ) = ( ( fwd.x( ) * move.x( ) ) * max_speed ) + ( ( right.x( ) * move.y( ) ) * max_speed );
dir.y( ) = ( ( fwd.y( ) * move.x( ) ) * max_speed ) + ( ( right.y( ) * move.y( ) ) * max_speed );
auto wish_speed = dir.normalized( );
wish_speed = std::min( wish_speed, max_speed );
auto speed = std::min( wish_speed, g_ctx->cvars( ).sv_air_max_wishspeed->get_float( ) - wish_vel.dot( dir ) );
if ( speed > 0.f )
{
auto accelerate_speed = std::min( speed, ( ( wish_speed * frame_time ) * g_ctx->cvars( ).sv_air_accelerate ) * friction );
wish_vel += ( wish_dir * accelerate_speed );
}
/* if u wanna calculates of z velocity u can check my post about AirStrafe booster(or calculate it urself) */
}
Последнее редактирование: