aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDLL/squirreldatatypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'NorthstarDLL/squirreldatatypes.h')
-rw-r--r--NorthstarDLL/squirreldatatypes.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/NorthstarDLL/squirreldatatypes.h b/NorthstarDLL/squirreldatatypes.h
index 818ce2a4..e9f88d08 100644
--- a/NorthstarDLL/squirreldatatypes.h
+++ b/NorthstarDLL/squirreldatatypes.h
@@ -22,6 +22,13 @@ struct SQUserData;
typedef void (*releasehookType)(void* val, int size);
+// stolen from ttf2sdk: sqvm types
+typedef float SQFloat;
+typedef long SQInteger;
+typedef unsigned long SQUnsignedInteger;
+typedef char SQChar;
+typedef SQUnsignedInteger SQBool;
+
/* 127 */
enum SQObjectType : int
{
@@ -83,6 +90,7 @@ union SQObjectValue
float asFloat;
int asInteger;
SQUserData* asUserdata;
+ SQStructInstance* asStructInstance;
};
/* 160 */
@@ -279,12 +287,15 @@ struct alignas(8) HSquirrelVM
struct SQStructInstance
{
void* vftable;
- unsigned char gap_8[16];
+ __int32 uiRef;
+ BYTE gap_C[4];
+ __int64 unknown_10;
void* pointer_18;
- unsigned char gap_20[8];
+ __int64 unknown_20;
SQSharedState* _sharedState;
- unsigned char gap[8];
- SQObject data[20];
+ unsigned int size;
+ BYTE gap_34[4];
+ SQObject data[1]; // This struct is dynamically sized, so this size is unknown
};
/* 148 */