mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
This patch removes a lot of old code. Context is now exclusively grabbed from the CSquirrelVM instance. This patch also comes with a few new types: SQArray and SQTable! The implementation also allows pushing Vector3D's on the stack, but these are handled slightly differently.. The largest field in tagSQObjectValue is 8 bytes, Vector3D is 12 bytes unaligned, but the tagSQObjectValue field in the tagSQObject struct is aligned to a 8 byte boundary while the field prior is only 4 bytes, Vector3D starts right after the type field in the tagSQObject (at the padding) to keep the whole structure the same size, therefore a new field has been added in between the padding (_pad) with a simple Vector3D accessor. Also added a hook to allow registering proper script enums.
13 lines
490 B
C++
13 lines
490 B
C++
/*
|
|
see copyright notice in squirrel.h
|
|
*/
|
|
//#include "sqpcheader.h"
|
|
// TODO: commented because we need to hook up globals '14D4F3900' and '14D4F38F8', which is used for
|
|
// the global memory management of the squirrel implementation in this game
|
|
|
|
//void *sq_vm_malloc(SQUnsignedInteger size){ return malloc(size); }
|
|
|
|
//void *sq_vm_realloc(void *p, SQUnsignedInteger oldsize, SQUnsignedInteger size){ return realloc(p, size); }
|
|
|
|
//void sq_vm_free(void *p, SQUnsignedInteger size){ free(p); }
|