7#include "sprite/player.h"
10extern Addr entity_model_BlueWarpPipe_ROM_END;
11extern Addr entity_model_BlueWarpPipe_ROM_START;
34 entity->
pos.
y += 2.3125;
45 switch (pipeData->
timer) {
72 s32 stickAxisX = abs(playerStatus->
stickAxis[0]);
73 s32 stickAxisZ = playerStatus->
stickAxis[1];
75 if ((stickAxisX != 0) || (stickAxisZ != 0)) {
76 if (
atan2(0.0f, 0.0f, stickAxisX, stickAxisZ) < 60.0f) {
97 if (pipeData->
timer == 0) {
103 angle =
atan2(playerStatus->
pos.
x, playerStatus->
pos.
z, entryX, entryZ);
112 if (--pipeData->
timer == -1) {
122 pipeData->
timer = 25;
134 playerStatus->
pos.
y--;
137 if (pipeData->
timer == -1) {
139 playerStatus->
pos.
y -= 50.0f;
166 gSPPopMatrix(gfxPos++, G_MTX_MODELVIEW);
207 .modelAnimationNodes = 0,
210 .fpHandleCollision = NULL,
213 .aabbSize = { 40, 50, 40}
EntityModelScript Entity_BlueWarpPipe_RenderScript
void entity_init_BlueWarpPipe(Entity *entity)
void entity_BlueWarpPipe_start_bound_script(Entity *entity)
Gfx Entity_BlueWarpPipe_RenderPipe[]
void entity_BlueWarpPipe_wait_player_move_to_center(Entity *entity)
EntityBlueprint Entity_BlueWarpPipe
EntityScript Entity_BlueWarpPipe_Script
void entity_BlueWarpPipe_idle(Entity *entity)
void entity_BlueWarpPipe_enter_pipe_update(Entity *entity)
Gfx Entity_BlueWarpPipe_RenderBase[]
void entity_BlueWarpPipe_check_if_active(Entity *entity)
void entity_BlueWarpPipe_wait_for_player_to_get_off(Entity *entity)
void entity_BlueWarpPipe_setupGfx(s32 entityIndex)
void entity_BlueWarpPipe_rise_up(Entity *entity)
void entity_BlueWarpPipe_enter_pipe_init(Entity *bluePipe)
void entity_BlueWarpPipe_set_player_move_to_center(Entity *entity)
struct BlueWarpPipeData * bluePipe
s32 CreateEntityVarArgBuffer[]
#define STANDARD_ENTITY_MODEL_SCRIPT(gfx, renderMode)
#define es_SetCallback(func, time)
EvtScript * onEnterPipeEvt
@ PS_FLAG_NO_STATIC_COLLISION
@ IMGFX_ANIM_VERTICAL_PIPE_CURL
@ ENTITY_TYPE_BLUE_WARP_PIPE
@ ENTITY_COLLISION_PLAYER_TOUCH_FLOOR
@ RENDER_MODE_SURFACE_OPA
Entity * get_entity_by_index(s32 index)
s32 disable_player_input(void)
s32 entity_start_script(Entity *entity)
s32 disable_player_static_collisions(void)
void move_player(s32 duration, f32 heading, f32 speed)
void exec_entity_commandlist(Entity *entity)
f32 get_xz_dist_to_player(f32, f32)
void disable_player_shadow(void)
void sfx_play_sound(s32 soundID)
MapSettings * get_current_map_settings(void)
Fields other than main, entryList, entryCount, background, and tattle are initialised when the map lo...
void set_player_imgfx_all(s32 animID, ImgFXType imgfxType, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6)
void(* renderSetupFunc)(s32)
EvtScript * boundScriptBytecode
u8 Addr[]
Linker symbol address, as in ld_addrs.h.
CollisionStatus gCollisionStatus
GameStatus * gGameStatusPtr
PlayerStatus gPlayerStatus
DisplayContext * gDisplayContext
s32 get_global_flag(s32 index)