- Статус
- Оффлайн
- Регистрация
- 22 Сен 2025
- Сообщения
- 19
- Реакции
- 1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
i dont need that anymore(because this game is already dead lol)
C++:
/* velocity interpolation here... */
/* some notes;
since i too lazy to do the last little shit i'll explain it here (something like a reader assignment?)
and so the last m_velocity_in_processing onetap sets to 5
after did the linear interpolation.
*/
if ( record->m_anim_layers.at( 6u ).m_weight == 0.f ) {
record->m_velocity = {};
record->m_velocity_in_processing = 1;
return;
}
const auto loop_weight = record->m_anim_layers.at( 11u ).m_weight;
const auto average_speed = record->m_velocity.length_2d( );
if ( loop_weight > 0.f
&& loop_weight < 1.f ) {
const auto modifier = ( 1.f - loop_weight ) * 0.35f;
if ( modifier > 0.f
&& modifier < 1.f ) {
const auto speed_as_portion_of_run_top_speed = ( ( modifier + 0.55f ) * m_max_wpn_speed ) / average_speed;
record->m_velocity_in_processing = 4;
record->m_velocity.x *= speed_as_portion_of_run_top_speed;
record->m_velocity.y *= speed_as_portion_of_run_top_speed;
}
}
const auto move_weight = record->m_anim_layers.at( 6u ).m_weight;
if ( move_weight >= 0.1f ) {
if ( ( loop_weight <= 0.f
|| loop_weight >= 1.f )
&& average_speed >= 0.1f ) {
const auto prev_loop_weight = previous->m_anim_layers.at( 11u ).m_weight;
if ( loop_weight == prev_loop_weight
&& loop_weight > 0.f
&& loop_weight < 1.f ) {
const auto duck_modifier = m_max_wpn_speed * 0.34f;
const auto speed_multiplier = std::max( 0.f, ( m_max_wpn_speed * 0.52f ) - duck_modifier );
const auto loop_duck_amount = 1.f - record->m_duck_amount;
const auto speed_modifier = ( ( ( loop_duck_amount * speed_multiplier )
+ loop_duck_amount ) * loop_weight ) / average_speed;
record->m_velocity_in_processing = 3;
record->m_velocity.x *= speed_modifier;
record->m_velocity.y *= speed_modifier;
}
if ( loop_weight > prev_loop_weight
&& loop_weight > 0.f
&& loop_weight < 1.f ) {
const auto duck_modifier = m_max_wpn_speed * 0.34f;
const auto speed_multiplier = std::max( 0.f, ( m_max_wpn_speed * 0.52f ) - duck_modifier );
const auto loop_duck_amount = 1.f - record->m_duck_amount;
const auto speed_modifier = ( ( ( loop_duck_amount * speed_multiplier )
+ loop_duck_amount ) * loop_weight ) / average_speed;
record->m_velocity_in_processing = 2;
record->m_velocity.x *= speed_modifier;
record->m_velocity.y *= speed_modifier;
}
}
}