1 |
|
#ifndef ONI_SYMBOLS_H |
2 |
|
#define ONI_SYMBOLS_H |
3 |
< |
#include "bool.h" |
3 |
> |
#include "stdint.h" |
4 |
|
#include <stdio.h> |
5 |
|
#include "Oni.h" |
6 |
< |
#include "oni_gl.h" |
6 |
> |
#include "Oni_GL.h" |
7 |
|
#include "Oni_Character.h" |
8 |
|
#include "BFW_ScriptLang.h" |
9 |
|
|
40 |
|
// OpenGL Gamma related |
41 |
|
#define gl_gamma_ramp_valid (*((int*)0x005603fc)) |
42 |
|
|
43 |
< |
// OpenGL whatev? |
43 |
> |
// OpenGL: list of pointers to opengl32.dll functions (and a few functions from GL extensions) |
44 |
|
#define gl_api (*((gl_api_t**)0x00560604)) |
45 |
|
|
46 |
< |
// OpenGL whatev? |
46 |
> |
// OpenGL render engine descriptor (resolutions, flags, context methods) |
47 |
|
#define gl_eng (*((gl_engine_t**)0x00560600)) |
48 |
|
|
49 |
|
// Value of -switch/-noswitch? |
106 |
|
// Original graphics initialization method patched to use "daodangl_platform_initialize" instead if daodangl is used |
107 |
|
DefFunc(int, gl_platform_initialize, ONICALL, (), 0x00407da0); |
108 |
|
|
109 |
+ |
// Retrieve gamma value from settings |
110 |
|
DefFunc(float, ONrPersist_GetGamma, ONICALL, (), 0x0050f450); |
111 |
+ |
|
112 |
+ |
// Retrieve if the game was completed |
113 |
|
DefFunc(uint8_t, ONrPersist_GetWonGame, ONICALL, (), 0x0050f660); |
114 |
|
|
115 |
+ |
// Print a message to the startup.txt log |
116 |
|
DefFunc(void, UUrStartupMessage, __cdecl, (const char* fmt, ...), 0x00424860); |
117 |
+ |
|
118 |
+ |
// Probably to spawn a new character |
119 |
|
DefFunc(int16_t, ONrGameState_NewCharacter, ONICALL, (void* CHAR, void* AISA, void* flag, uint32_t* list_location), 0x004dac50); |
120 |
+ |
|
121 |
+ |
// Remove character |
122 |
+ |
DefFunc(void, ONrGameState_DeleteCharacter, ONICALL, (Character *inCharacter), 0x004DC480); |
123 |
+ |
|
124 |
+ |
DefFunc(void, ONrGameState_Timer_Start, ONICALL, (char* function, int time), 0x004FD370); |
125 |
+ |
|
126 |
+ |
// Get active (player?) character |
127 |
|
DefFunc(ActiveCharacter*, ONrGetActiveCharacter, ONICALL, (void* CharacterPtr), 0x004f1180); |
128 |
+ |
|
129 |
+ |
DefFunc(uint32_t, ONrCharacter_GetHealthShade, ONICALL, (uint32_t health, uint32_t maxhealth), 0x004EF450); |
130 |
|
DefFunc(void, ONrCharacter_NewAnimationHook, ONICALL, (Character *ioCharacter, ActiveCharacter *ioActiveCharacter), 0x004E97A0); |
131 |
|
DefFunc(void, ONrCharacter_SetAnimationExternal, ONICALL, (Character *ioCharacter, short state, void* animation, int interpolation), 0x004EB340); |
132 |
+ |
DefFunc(void, ONrCharacter_SetHitPoints, ONICALL, (Character *ioCharacter, uint32_t inHitPoints), 0x004EB220); |
133 |
+ |
DefFunc(void, ONrCharacter_SetCharacterClass, ONICALL, (Character* Char, ONCC* Class), 0x004D7C30); |
134 |
+ |
DefFunc(void, ONrCorpse_Create, ONICALL, (Character* Character), 0x004EF340); |
135 |
+ |
|
136 |
|
|
137 |
+ |
// Print message to console |
138 |
|
DefFunc(void, COrTextArea_Print, ONICALL, (uint32_t area, uint32_t priority, uint32_t textshade, uint32_t textshadowshade, const char* text, uint32_t unk_alwaws_0, uint32_t fadetime), 0x00431340); |
139 |
+ |
|
140 |
+ |
// Original cheat function |
141 |
|
DefFunc(uint8_t, ONrCheater, ONICALL, (uint32_t cheat), 0x004f5c30); |
142 |
+ |
|
143 |
+ |
// ? |
144 |
|
DefFunc(int, AUrMessageBox, __cdecl, (int Buttons, char *Message, ...), 0x004378c0); |
145 |
|
DefFunc(char*, SSrMessage_Find, ONICALL, (char* message_key), 0x0047F550); |
146 |
|
DefFunc(void, ONiGameState_FindAutoPromptMessage, ONICALL, (char* Note, void* ptr), 0x004FDBE0); |
147 |
|
|
148 |
+ |
// Register a BSL function with a return type |
149 |
|
DefFunc(uint16_t, SLrScript_Command_Register_ReturnType, ONICALL, (char* name, char* desc, char* argfmt, sl_type type, sl_func callback), 0x00477b20); |
150 |
+ |
|
151 |
+ |
// Register a BSL function without a return value |
152 |
|
DefFunc(uint16_t, SLrScript_Command_Register_Void, ONICALL, (char* name, char* desc, char* argfmt, sl_func callback), 0x00477b40); |
153 |
+ |
|
154 |
+ |
// Register a global BSL variable |
155 |
|
DefFunc(uint16_t, SLrGlobalVariable_Register_Int32, ONICALL, (char* name, char* desc, int32_t* data), 0x00477e30); |
156 |
|
DefFunc(uint16_t, SLrGlobalVariable_Register_Float, ONICALL, (char* name, char* desc, float* data), 0x00477ec0); |
157 |
|
DefFunc(uint16_t, SLrGlobalVariable_Register_String, ONICALL, (char* name, char* desc, char* data), 0x00477fe0); |
158 |
|
|
159 |
+ |
// Print message to console ? |
160 |
|
DefFunc(int, COrMessage_Print, ONICALL, (char* Message, char* Key, void* noidea), 0x004304B0); |
161 |
+ |
|
162 |
|
DefFunc(void, COrConsole_StatusLine_Display, ONICALL, (), 0x00431E70); |
163 |
+ |
|
164 |
+ |
// Get pointer to specified data instance |
165 |
|
DefFunc(int16_t, TMrInstance_GetDataPtr, ONICALL, (int tag, char* name, void* pointer), 0x004232E0); |
166 |
+ |
|
167 |
+ |
// Get name of data instance pointed to |
168 |
|
DefFunc(char*, TMrInstance_GetInstanceName, ONICALL, (void* InstancePointer), 0x00423D90); |
169 |
|
|
170 |
+ |
DefFunc(short, TMrInstance_GetDataPtr_ByNumber, ONICALL, (int tag, int number, void** out), 0x00423680); |
171 |
+ |
DefFunc(uint32_t, TMrInstance_GetTagCount, ONICALL, (int tag), 0x004236F0); |
172 |
+ |
|
173 |
+ |
// Draw text on the screen |
174 |
|
DefFunc(int16_t, TSrContext_DrawText, ONICALL, (uint32_t TSrContext, char* Text, char alpha, uint32_t usuallyzero, void* pRect), 0x0042DF00); |
175 |
|
DefFunc(int16_t, TSrContext_New, ONICALL, (void* FontInstance, int size, int hthsik1,int hthsik2,int hthsik3, void* TSrContext), 0x0042EA30); |
176 |
|
|
177 |
|
DefFunc(int16_t, TSrContext_SetShade, ONICALL, (void *ioTextContext, uint32_t inShade), 0x0042EE50); |
178 |
< |
DefFunc(void, ONrGameState_Timer_Start, ONICALL, (char* function, int time), 0x004FD370); |
178 |
> |
|
179 |
|
DefFunc(uint16_t, TRrAnimation_GetDuration, ONICALL, (void* Animation), 0x00428740); |
180 |
|
DefFunc(uint16_t, TRrAnimation_GetTo, ONICALL, (void* Animation), 0x00428730); |
181 |
|
DefFunc(uint16_t, TRrAnimation_GetFrom, ONICALL, (void* Animation), 0x00428720); |
182 |
|
|
144 |
– |
DefFunc(void, ONrCharacter_SetHitPoints, ONICALL, (Character *ioCharacter, uint32_t inHitPoints), 0x004EB220); |
145 |
– |
DefFunc(void, ONrCorpse_Create, ONICALL, (Character* Character), 0x004EF340); |
146 |
– |
|
183 |
|
DefFunc(uint16_t, iSetCharacterClass, ONICALL, (sl_callinfo* callinfo, uint32_t numargs, sl_arg args[], int* dontuse1, int* dontuse2, sl_arg* ret), 0x004D99D0); |
184 |
|
DefFunc(uint16_t, AI2iScript_Spawn, ONICALL, (sl_callinfo* callinfo, uint32_t numargs, sl_arg args[], int* dontuse1, int* dontuse2, sl_arg* ret), 0x004B4780); |
185 |
|
//NOT USED: DefFunc(void*, OBJrObjectType_GetObject_ByNumber, ONICALL, (int inObjectType, int inIndex), ); |
186 |
|
//NOT USED: DefFunc(int, OBJiObjectGroup_GetNumObjects, ONICALL, (void *inObjectGroup), ); |
187 |
|
|
152 |
– |
DefFunc(void, ONrGameState_DeleteCharacter, ONICALL, (Character *inCharacter), 0x004DC480); |
153 |
– |
|
188 |
|
DefFunc(int, OBJrObjectType_EnumerateObjects, ONICALL, (int inObjectType, OBJtEnumCallback_Object inEnumCallback, int inUserData), 0x004D0080); |
189 |
|
|
190 |
|
DefFunc(void, OBJrDoor_Open, ONICALL, (DoorObject *inObject, Character *inCharacter), 0x004C26C0); |
193 |
|
DefFunc(void*, OBJrConsole_GetByID, ONICALL, (short ID), 0x004C0950); |
194 |
|
|
195 |
|
|
162 |
– |
DefFunc(void, ONrCharacter_SetCharacterClass, ONICALL, (Character* Char, ONCC* Class), 0x004D7C30); |
163 |
– |
DefFunc(short, TMrInstance_GetDataPtr_ByNumber, ONICALL, (int tag, int number, void** out), 0x00423680); |
164 |
– |
DefFunc(uint32_t, TMrInstance_GetTagCount, ONICALL, (int tag), 0x004236F0); |
165 |
– |
DefFunc(uint32_t, ONrCharacter_GetHealthShade, ONICALL, (uint32_t health, uint32_t maxhealth), 0x004EF450); |
196 |
|
DefFunc(void, ONiDrawWeaponSight, ONICALL, (Character* Char), 0x004E1900); |
197 |
|
DefFunc(void, AI2rDisplayDebuggingInfo, ONICALL, (Character* Char), 0x0048C5F0); |
198 |
|
DefFunc(uint32_t, M3rTextureMap_New, ONICALL, (short width, short height, int type, int allocated, int flags, char* name, void** output), 0x041EB00); |