summaryrefslogtreecommitdiff
path: root/libghack/include
diff options
context:
space:
mode:
Diffstat (limited to 'libghack/include')
-rwxr-xr-xlibghack/include/ghack.h18
-rwxr-xr-xlibghack/include/log.h31
-rwxr-xr-xlibghack/include/mem.h31
-rwxr-xr-xlibghack/include/radar.h95
4 files changed, 175 insertions, 0 deletions
diff --git a/libghack/include/ghack.h b/libghack/include/ghack.h
new file mode 100755
index 0000000..34761b5
--- /dev/null
+++ b/libghack/include/ghack.h
@@ -0,0 +1,18 @@
+#ifndef GHACK_H_INCLUDED
+#define GHACK_H_INCLUDED
+
+#ifndef GHACK_VERSION
+#define GHACK_VERSION "0.4a"
+#endif
+
+#ifdef BUILD_DLL
+#define DLL_EXPORT __declspec(dllexport)
+#else
+#define DLL_EXPORT __declspec(dllimport)
+#endif
+
+#include <log.h>
+#include <mem.h>
+#include <radar.h>
+
+#endif // GHACK_H_INCLUDED
diff --git a/libghack/include/log.h b/libghack/include/log.h
new file mode 100755
index 0000000..e7d0e29
--- /dev/null
+++ b/libghack/include/log.h
@@ -0,0 +1,31 @@
+#ifndef LOG_H_INCLUDED
+#define LOG_H_INCLUDED
+
+#include <stdio.h>
+#include <windows.h>
+#ifdef UNICODE
+#include <wchar.h>
+#endif
+
+extern FILE *log_file;
+
+
+#ifdef UNICODE
+#define dbg(msg, ...) logw_to(TEXT(__FILE__), __LINE__, TEXT(msg), __VA_ARGS__)
+#else
+#define dbg(msg, ...) log_to(__FILE__, __LINE__, msg, __VA_ARGS__)
+#endif
+
+extern BOOL log_init(char *p_fname);
+
+extern void log_to(const char *file, SIZE_T line, const char *msg, ...);
+
+#ifdef UNICODE
+extern void logw_to(const char *file, SIZE_T line, char *msg, ...);
+#endif
+
+extern void log_flush(void);
+
+extern void log_close(void);
+
+#endif // LOG_H_INCLUDED
diff --git a/libghack/include/mem.h b/libghack/include/mem.h
new file mode 100755
index 0000000..bcae9e0
--- /dev/null
+++ b/libghack/include/mem.h
@@ -0,0 +1,31 @@
+#ifndef MEM_H_INCLUDED
+#define MEM_H_INCLUDED
+
+#include <stdio.h>
+#include <wchar.h>
+#include <windows.h>
+#include <tchar.h>
+#include <psapi.h>
+#include <string.h>
+#include <inttypes.h>
+#include <math.h>
+
+
+#define readByte (adr, b_data) readMem(hndl_proc, adr, (LPVOID) &b_data, sizeof(BYTE))
+#define readInt32(adr, d_data) readMem(hndl_proc, adr, (LPVOID) &d_data, sizeof(INT32))
+#define readInt64(adr, q_data) readMem(hndl_proc, adr, (LPVOID) &q_data, sizeof(INT64))
+#define readFloat(adr, f_data) readMem(hndl_proc, adr, (LPVOID) &f_data, sizeof(FLOAT))
+#define readMemH(adr, data, siz) readMem(hndl_proc, adr, data, siz)
+#define readPtrH(adr, offset) readPtr(hndl_proc, adr, offset)
+
+extern LPCVOID calcOffset(LPCVOID adr, SIZE_T offset);
+
+extern SIZE_T readMem(HANDLE hProcess, LPCVOID adr, LPVOID data, SIZE_T siz);
+
+extern LPCVOID readPtr(HANDLE hProcess, LPCVOID adr, SIZE_T offset);
+
+extern SIZE_T findPattern(BYTE *b, const BYTE *p, const char *mask, SIZE_T b_siz, SIZE_T pm_siz);
+
+extern LPCVOID getBaseAdr(BYTE *buf, SIZE_T siz, const BYTE *pat, const char *mask, const SIZE_T pm_siz, const SIZE_T off_pos);
+
+#endif // MEM_H_INCLUDED
diff --git a/libghack/include/radar.h b/libghack/include/radar.h
new file mode 100755
index 0000000..7a7728f
--- /dev/null
+++ b/libghack/include/radar.h
@@ -0,0 +1,95 @@
+#ifndef __MAIN_H__
+#define __MAIN_H__
+
+#include <windows.h>
+
+#define HRADAR_FPS 30
+#define HRADAR_FONTSIZ 16
+
+enum radarColor {
+ RC_RED,
+ RC_BLUE,
+ RC_GREEN,
+ RC_YELLOW,
+ RC_CYAN,
+ RC_MAGENTA,
+ RC_WHITE,
+ RC_DONTDRAW
+};
+
+struct radarEntity
+{
+ UINT64 id;
+ BOOL valid;
+ BOOL isPlayer;
+
+ struct radarEntity *prev;
+ struct radarEntity *next;
+ void *__internal;
+};
+
+#define INFO_LEN 12
+
+struct radarInfo
+{
+ char *prefix;
+ struct radarInfo *next;
+ void *__internal;
+};
+
+#define RDR_NAMELEN 32
+
+struct radarConfig
+{
+ char wnd_name[RDR_NAMELEN+1];
+};
+
+extern BOOL radarInit(struct radarConfig *rc);
+
+extern void radarCleanup(void);
+
+extern BOOL radarIsActive(void);
+
+extern void radarExecThread(void);
+
+extern void radarKillThread(void);
+
+extern void radarWaitUntilRdy(void);
+
+extern void radarUpdateResolution(void);
+
+extern unsigned int radarGetWidth(void);
+
+extern unsigned int radarGetHeight(void);
+
+extern FLOAT radarPropX(void);
+
+extern FLOAT radarPropY(void);
+
+extern struct radarInfo *radarAddInfo(char *prefix);
+
+extern void radarSetInfo(struct radarInfo *ri, char *text);
+
+extern void radarSetInfoF(struct radarInfo *ri, const char *fmt, ...);
+
+extern void radarSetDrawDistance(FLOAT vecDist);
+
+extern void radarSetPlayerPosition(FLOAT ppos[3], FLOAT angle);
+
+extern void radarSetAimLine(FLOAT enemy_pos3f[3], BOOL enable);
+
+extern void radarUpdateEntity(UINT64 unique_id, FLOAT pos[3], enum radarColor color, BOOL isPlayer, BOOL valid);
+
+extern void radarInvalidateAll(void);
+
+extern void radarRemoveInvalidEntities(void);
+
+extern void radarDrawEntities(void);
+
+extern int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR cmdParam, int cmdShow);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __MAIN_H__