Hallo ich möchte einen wert in einer .asi mit einer .ini bestimmen.
Da ich aber keinerlei Kenntnisse in c++ habe kann ich das selbst nicht machen.
Ich möchte den wert *fDistance = 1500.0; (Wenn es an ist)
und den wert *fDistance = 50.0; (Wenn es aus ist)
in einer .ini bestimmen können
Ich hoffe das mir das jemand machen kann :)
Danke im voraus.
Da ich aber keinerlei Kenntnisse in c++ habe kann ich das selbst nicht machen.
Ich möchte den wert *fDistance = 1500.0; (Wenn es an ist)
und den wert *fDistance = 50.0; (Wenn es aus ist)
in einer .ini bestimmen können
Ich hoffe das mir das jemand machen kann :)
Danke im voraus.
Code:
#include <windows.h>
#define SAMP_INFO 0x212A38
#define SAMP_SETTINGS 0x3CF
//DWORD* pChat = NULL;
DWORD* pInfo = NULL;
BYTE* ThroughWalls = NULL;
BYTE* ShowNameTags = NULL;
float* fDistance = NULL;
//---------------------------------------------------------------------------
bool KeyPressed(BYTE key)
{
return ((GetAsyncKeyState(key)&(1<<16))!=0);
}
//---------------------------------------------------------------------------
void Thread()
{
DWORD SampDLL = (DWORD)GetModuleHandleA("samp.dll");
if(SampDLL){
pInfo = (DWORD*)(SampDLL+SAMP_INFO);
while(*pInfo==0) Sleep(1000);
while(*(DWORD*)(*pInfo+SAMP_SETTINGS)==0) Sleep(1000);
ShowNameTags = (BYTE*)(*(DWORD*)(*pInfo+SAMP_SETTINGS)+0xE);
ThroughWalls = (BYTE*)(*(DWORD*)(*pInfo+SAMP_SETTINGS)+0x5);
fDistance = (float*)((DWORD*)(*(DWORD*)(*pInfo+SAMP_SETTINGS)+0x2F));
Sleep(14000);
DWORD OldProt;
VirtualProtect((LPVOID)ShowNameTags,0x100,PAGE_EXECUTE_READWRITE,&OldProt);
VirtualProtect((LPVOID)ThroughWalls,0x100,PAGE_EXECUTE_READWRITE,&OldProt);
VirtualProtect((LPVOID)fDistance,0x100,PAGE_EXECUTE_READWRITE,&OldProt);
VirtualProtect((LPVOID)SampDLL,0x3071B0, PAGE_EXECUTE_READWRITE, &OldProt);
for(;;)
{
do{
Sleep(100);
}while(!KeyPressed(VK_MENU) || !KeyPressed(VK_F3));
do{
Sleep(50);
}while(KeyPressed(VK_F3));
*ShowNameTags = 1;
*ThroughWalls = 0;
*fDistance = 1500.0;
do{
Sleep(100);
}while(!KeyPressed(VK_MENU) || !KeyPressed(VK_F3));
do{
Sleep(50);
}while(KeyPressed(VK_F3));
*ShowNameTags = 1;
*ThroughWalls = 1;
*fDistance = 50.0;
}
}
}
//-------------------------------------------------------------------------------
int WINAPI DllMain(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
if(reason==DLL_PROCESS_ATTACH)
{
DWORD OldProt;
VirtualProtect((LPVOID)0x401000, 0x4A3000, PAGE_EXECUTE_READWRITE, &OldProt);
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)Thread, 0, 0, 0);
}
return 1;
}