Начинающий
-
Автор темы
- #1
Я хочу телепортировать по всей карте и для этого я восстановил все что надо.
Нашел в иде смещение игрового поля position в классе IEntity.
На данный момент оно равняется 0xB8;
Восстановил данную переменную.
Проблема в том что если я передаю в аргумент своей функции что-то кроме Vec3{0,0,0}, происходит краш. А если я передам в аргумент Vec3{0,0,0} то моя позиция (или позиция камеры) поменяется, пока не разобрался что у меня там телепортируется или камера или игрок.
Нашел в иде смещение игрового поля position в классе IEntity.
На данный момент оно равняется 0xB8;
Восстановил данную переменную.
Код:
class IEntity
{
public:
void SetPos(Vec3 pos)
{
*(Vec3*)((DWORD64)this + 0xB8) = pos;
}
}
Использую так->
IActor* m_pActor = nullptr;
if (IGameFramework* g_pGame = IGameFramework::Singleton()) {
if (g_pGame->GetClientActor(&m_pActor))
{
m_pActor->m_pEntity->SetPos(Vec3{ 0,0,0 });
}
}