- Статус
- Оффлайн
- Регистрация
- 17 Дек 2018
- Сообщения
- 548
- Реакции
- 201
Суть проблемы: аимбот говна и у автора проблемы с матешей + башкой
Подробнее: чудо аимбот наводится в какие-то рандомные точки, после чего просто фризит на одной (vec3(0, 0, 0) судя по всему) и всё. Ни мышью, ни читом невозможно сдвинуть камеру, нужно перезапускать игру.
Код:
Заранее огромное спасибо за любую помощь, ибо уже несколько часов ебусь 
Подробнее: чудо аимбот наводится в какие-то рандомные точки, после чего просто фризит на одной (vec3(0, 0, 0) судя по всему) и всё. Ни мышью, ни читом невозможно сдвинуть камеру, нужно перезапускать игру.
Код:
C++:
float vector3_hyp(vector3_t vector)
{
return sqrt(pow(vector.x, 2.f) + pow(vector.y, 2.f));
}
void calculate_angle(vector3_t src, vector3_t dst, vector3_t& angle)
{
vector3_t delta = { dst.x - src.x, dst.y - src.y, dst.z - src.z };
float hyp = vector3_hyp(delta);
float pitch = -asin(delta.z / hyp) * (180 / 3.14);
float yaw = atan2(delta.y, delta.x) * (180 / 3.14);
if (delta.x >= 0.f)
yaw += 180.f;
angle = { pitch, yaw, 0 };
}
C++:
DWORD get_bone_matrix()
{
return memory.Read<DWORD>(address + m_dwBoneMatrix);
}
vector3_t get_bone_pos(int bone)
{
matrix3x4_t boneMatrix = memory.Read<matrix3x4_t>(get_bone_matrix() + bone * 0x30);
vector3_t bonePos = { boneMatrix.matrix[0][3], boneMatrix.matrix[1][3], boneMatrix.matrix[2][3] };
return bonePos;
}
vector3_t get_position()
{
return memory.Read<vector3_t>(address + m_vecOrigin);
}
vector3_t get_view_offset()
{
return memory.Read<vector3_t>(address + m_vecViewOffset);
}
C++:
for (int i = 0; i < engine::get_max_players(); i++)
{
entity currentEntity = engine::get_entity(i);
if (currentEntity.is_valid_at_all() && currentEntity.is_spotted_by_mask())
{
vector3_t vecOrigin = localPlayer.get_position();
vector3_t viewOffset = localPlayer.get_view_offset();
vector3_t localHeadPos;
localHeadPos.x = vecOrigin.x + viewOffset.x;
localHeadPos.y = vecOrigin.y + viewOffset.y;
localHeadPos.z = vecOrigin.z + viewOffset.z;
math::calculate_angle(localHeadPos, currentEntity.get_bone_pos(8), viewAngle);
}
}
