Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
WhaleGeyser.inc.c
Go to the documentation of this file.
1#include "common.h"
2#include "effects.h"
3
4API_CALLABLE(N(CreateWhaleGeyser)) {
5 Bytecode* args = script->ptrReadPos;
6 s32 var1 = evt_get_variable(script, *args++);
7 f32 var2 = evt_get_float_variable(script, *args++);
8 f32 var3 = evt_get_float_variable(script, *args++);
9 f32 var4 = evt_get_float_variable(script, *args++);
10 f32 var5 = evt_get_float_variable(script, *args++);
11 f32 var6 = evt_get_float_variable(script, *args++);
12 f32 var7 = evt_get_float_variable(script, *args++);
13 s32 var8 = evt_get_variable(script, *args++);
14 EffectInstance* outVal;
15
16 fx_effect_3D(var1, var2, var3, var4, var5, var6, var7, var8, &outVal);
17 script->varTablePtr[0] = outVal;
18 return ApiStatus_DONE2;
19}
20
21API_CALLABLE(N(SetWhaleGeyserPos)) {
22 Bytecode* args = script->ptrReadPos;
23 EffectInstance* effect = (EffectInstance*) evt_get_variable(script, *args++);
24 f32 x = evt_get_float_variable(script, *args++);
25 f32 y = evt_get_float_variable(script, *args++);
26 f32 z = evt_get_float_variable(script, *args++);
27
28 effect->data.unk_3D->pos.x = x;
29 effect->data.unk_3D->pos.y = y;
30 effect->data.unk_3D->pos.z = z;
31 return ApiStatus_DONE2;
32}
33
34API_CALLABLE(N(DisposeWhaleGeyser)) {
35 Bytecode* args = script->ptrReadPos;
36 EffectInstance* effect = (EffectInstance*) evt_get_variable(script, *args++);
37
38 effect->data.unk_3D->unk_04 = 1;
39 return ApiStatus_DONE2;
40}
struct Effect3DFXData * unk_3D
Definition effects.h:2525
EffectData data
Definition effects.h:2605
#define ApiStatus_DONE2
Definition evt.h:118
s32 Bytecode
Definition evt.h:7
s32 evt_get_variable(Evt *script, Bytecode var)
Definition evt.c:1690
f32 evt_get_float_variable(Evt *script, Bytecode var)
Definition evt.c:1930