Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
LavaBubble.inc.c
Go to the documentation of this file.
1#include "LavaBubble.h"
2
5
6MobileAISettings N(AISettings_LavaBubble) = {
7 .moveSpeed = 0.8f,
8 .moveTime = 100,
9 .alertRadius = 90.0f,
10 .playerSearchInterval = 4,
11 .chaseSpeed = 3.2f,
12 .chaseTurnRate = 10,
13 .chaseUpdateInterval = 1,
14 .chaseRadius = 100.0f,
15 .unk_AI_2C = 1,
16};
17
18EvtScript N(EVS_NpcAI_LavaBubble) = {
19 Call(SetSelfVar, 0, 1)
20 Call(SetSelfVar, 5, 0)
21 Call(SetSelfVar, 6, 0)
22 Call(SetSelfVar, 1, 150)
23 Call(N(FlyingNoAttackAI_Main), Ref(N(AISettings_LavaBubble)))
24 Return
25 End
26};
27
28NpcSettings N(NpcSettings_LavaBubble) = {
29 .height = 20,
30 .radius = 22,
31 .level = ACTOR_LEVEL_LAVA_BUBBLE,
32 .ai = &N(EVS_NpcAI_LavaBubble),
33 .onHit = &EnemyNpcHit,
34 .onDefeat = &EnemyNpcDefeat,
35};
Bytecode EvtScript[]
s16 height
Definition npc.h:145
EvtScript EnemyNpcDefeat
Definition encounter.c:158
EvtScript EnemyNpcHit
Definition encounter.c:131
ApiStatus SetSelfVar(Evt *script, b32 isInitialCall)
#define Ref(sym)
Address/pointer constant.
Definition macros.h:60
#define End
Signals the end of EVT script data. A script missing this will likely crash on load.
Definition macros.h:213
#define Call(FUNC, ARGS...)
Calls a given C EVT API function with any number of arguments.
Definition macros.h:576
#define Return
Kills the current EVT thread.
Definition macros.h:217