Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
HyperParagoomba.inc.c
Go to the documentation of this file.
1#include "HyperParagoomba.h"
2
4
5MobileAISettings N(AISettings_HyperParagoomba) = {
6 .moveSpeed = 1.8f,
7 .moveTime = 60,
8 .waitTime = 15,
9 .alertRadius = 120.0f,
10 .playerSearchInterval = 3,
11 .chaseSpeed = 4.0f,
12 .chaseTurnRate = 5,
13 .chaseUpdateInterval = 1,
14 .chaseRadius = 150.0f,
15 .unk_AI_2C = 1,
16};
17
18EvtScript N(EVS_NpcAI_HyperParagoomba) = {
19 Call(SetSelfVar, 0, 1)
20 Call(SetSelfVar, 5, -850)
21 Call(SetSelfVar, 6, 60)
22 Call(SetSelfVar, 1, 700)
23 Call(N(FlyingAI_Main), Ref(N(AISettings_HyperParagoomba)))
24 Return
25 End
26};
27
28NpcSettings N(NpcSettings_HyperParagoomba) = {
29 .height = 18,
30 .radius = 20,
31 .level = ACTOR_LEVEL_HYPER_GOOMBA,
32 .ai = &N(EVS_NpcAI_HyperParagoomba),
33 .onHit = &EnemyNpcHit,
34 .onDefeat = &EnemyNpcDefeat,
35 .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER,
36};
Bytecode EvtScript[]
@ AI_ACTION_JUMP_WHEN_SEE_PLAYER
Definition enums.h:4612
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