Начинающий
-
Автор темы
- #1
Код:
void Resolver::ResolveAngles(Player* player, LagRecord* record) {
AimPlayer* data = &g_aimbot.m_players[player->index() - 1];
auto previous_record = data->m_records.size() > 1 ? data->m_records.at(1).get() : nullptr;
MatchShot(data, record);
if (g_menu.main.config.mode.get() == 1)
record->m_eye_angles.x = 90.f;
bool on_ground = record->m_flags & FL_ONGROUND;
auto state = player->m_PlayerAnimState();
if (record->m_layers[6].m_weight > 0.0f && on_ground) { // the enemy player moved we have his real eyeangle
record->m_mode = Modes::RESOLVE_WALK;
record->m_eye_angles.y = record->m_body;
data->m_moved = true;
std::memcpy(&data->m_walk_record, record, sizeof(LagRecord));
return;
}
bool breaking_lby = player->GetSequenceActivity(record->m_layers[3].m_sequence) == 979 && on_ground;
if (previous_record) {
bool updated_body = record->m_body != previous_record->m_body;
if (record->m_layers[3].m_cycle != previous_record->m_layers[3].m_cycle && breaking_lby)
updated_body = true;
if (updated_body) { // woah the lby updated to his eyeangles
record->m_eye_angles.y = record->m_body;
return;
}
}
if (data->m_moved) { // last moving angle
record->m_eye_angles.y = data->m_walk_record.m_body;
}
else { // we have no hint of his real position might aswell guess
record->m_eye_angles.y = record->m_body;
if (breaking_lby) // we might have guessed right
record->m_eye_angles.y += 180.f;
}
}
the resolver isnt the only issue the lagcompensation is AWFUL on this source but better than most.
the flick detection isnt the best lby breaking at a angle <= 120 makes it do nothing but it can hit twist