Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
Paratroopa.inc.c
Go to the documentation of this file.
1#include "Paratroopa.h"
2
4
5MobileAISettings N(AISettings_ParaTroopa) = {
6 .moveSpeed = 2.0f,
7 .moveTime = 30,
8 .waitTime = 30,
9 .alertRadius = 100.0f,
10 .alertOffsetDist = 20.0f,
11 .playerSearchInterval = 10,
12 .chaseSpeed = 2.6f,
13 .chaseTurnRate = 60,
14 .chaseUpdateInterval = 10,
15 .chaseRadius = 150.0f,
16 .chaseOffsetDist = 20.0f,
17 .unk_AI_2C = 1,
18};
19
20EvtScript N(EVS_NpcAI_ParaTroopa) = {
21 Call(SetSelfVar, 0, 0)
22 Call(SetSelfVar, 5, -650)
23 Call(SetSelfVar, 6, 30)
24 Call(SetSelfVar, 1, 600)
25 Call(N(ParatroopaAI_Main), Ref(N(AISettings_ParaTroopa)))
26 Return
27 End
28};
29
30NpcSettings N(NpcSettings_ParaTroopa) = {
31 .height = 40,
32 .radius = 24,
33 .level = ACTOR_LEVEL_PARATROOPA,
34 .ai = &N(EVS_NpcAI_ParaTroopa),
35 .onHit = &EnemyNpcHit,
36 .onDefeat = &EnemyNpcDefeat,
37 .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER,
38};
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