papermario
Decompilation of Paper Mario
 
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Loading...
Searching...
No Matches
ItemBlock.c File Reference

Functions

f32 player_get_camera_facing_angle (void)
 
void entity_inactive_block_hit_init (Entity *)
 
void entity_inactive_block_hit_anim (Entity *)
 
void entity_inactive_block_recoil_anim (Entity *)
 
void entity_ItemBlock_idle (Entity *entity)
 
void entity_HiddenItemBlock_idle (Entity *entity)
 
void entity_HitItemBlock_appear (Entity *entity)
 
void entity_ItemBlock_spawn_item (Entity *entity)
 
void entity_TriggerBlock_start_bound_script_2 (Entity *entity)
 
void entity_TriggerBlock_play_vanish_effect (Entity *entity)
 
void entity_HitItemBlock_play_anim (Entity *entity)
 
void entity_HitItemBlock_show_inactive (Entity *entity)
 
void entity_ItemBlock_check_if_inactive (Entity *entity)
 
void entity_ItemBlock_replace_with_inactive (Entity *entity)
 
void entity_HitItemBlock_hide (Entity *entity)
 
s32 entity_TriggerBlock_start_bound_script (Entity *entity)
 
void entity_TriggerBlock_disable_player_input (void)
 
void entity_TriggerBlock_enable_player_input (void)
 
void entity_ItemBlock_setupGfx (s32 entityIndex)
 
void entity_ItemBlock_init (Entity *entity)
 
void entity_HiddenItemBlock_init (Entity *entity)
 
void entity_ItemlessBlock_init (Entity *entity)
 

Variables

Gfx Entity_YellowBlock_Render []
 
Gfx Entity_RedBlock_Render []
 
AnimScript Entity_HitYellowBlock_AnimationHit
 
AnimScript Entity_HitYellowBlock_AnimationIdle
 
StaticAnimatorNodeEntity_HitYellowBlock_Mesh []
 
AnimScript Entity_HitFloatingYellowBlock_AnimationIdle
 
StaticAnimatorNodeEntity_HitFloatingYellowBlock_Mesh []
 
AnimScript Entity_HitRedBlock_AnimationHit
 
StaticAnimatorNodeEntity_HitRedBlock_Mesh []
 
s32 D_802EA310 []
 
EntityBlueprint Entity_HitGroundedYellowBlock
 
EntityBlueprint Entity_HitFloatingYellowBlock
 
EntityBlueprint Entity_HitRedBlock
 
BSS EffectInstanceTriggerBlockVanishEffect
 
EntityScript Entity_ItemBlock_Script
 
EntityScript Entity_HiddenItemBlock_Script
 
EntityScript Entity_HitBlock_Script
 
EntityScript Entity_TriggerBlock_Script
 
DmaEntry Entity_HitYellowBlock_dma [] = { ENTITY_ROM(HitYellowBlock_gfx), ENTITY_ROM(HitYellowBlock_anim) }
 
DmaEntry Entity_HitFloatinYellowBlock_dma [] = { ENTITY_ROM(HitFloatingYellowBlock_gfx), ENTITY_ROM(HitFloatingYellowBlock_anim) }
 
DmaEntry Entity_HitRedBlock_dma [] = { ENTITY_ROM(HitRedBlock_gfx), ENTITY_ROM(HitRedBlock_anim) }
 
EntityModelScript Entity_YellowBlock_RenderScript = STANDARD_ENTITY_MODEL_SCRIPT(Entity_YellowBlock_Render, RENDER_MODE_SURFACE_OPA)
 
EntityModelScript Entity_HiddenYellowBlock_RenderScript = STANDARD_ENTITY_MODEL_SCRIPT(Entity_YellowBlock_Render, RENDER_MODE_SURFACE_XLU_LAYER2)
 
EntityModelScript Entity_RedBlock_RenderScript = STANDARD_ENTITY_MODEL_SCRIPT(Entity_RedBlock_Render, RENDER_MODE_SURFACE_OPA)
 
EntityModelScript Entity_HiddenRedBlock_RenderScript = STANDARD_ENTITY_MODEL_SCRIPT(Entity_RedBlock_Render, RENDER_MODE_SURFACE_XLU_LAYER2)
 
EntityBlueprint Entity_YellowBlock
 
EntityBlueprint Entity_HiddenYellowBlock
 
EntityBlueprint Entity_RedBlock
 
EntityBlueprint Entity_HiddenRedBlock
 
EntityBlueprint Entity_TriggerBlock
 

Function Documentation

◆ entity_HiddenItemBlock_idle()

void entity_HiddenItemBlock_idle ( Entity * entity)

◆ entity_HiddenItemBlock_init()

void entity_HiddenItemBlock_init ( Entity * entity)

◆ entity_HitItemBlock_appear()

void entity_HitItemBlock_appear ( Entity * entity)

◆ entity_HitItemBlock_hide()

void entity_HitItemBlock_hide ( Entity * entity)

◆ entity_HitItemBlock_play_anim()

void entity_HitItemBlock_play_anim ( Entity * entity)

◆ entity_HitItemBlock_show_inactive()

void entity_HitItemBlock_show_inactive ( Entity * entity)

◆ entity_inactive_block_hit_anim()

void entity_inactive_block_hit_anim ( Entity * entity)

◆ entity_inactive_block_hit_init()

void entity_inactive_block_hit_init ( Entity * entity)

◆ entity_inactive_block_recoil_anim()

void entity_inactive_block_recoil_anim ( Entity * entity)

◆ entity_ItemBlock_check_if_inactive()

void entity_ItemBlock_check_if_inactive ( Entity * entity)

◆ entity_ItemBlock_idle()

void entity_ItemBlock_idle ( Entity * entity)

◆ entity_ItemBlock_init()

void entity_ItemBlock_init ( Entity * entity)

◆ entity_ItemBlock_replace_with_inactive()

void entity_ItemBlock_replace_with_inactive ( Entity * entity)

◆ entity_ItemBlock_setupGfx()

void entity_ItemBlock_setupGfx ( s32 entityIndex)

◆ entity_ItemBlock_spawn_item()

void entity_ItemBlock_spawn_item ( Entity * entity)

◆ entity_ItemlessBlock_init()

void entity_ItemlessBlock_init ( Entity * entity)

◆ entity_TriggerBlock_disable_player_input()

void entity_TriggerBlock_disable_player_input ( void )

◆ entity_TriggerBlock_enable_player_input()

void entity_TriggerBlock_enable_player_input ( void )

◆ entity_TriggerBlock_play_vanish_effect()

void entity_TriggerBlock_play_vanish_effect ( Entity * entity)

◆ entity_TriggerBlock_start_bound_script()

s32 entity_TriggerBlock_start_bound_script ( Entity * entity)

◆ entity_TriggerBlock_start_bound_script_2()

void entity_TriggerBlock_start_bound_script_2 ( Entity * entity)

◆ player_get_camera_facing_angle()

f32 player_get_camera_facing_angle ( void )

Variable Documentation

◆ D_802EA310

EntityScript D_802EA310
Initial value:
= {
es_SetCallback(NULL, 2)
}
#define es_SetCallback(func, time)
Definition entity.h:38
#define es_SetFlags(flags)
Definition entity.h:43
#define es_End
Definition entity.h:35
@ ENTITY_FLAG_PENDING_INSTANCE_DELETE
Definition enums.h:2643

Referenced by entity_ItemBlock_check_if_inactive().

◆ Entity_HiddenItemBlock_Script

EntityScript Entity_HiddenItemBlock_Script
Initial value:
= {
es_SetCallback(NULL, 0)
es_SetCallback(NULL, 1)
es_SetCallback(NULL, 2)
}
void entity_ItemBlock_spawn_item(Entity *entity)
Definition ItemBlock.c:59
void entity_ItemBlock_replace_with_inactive(Entity *entity)
Definition ItemBlock.c:131
void entity_HiddenItemBlock_idle(Entity *entity)
Definition ItemBlock.c:35
void entity_ItemBlock_check_if_inactive(Entity *entity)
Definition ItemBlock.c:111
#define es_Call(func)
Definition entity.h:37
#define es_PlaySound(soundId)
Definition entity.h:45
@ SOUND_HIT_BLOCK
Definition enums.h:768
@ ENTITY_FLAG_HIDDEN
Definition enums.h:2614

◆ Entity_HiddenRedBlock

EntityBlueprint Entity_HiddenRedBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.renderCommandList = Entity_HiddenRedBlock_RenderScript,
.modelAnimationNodes = 0,
.updateEntityScript = Entity_HiddenItemBlock_Script,
.fpHandleCollision = entity_block_handle_collision,
{ .dma = ENTITY_ROM(RedBlock) },
.aabbSize = { 25, 25, 25 }
}
void entity_HiddenItemBlock_init(Entity *entity)
Definition ItemBlock.c:253
EntityScript Entity_HiddenItemBlock_Script
Definition ItemBlock.c:287
EntityModelScript Entity_HiddenRedBlock_RenderScript
Definition ItemBlock.c:336
#define ENTITY_ROM(name)
Definition entity.h:65
Definition entity.h:109
@ ENTITY_TYPE_HIDDEN_RED_BLOCK
Definition enums.h:2562
@ ENTITY_FLAG_FIXED_SHADOW_SIZE
Definition enums.h:2623
@ ENTITY_FLAG_4000
Definition enums.h:2628
s32 entity_block_handle_collision(Entity *entity)
Definition Block.c:315

◆ Entity_HiddenRedBlock_RenderScript

◆ Entity_HiddenYellowBlock

EntityBlueprint Entity_HiddenYellowBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.modelAnimationNodes = 0,
.updateEntityScript = Entity_HiddenItemBlock_Script,
.fpHandleCollision = entity_block_handle_collision,
{ .dma = ENTITY_ROM(YellowBlock) },
.aabbSize = { 25, 25, 25 }
}
EntityModelScript Entity_HiddenYellowBlock_RenderScript
Definition ItemBlock.c:334
@ ENTITY_TYPE_HIDDEN_YELLOW_BLOCK
Definition enums.h:2561

◆ Entity_HiddenYellowBlock_RenderScript

◆ Entity_HitBlock_Script

EntityScript Entity_HitBlock_Script
Initial value:
= {
es_SetCallback(NULL, 1)
es_SetCallback(NULL, 1)
}
void entity_HitItemBlock_play_anim(Entity *entity)
Definition ItemBlock.c:90
void entity_HitItemBlock_hide(Entity *entity)
Definition ItemBlock.c:199
void entity_HitItemBlock_appear(Entity *entity)
Definition ItemBlock.c:53
void entity_HitItemBlock_show_inactive(Entity *entity)
Definition ItemBlock.c:100
@ ENTITY_FLAG_PENDING_FULL_DELETE
Definition enums.h:2640

◆ Entity_HitFloatingYellowBlock

EntityBlueprint Entity_HitFloatingYellowBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.modelAnimationNodes = Entity_HitFloatingYellowBlock_Mesh,
.updateEntityScript = Entity_HitBlock_Script,
.fpHandleCollision = NULL,
.entityType = ENTITY_TYPE_YELLOW_BLOCK,
.aabbSize = { 25, 25, 25 }
}
AnimScript Entity_HitFloatingYellowBlock_AnimationIdle
Definition HitFloatingYellowBlock_anim.c:85
DmaEntry Entity_HitFloatinYellowBlock_dma[]
Definition ItemBlock.c:330
EntityScript Entity_HitBlock_Script
Definition ItemBlock.c:300
void entity_ItemlessBlock_init(Entity *entity)
Definition ItemBlock.c:258
StaticAnimatorNode * Entity_HitFloatingYellowBlock_Mesh[]
Definition HitFloatingYellowBlock_anim.c:26
@ ENTITY_TYPE_YELLOW_BLOCK
Definition enums.h:2559
@ ENTITY_FLAG_HAS_ANIMATED_MODEL
Definition enums.h:2617

Referenced by entity_ItemBlock_replace_with_inactive().

◆ Entity_HitFloatingYellowBlock_AnimationIdle

AnimScript Entity_HitFloatingYellowBlock_AnimationIdle
extern

◆ Entity_HitFloatingYellowBlock_Mesh

StaticAnimatorNode* Entity_HitFloatingYellowBlock_Mesh[]
extern

◆ Entity_HitFloatinYellowBlock_dma

DmaEntry Entity_HitFloatinYellowBlock_dma[] = { ENTITY_ROM(HitFloatingYellowBlock_gfx), ENTITY_ROM(HitFloatingYellowBlock_anim) }

◆ Entity_HitGroundedYellowBlock

EntityBlueprint Entity_HitGroundedYellowBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.modelAnimationNodes = Entity_HitYellowBlock_Mesh,
.updateEntityScript = Entity_HitBlock_Script,
.fpHandleCollision = NULL,
{ .dmaList = Entity_HitYellowBlock_dma },
.entityType = ENTITY_TYPE_YELLOW_BLOCK,
.aabbSize = { 25, 25, 25 }
}
AnimScript Entity_HitYellowBlock_AnimationIdle
Definition HitYellowBlock_anim.c:86
DmaEntry Entity_HitYellowBlock_dma[]
Definition ItemBlock.c:329
StaticAnimatorNode * Entity_HitYellowBlock_Mesh[]
Definition HitYellowBlock_anim.c:26

Referenced by entity_ItemBlock_replace_with_inactive().

◆ Entity_HitRedBlock

EntityBlueprint Entity_HitRedBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.renderCommandList = Entity_HitRedBlock_AnimationHit,
.modelAnimationNodes = Entity_HitRedBlock_Mesh,
.updateEntityScript = Entity_HitBlock_Script,
.fpHandleCollision = NULL,
{ .dmaList = Entity_HitRedBlock_dma },
.entityType = ENTITY_TYPE_RED_BLOCK,
.aabbSize = { 25, 25, 25 }
}
DmaEntry Entity_HitRedBlock_dma[]
Definition ItemBlock.c:331
StaticAnimatorNode * Entity_HitRedBlock_Mesh[]
Definition HitRedBlock_anim.c:26
AnimScript Entity_HitRedBlock_AnimationHit
Definition HitRedBlock_anim.c:33
@ ENTITY_TYPE_RED_BLOCK
Definition enums.h:2564

Referenced by entity_ItemBlock_replace_with_inactive().

◆ Entity_HitRedBlock_AnimationHit

AnimScript Entity_HitRedBlock_AnimationHit
extern

◆ Entity_HitRedBlock_dma

DmaEntry Entity_HitRedBlock_dma[] = { ENTITY_ROM(HitRedBlock_gfx), ENTITY_ROM(HitRedBlock_anim) }

◆ Entity_HitRedBlock_Mesh

StaticAnimatorNode* Entity_HitRedBlock_Mesh[]
extern

◆ Entity_HitYellowBlock_AnimationHit

AnimScript Entity_HitYellowBlock_AnimationHit
extern

◆ Entity_HitYellowBlock_AnimationIdle

AnimScript Entity_HitYellowBlock_AnimationIdle
extern

◆ Entity_HitYellowBlock_dma

DmaEntry Entity_HitYellowBlock_dma[] = { ENTITY_ROM(HitYellowBlock_gfx), ENTITY_ROM(HitYellowBlock_anim) }

◆ Entity_HitYellowBlock_Mesh

StaticAnimatorNode* Entity_HitYellowBlock_Mesh[]
extern

◆ Entity_ItemBlock_Script

◆ Entity_RedBlock

EntityBlueprint Entity_RedBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.renderCommandList = Entity_RedBlock_RenderScript,
.modelAnimationNodes = 0,
.updateEntityScript = Entity_ItemBlock_Script,
.fpHandleCollision = entity_block_handle_collision,
{ .dma = ENTITY_ROM(RedBlock) },
.entityType = ENTITY_TYPE_RED_BLOCK,
.aabbSize = { 25, 25, 25 }
}
void entity_ItemBlock_init(Entity *entity)
Definition ItemBlock.c:243
EntityScript Entity_ItemBlock_Script
Definition ItemBlock.c:274
EntityModelScript Entity_RedBlock_RenderScript
Definition ItemBlock.c:335

◆ Entity_RedBlock_Render

Gfx Entity_RedBlock_Render[]
extern

◆ Entity_RedBlock_RenderScript

◆ Entity_TriggerBlock

EntityBlueprint Entity_TriggerBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.modelAnimationNodes = Entity_HitYellowBlock_Mesh,
.updateEntityScript = Entity_TriggerBlock_Script,
.fpHandleCollision = entity_block_handle_collision,
{ .dmaList = Entity_HitYellowBlock_dma },
.aabbSize = { 25, 25, 25 }
}
EntityScript Entity_TriggerBlock_Script
Definition ItemBlock.c:311
@ ENTITY_TYPE_SINGLE_TRIGGER_BLOCK
Definition enums.h:2560
@ ENTITY_FLAG_8000
Definition enums.h:2629

◆ Entity_TriggerBlock_Script

EntityScript Entity_TriggerBlock_Script
Initial value:
= {
es_SetCallback(NULL, 2)
}
void entity_TriggerBlock_disable_player_input(void)
Definition ItemBlock.c:213
void entity_inactive_block_hit_init(Entity *)
Definition Block.c:203
s32 entity_TriggerBlock_start_bound_script(Entity *entity)
Definition ItemBlock.c:205
void entity_inactive_block_recoil_anim(Entity *)
Definition Block.c:223
void entity_inactive_block_hit_anim(Entity *)
Definition Block.c:209
void entity_TriggerBlock_play_vanish_effect(Entity *entity)
Definition ItemBlock.c:86
void entity_TriggerBlock_enable_player_input(void)
Definition ItemBlock.c:221
void entity_TriggerBlock_start_bound_script_2(Entity *entity)
Definition ItemBlock.c:82
@ ENTITY_FLAG_DISABLE_COLLISION
Definition enums.h:2619

◆ Entity_YellowBlock

EntityBlueprint Entity_YellowBlock
Initial value:
= {
.typeDataSize = sizeof(BlockData),
.renderCommandList = Entity_YellowBlock_RenderScript,
.modelAnimationNodes = 0,
.updateEntityScript = Entity_ItemBlock_Script,
.fpHandleCollision = entity_block_handle_collision,
{ .dma = ENTITY_ROM(YellowBlock) },
.entityType = ENTITY_TYPE_YELLOW_BLOCK,
.aabbSize = { 25, 25, 25 }
}
EntityModelScript Entity_YellowBlock_RenderScript
Definition ItemBlock.c:333

◆ Entity_YellowBlock_Render

Gfx Entity_YellowBlock_Render[]
extern

◆ Entity_YellowBlock_RenderScript

◆ TriggerBlockVanishEffect

BSS EffectInstance* TriggerBlockVanishEffect