Go to the source code of this file.
|
void | get_npc_pos (s32 npcID, f32 *outX, f32 *outY, f32 *outZ, s32 *outAirborne) |
|
void | npc_follow_init (Npc *npc, s32 targetNpcID, FollowAnims *anims, f32 walkSpeed, f32 runSpeed, s32 idleRadius, s32 walkRadius) |
|
void | npc_update_npc_tracking (Npc *npc) |
|
void | npc_follow_npc (Npc *npc) |
|
◆ NpcFollowStates
Enumerator |
---|
NPC_FOLLOW_STATE_RUN | |
NPC_FOLLOW_STATE_JUMP | |
NPC_FOLLOW_STATE_FALL | |
NPC_FOLLOW_STATE_IDLE | |
Definition at line 3 of file npc_follow.c.
◆ get_npc_pos()
void get_npc_pos |
( |
s32 | npcID, |
|
|
f32 * | outX, |
|
|
f32 * | outY, |
|
|
f32 * | outZ, |
|
|
s32 * | outAirborne ) |
◆ npc_follow_init()
void npc_follow_init |
( |
Npc * | npc, |
|
|
s32 | targetNpcID, |
|
|
FollowAnims * | anims, |
|
|
f32 | walkSpeed, |
|
|
f32 | runSpeed, |
|
|
s32 | idleRadius, |
|
|
s32 | walkRadius ) |
Definition at line 38 of file npc_follow.c.
38 {
41 s32 i;
42
45
51 }
56 followData->
anims = anims;
66}
NpcHistoryPoint moveHistory[40]
#define ASSERT(condition)
@ COLLIDER_FLAG_IGNORE_PLAYER
void * heap_malloc(s32 size)
◆ npc_update_npc_tracking()
void npc_update_npc_tracking |
( |
Npc * | npc | ) |
|
Definition at line 68 of file npc_follow.c.
68 {
72 s32 isAirborne;
74
78
80 return;
81 }
82
84 return;
85 }
86
93 }
99 }
100 }
101}
f32 dist2D(f32 ax, f32 ay, f32 bx, f32 by)
void get_npc_pos(s32 npcID, f32 *outX, f32 *outY, f32 *outZ, s32 *outAirborne)
◆ npc_follow_npc()
Definition at line 103 of file npc_follow.c.
103 {
110 f32 targetX, targetY, targetZ;
113
115
126
130 }
131
135 }
136
143 break;
144 }
145
150 } else {
152 }
153 break;
154 }
155 }
156
161 break;
162 }
163
170 break;
171 }
172
176 }
183 break;
184 }
185 }
186 }
187
190 }
195 }
196 break;
202 }
219 }
225 return;
226 }
230 }
236 }
237 break;
243 }
252 {
259 }
260 }
261 break;
272 break;
273 }
274
277 break;
278 }
279
282 break;
283 }
284
286 break;
287 }
288
292 }
296 continue;
297 }
298
301 return;
302 }
303
306 break;
307 }
308
311 break;
312 }
313
315 break;
316 }
317
321 }
325 }
327 break;
328 }
329}
#define npc_raycast_down_sides
@ NPC_FLAG_COLLDING_FORWARD_WITH_WORLD
f32 get_clamped_angle_diff(f32, f32)
void npc_move_heading(Npc *npc, f32 speed, f32 yaw)