-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathD2Ptrs.h
More file actions
40 lines (26 loc) · 1.06 KB
/
D2Ptrs.h
File metadata and controls
40 lines (26 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once
#ifndef __D2PTRS_H__
#define __D2PTRS_H__
//#include "D2Structs.h"
#pragma warning ( push )
#pragma warning ( disable: 4245 )
#pragma optimize ( "", off )
#ifdef _DEFINE_VARS
#define D2OFFSET(o1) o1
#define D2FUNC(v1,t1,t2,o1) typedef t1 D2##_##v1##_t t2; D2##_##v1##_t * D2##_##v1 = (D2##_##v1##_t *)D2OFFSET(o1);
#define D2VAR(v1,t1,o1) typedef t1 D2##_##v1##_t; D2##_##v1##_t *p_##D2##_##v1 = (D2##_##v1##_t *)D2OFFSET(o1);
#define D2ASM(v1,o1) DWORD D2##_##v1 = D2OFFSET(o1);
#else
#define D2FUNC(v1,t1,t2,o1) typedef t1 D2##_##v1##_t t2; extern D2##_##v1##_t *D2##_##v1;
#define D2VAR(v1,t1,o1) typedef t1 D2##_##v1##_t; extern D2##_##v1##_t *p_##D2##_##v1;
#define D2ASM(v1,o1) extern DWORD D2##_##v1;
#endif
#define _D2PTRS_START D2_InitMPQ
D2FUNC(InitMPQ, DWORD __fastcall, (char *mpqfile, char *dll, int v3, int timeout), 0x117332) // 1.14d
#define _D2PTRS_END D2_InitMPQ
#undef FUNCPTR
#undef VARPTR
#undef ASMPTR
#pragma warning ( pop )
#pragma optimize ( "", on )
#endif