- 90
- 50
Всем привет!
Написал бота грузчика, работает максимально просто и максимально убого, неоптимизированно.
В общем, работает он так:
Мы просто телепортируемся по траектории (тп на 1, 2 шага вперед), с задержкой в 1 секунду.
И так вот мы телепортируемся от и до груза.
И все манипуляции с телепортом у меня прописаны ВРУЧНУЮ.
То-есть для каждого "шага", я каждый раз вызываю функцию телепорта, что как по мне делает код некрасивым, тяжелым и убогим.
А теперь вопрос: Как мне можно это оптимизировать?
Написал бота грузчика, работает максимально просто и максимально убого, неоптимизированно.
В общем, работает он так:
Мы просто телепортируемся по траектории (тп на 1, 2 шага вперед), с задержкой в 1 секунду.
И так вот мы телепортируемся от и до груза.
И все манипуляции с телепортом у меня прописаны ВРУЧНУЮ.
То-есть для каждого "шага", я каждый раз вызываю функцию телепорта, что как по мне делает код некрасивым, тяжелым и убогим.
А теперь вопрос: Как мне можно это оптимизировать?
C++:
#include <windows.h>
#include <fcntl.h>
#include <stdio.h>
#include <io.h>
#include <fstream>
#include <conio.h>
DWORD WINAPI Sa_Thread(LPVOID);
DWORD APIENTRY DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
CreateThread(NULL, NULL, Sa_Thread, NULL, NULL, NULL);
break;
case DLL_PROCESS_DETACH:
// detach from process
break;
case DLL_THREAD_ATTACH:
// attach to thread
break;
case DLL_THREAD_DETACH:
// detach from thread
break;
}
return TRUE; // succesful
}
void teleport_d(float x, float y, float z)
{
float *position = (*(DWORD *)0xB6F5F0) ? (float *)(*(DWORD *)(*(DWORD *)0xB6F5F0 + 0x14) + 0x30) : NULL;
position[0] = x;
position[1] = y;
position[2] = z;
}
int cheat()
{
while(true)
{
Sleep(1000);
teleport_d(2179.5950,-2256.0017,14.7734);
Sleep(1000);
teleport_d(2182.1963,-2258.5496,13.3756);
Sleep(1000);
teleport_d(2183.3308,-2259.6604,13.3948);
Sleep(1000);
teleport_d(2184.4214,-2260.7280,13.4132);
Sleep(1000);
teleport_d(2185.4373,-2261.7219,13.4304);
Sleep(1000);
teleport_d(2186.0332,-2262.3057,13.4405);
Sleep(1000);
teleport_d(2186.6299,-2262.8899,13.4434);
Sleep(1000);
teleport_d(2187.9397,-2264.1711,13.4731);
Sleep(1000);
teleport_d(2189.3259,-2265.5288,13.5045);
Sleep(1000);
teleport_d(2190.6785,-2266.9553,13.5353);
Sleep(1000);
teleport_d(2192.2461,-2268.6128,13.5469);
Sleep(1000);
teleport_d(2193.8040,-2270.2603,13.5547);
Sleep(1000);
teleport_d(2195.2205,-2271.7581,13.5547);
Sleep(1000);
teleport_d(2196.8728,-2273.5051,13.5547);
Sleep(1000);
teleport_d(2198.2751,-2274.9880,13.5547);
Sleep(1000);
teleport_d(2199.7937,-2276.5923,13.5547);
Sleep(1000);
teleport_d(2201.5554,-2278.4541,13.5547);
Sleep(1000);
teleport_d(2205.9878,-2283.0879,14.7647);
Sleep(1000);
teleport_d(2206.7129,-2284.5061,14.7647);
Sleep(1000);
teleport_d(2207.9849,-2286.9917,14.7647);
Sleep(1000);
teleport_d(2209.8196,-2288.0732,14.7647);
Sleep(1000);
teleport_d(2212.1792,-2288.4939,14.7647);
Sleep(1000);
teleport_d(2214.7864,-2289.6355,14.7647);
Sleep(1000);
teleport_d(2217.1809,-2289.8079,14.7647);
Sleep(1000);
teleport_d(2220.7568,-2288.9934,14.7647);
Sleep(1000);
teleport_d(2222.1819,-2287.7473,14.7647);
Sleep(1000);
teleport_d(2223.8997,-2286.2451,14.7647);
Sleep(1000);
teleport_d(2225.7881,-2283.6099,14.7647);
Sleep(1000);
teleport_d(2227.5083,-2282.1064,14.7647);
Sleep(1000);
teleport_d(2230.8342,-2283.7656,14.3916);
Sleep(1000);
teleport_d(2230.3079,-2286.0176,14.3751);//vzyat
Sleep(1000);
teleport_d(2230.8342,-2283.7656,14.3916);
Sleep(1000);
teleport_d(2227.5083,-2282.1064,14.7647);
Sleep(1000);
teleport_d(2225.7881,-2283.6099,14.7647);
Sleep(1000);
teleport_d(2223.8997,-2286.2451,14.7647);
Sleep(1000);
teleport_d(2222.1819,-2287.7473,14.7647);
Sleep(1000);
teleport_d(2220.7568,-2288.9934,14.7647);
Sleep(1000);
teleport_d(2217.1809,-2289.8079,14.7647);
Sleep(1000);
teleport_d(2214.7864,-2289.6355,14.7647);
Sleep(1000);
teleport_d(2212.1792,-2288.4939,14.7647);
Sleep(1000);
teleport_d(2209.8196,-2288.0732,14.7647);
Sleep(1000);
teleport_d(2207.9849,-2286.9917,14.7647);
Sleep(1000);
teleport_d(2206.7129,-2284.5061,14.7647);
Sleep(1000);
teleport_d(2205.9878,-2283.0879,14.7647);
Sleep(1000);
teleport_d(2201.5554,-2278.4541,13.5547);
Sleep(1000);
teleport_d(2199.7937,-2276.5923,13.5547);
Sleep(1000);
teleport_d(2198.2751,-2274.9880,13.5547);
Sleep(1000);
teleport_d(2196.8728,-2273.5051,13.5547);
Sleep(1000);
teleport_d(2193.8040,-2270.2603,13.5547);
Sleep(1000);
teleport_d(2192.2461,-2268.6128,13.5469);
Sleep(1000);
teleport_d(2190.6785,-2266.9553,13.5353);
Sleep(1000);
teleport_d(2189.3259,-2265.5288,13.5045);
Sleep(1000);
teleport_d(2187.9397,-2264.1711,13.4731);
Sleep(1000);
teleport_d(2185.4373,-2261.7219,13.4304);
Sleep(1000);
teleport_d(2184.4214,-2260.7280,13.4132);
Sleep(1000);
teleport_d(2183.3308,-2259.6604,13.3948);
Sleep(1000);
teleport_d(2179.5950,-2256.0017,14.7734);
Sleep(1000);
teleport_d(2173.9089,-2249.9873,13.3032);
Sleep(1000);
}
}
DWORD WINAPI Sa_Thread(LPVOID)
{
cheat();
}