All pastes #128590 Raw Edit

Mine

public text v1 · immutable
#128590 ·published 2006-08-13 02:34 UTC
rendered paste body
#include <windows.h>
#include <stdio.h>

#include "MooseKernel.h"

DWORD dwPID;
HWND hWndMS;

bool bEndLoop = false;
bool bVac = false;

void ItemVac(void);
void Freeze(void);
int nXY[2] = {0, 0};
int nXY2[2];

int nMapXY[4];

int main(int, char **)
{
	printf("Moose's Item Vac - OMS v0.27\n");
	printf("-----------------------------------\n");

	system("PAUSE");

	printf("Finding MapleStory Process ID..");

	

	hWndMS = FindWindow("MapleStoryClass", "MapleStory");
	GetWindowThreadProcessId(hWndMS, &dwPID);

	printf("%04X\n", dwPID);

	if (dwPID == NULL)
	{
		printf("Failed to find the Process ID for MapleStory.exe\n\n");
		return 1;
	}

	printf("Initializing Moose's Kernel....");

	if (!Kernel_Init())
	{
		printf("NO\n");
		printf("Failed to open the kernel driver\n\n");
		return 1;
	}

	printf("OK\n\n");

	printf("Whenever you press Z, the area around you selected will be looted.\n");
	printf("The F9 button is used to select your position.\n");

	printf("Please press F11 to quit this application.\n\n");

	bEndLoop = false;
	CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)Freeze, NULL, NULL, NULL);
//	CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)ItemVac, NULL, NULL, NULL);

	DWORD dwPointer;

	while (1)
	{
		if ((GetAsyncKeyState(VK_F11) & 0x8001) == 0x8001)
			break;

		if (IsWindow(hWndMS) == FALSE)
			break;

		if ((GetAsyncKeyState(VK_F9) & 0x8001) == 0x8001)
		{
			Kernel_ReadMemory(dwPID, (void *)0x7432EC, &dwPointer, 4);
			dwPointer += 0x0390;
			Kernel_ReadMemory(dwPID, (void *)dwPointer, nXY, 8);
			Kernel_ReadMemory(dwPID, (void *)dwPointer, nXY2, 8);
			

			MessageBeep(0);
		}

		if (GetKeyState('Z') & 0x8000)
		{
			bVac = true;
		}
		else {
			bVac = false;
		}

		Sleep(1);
	}

	bEndLoop = true;

	printf("2006 Moose\n");
	
	system("PAUSE");

	return 0;
}

void Freeze(void)
{
	DWORD dwPointer;
	int nadjx = 0;
	bool fd = true;

	while (bEndLoop == false)
	{
		if (bVac == true)
		{
			nXY2[0] = nXY[0] + nadjx;
			Kernel_ReadMemory(dwPID, (void *)0x7432EC, &dwPointer, 4);
			dwPointer += 0x0390;
			Kernel_WriteMemory(dwPID, (void *)dwPointer, nXY2, 8);

			if (fd)
			{
				nadjx++;
				if (nadjx == 20)
					fd = false;
			} else {
				nadjx--;
				if (nadjx == -20)
					fd = true;
			}
		}

		Sleep(1);
	}
}

void ItemVac(void)
{
	DWORD dwPointer;
	int nXSize;

	while (bEndLoop == false)
	{
		if (bVac == true)
		{
			
			//nXY2[1] = nXY[1];// - 400;	

			//nXY2[0] = nMapXY[0];
			//nXSize = nMapXY[2] - nMapXY[0];
			
			//for (int YCnt = 0; ((YCnt < 800) && (bVac == true)); YCnt += 40, nXY2[1] += 40)
			//{
				//nXY2[0] = nMapXY[0];

			//	for (int XCnt = 0; ((XCnt < nXSize) && (bVac == true)); XCnt += 10, nXY2[0] += 10)
			//	{
					//printf("Do\n");
					//Kernel_WriteMemory(dwPID, (void *)dwPointer, nXY2, 8);
			//		Sleep(2);
			//	}
			//}
		}
		
		Sleep(1);
	}

	printf("End of Thread\n");
}