Исходник Lw v4 landing animation fix reversed

Забаненный
Статус
Оффлайн
Регистрация
3 Май 2022
Сообщения
34
Реакции[?]
10
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну не вся часть но да ладно.
C++:
if ( !( player->get_flags( ).has( 1 ) && current->m_layers[ 5 ].m_weight > 0.f && previous->m_layers[ 5 ].m_weight > 0.f ) ) {
    auto seq_act = player->get_sequence_activity( current->m_layers[ 5 ].m_sequence );
    
    if ( seq_act == 988 || seq_act == 989 ) {
        land_time = current->m_layers[ 5 ].m_cycle / current->m_layers[ 5 ].m_play_back_rate;
        land_in_cycle = land_time >= previous->sim_time;
        
        if ( land_in_cycle && !is_landing ) {
            if ( land_time < simulated_time ) {
                on_ground = true;
                is_landing = true;
            }
        }
    }
    
    on_ground = previous->flags.has( 1 );
}
 
Участник
Статус
Оффлайн
Регистрация
30 Дек 2020
Сообщения
400
Реакции[?]
293
Поинты[?]
1K
gone
Забаненный
Статус
Оффлайн
Регистрация
8 Апр 2021
Сообщения
285
Реакции[?]
166
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну не вся часть но да ладно.
C++:
if ( !( player->get_flags( ).has( 1 ) && current->m_layers[ 5 ].m_weight > 0.f && previous->m_layers[ 5 ].m_weight > 0.f ) ) {
    auto seq_act = player->get_sequence_activity( current->m_layers[ 5 ].m_sequence );
   
    if ( seq_act == 988 || seq_act == 989 ) {
        land_time = current->m_layers[ 5 ].m_cycle / current->m_layers[ 5 ].m_play_back_rate;
        land_in_cycle = land_time >= previous->sim_time;
       
        if ( land_in_cycle && !is_landing ) {
            if ( land_time < simulated_time ) {
                on_ground = true;
                is_landing = true;
            }
        }
    }
   
    on_ground = previous->flags.has( 1 );
}
better way :

C++:
auto act = player->GetSequenceActivity(record->layers[5].m_flSequence);

if (record->layers[5].m_flSequence == previous->layers[5].m_flSequence 
    && (previous->layers[5].m_flWeight != 0.0f 
        || record->layers[5].m_flWeight == 0.0f)
        || !(act == 988 || act == 989)) {
    if ((record->m_fFlags & 1) != 0 && (previous->m_fFlags & 1) == 0)
        player->m_fFlags() &= ~1;
}
else
player->m_fFlags() |= 1;
 
Забаненный
Статус
Оффлайн
Регистрация
3 Май 2022
Сообщения
34
Реакции[?]
10
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
better way :

C++:
auto act = player->GetSequenceActivity(record->layers[5].m_flSequence);

if (record->layers[5].m_flSequence == previous->layers[5].m_flSequence
    && (previous->layers[5].m_flWeight != 0.0f
        || record->layers[5].m_flWeight == 0.0f)
        || !(act == 988 || act == 989)) {
    if ((record->m_fFlags & 1) != 0 && (previous->m_fFlags & 1) == 0)
        player->m_fFlags() &= ~1;
}
else
player->m_fFlags() |= 1;
not proper not better way die
 
Сверху Снизу