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

Functions

HitID npc_raycast_down (s32 ignoreFlags, f32 *startX, f32 *startY, f32 *startZ, f32 *hitDepth)
 
b32 npc_raycast_down_around (s32 ignoreFlags, f32 *posX, f32 *posY, f32 *posZ, f32 *hitDepth, f32 yaw, f32 radius)
 
b32 npc_raycast_down_sides (s32 ignoreFlags, f32 *posX, f32 *posY, f32 *posZ, f32 *hitDepth)
 
b32 npc_raycast_up (s32 ignoreFlags, f32 *startX, f32 *startY, f32 *startZ, f32 *hitDepth)
 
HitID npc_raycast_up_corner (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 *length)
 
HitID npc_raycast_up_corners (s32 ignoreFlags, f32 *posX, f32 *posY, f32 *posZ, f32 *hitDepth, f32 yaw, f32 radius)
 
HitID npc_raycast_general (s32 flags, f32 startX, f32 startY, f32 startZ, f32 dirX, f32 dirY, f32 dirZ, f32 *hitX, f32 *hitY, f32 *hitZ, f32 *outDepth, f32 *hitNx, f32 *hitNy, f32 *hitNz)
 
void npc_get_slip_vector (f32 *outX, f32 *outZ, f32 aX, f32 aZ, f32 bX, f32 bZ)
 
HitID npc_test_move_with_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 radius)
 
s32 npc_test_move_without_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 radius)
 
b32 npc_test_move_taller_with_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 height, f32 radius)
 
b32 npc_test_move_simple_with_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 height, f32 radius)
 
b32 npc_test_move_simple_without_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 height, f32 radius)
 
s32 npc_test_move_complex_with_slipping (s32 ignoreFlags, f32 *x, f32 *y, f32 *z, f32 length, f32 yaw, f32 height, f32 radius)
 

Variables

s32 NpcHitQueryBehindRightY
 
s32 NpcHitQueryBehindCollider
 
s32 NpcHitQueryAheadCollider
 
s32 NpcHitQueryAheadY
 
s32 NpcHitQueryBehindLeftY
 
s32 NpcHitQueryColliderID
 
PlayerStatusgPlayerStatusPtr = &gPlayerStatus
 

Function Documentation

◆ npc_get_slip_vector()

void npc_get_slip_vector ( f32 * outX,
f32 * outZ,
f32 aX,
f32 aZ,
f32 bX,
f32 bZ )

◆ npc_raycast_down()

HitID npc_raycast_down ( s32 ignoreFlags,
f32 * startX,
f32 * startY,
f32 * startZ,
f32 * hitDepth )

◆ npc_raycast_down_around()

◆ npc_raycast_down_sides()

b32 npc_raycast_down_sides ( s32 ignoreFlags,
f32 * posX,
f32 * posY,
f32 * posZ,
f32 * hitDepth )

◆ npc_raycast_general()

HitID npc_raycast_general ( s32 flags,
f32 startX,
f32 startY,
f32 startZ,
f32 dirX,
f32 dirY,
f32 dirZ,
f32 * hitX,
f32 * hitY,
f32 * hitZ,
f32 * outDepth,
f32 * hitNx,
f32 * hitNy,
f32 * hitNz )

◆ npc_raycast_up()

b32 npc_raycast_up ( s32 ignoreFlags,
f32 * startX,
f32 * startY,
f32 * startZ,
f32 * hitDepth )

◆ npc_raycast_up_corner()

HitID npc_raycast_up_corner ( s32 ignoreFlags,
f32 * x,
f32 * y,
f32 * z,
f32 * length )

Referenced by npc_raycast_up_corners().

◆ npc_raycast_up_corners()

HitID npc_raycast_up_corners ( s32 ignoreFlags,
f32 * posX,
f32 * posY,
f32 * posZ,
f32 * hitDepth,
f32 yaw,
f32 radius )

Referenced by update_riding_physics().

◆ npc_test_move_complex_with_slipping()

s32 npc_test_move_complex_with_slipping ( s32 ignoreFlags,
f32 * x,
f32 * y,
f32 * z,
f32 length,
f32 yaw,
f32 height,
f32 radius )

◆ npc_test_move_simple_with_slipping()

◆ npc_test_move_simple_without_slipping()

b32 npc_test_move_simple_without_slipping ( s32 ignoreFlags,
f32 * x,
f32 * y,
f32 * z,
f32 length,
f32 yaw,
f32 height,
f32 radius )

Referenced by AvoidPlayerAI_ChaseInit().

◆ npc_test_move_taller_with_slipping()

◆ npc_test_move_with_slipping()

HitID npc_test_move_with_slipping ( s32 ignoreFlags,
f32 * x,
f32 * y,
f32 * z,
f32 length,
f32 yaw,
f32 radius )

◆ npc_test_move_without_slipping()

s32 npc_test_move_without_slipping ( s32 ignoreFlags,
f32 * x,
f32 * y,
f32 * z,
f32 length,
f32 yaw,
f32 radius )

Variable Documentation

◆ gPlayerStatusPtr

PlayerStatus* gPlayerStatusPtr = &gPlayerStatus

Referenced by AvoidPlayerAI_ChaseInit(), basic_ai_chase(), basic_ai_chase_init(), basic_ai_loiter(), basic_ai_wander(), can_trigger_loading_zone(), clear_conversation_prompt(), clear_interact_prompt(), clear_ispy_icon(), clear_pulse_stone_icon(), CleftAI_Ambush(), CleftAI_CanSeePlayer(), CleftAI_FindPlayer(), CleftAI_PreAmbush(), CleftAI_ReturnHome(), CleftAI_RevUp(), ClubbaNappingAI_Loiter(), ClubbaNappingAI_ReturnHome(), ClubbaNappingAI_Sleep(), collision_check_player_intersecting_world(), entity_get_collision_flags(), entity_HiddenPanel_flip_over(), entity_SaveBlock_pause_game(), entity_SaveBlock_save_data(), FlyingAI_ChaseInit(), FlyingAI_JumpInit(), FlyingAI_Loiter(), FlyingAI_LosePlayer(), FlyingAI_Wander(), FlyingMagikoopaAI_15(), FlyingMagikoopaAI_17(), FlyingNoAttackAI_12(), FlyingNoAttackAI_13(), func_800E4404(), func_802400D0_BC7F30(), func_80240920_BD4190(), GuardAI_ChaseInit(), GuardAI_Idle(), GuardAI_ReturnHome(), HoppingAI_ChaseInit(), HoppingAI_Hop(), HoppingAI_Loiter(), interact_inspect_dismiss(), MagikoopaAI_10(), MagikoopaAI_CanShootSpell(), MeleeHitbox_CanSeePlayer(), ParatroopaAI_Windup(), partner_handle_after_battle(), PatrolAI_ChaseInit(), PatrolAI_Loiter(), phys_update_lava_reset(), PiranhaPlantAI_10(), ProjectileHitbox_GetUsableProjectileID(), render_conversation_prompt(), render_entities(), render_interact_prompt(), render_ispy_icon(), render_pulse_stone_icon(), SentinelAI_Chase(), SentinelAI_ChaseInit(), SentinelAI_Descend(), SentinelAI_DescendInit(), set_script_owner_npc_anim(), state_step_battle(), sync_held_position(), UnkDistFunc(), update_camera_lead_amount(), update_encounters_pre_battle(), update_player_shadow(), worker_draw_example_player(), and worker_draw_fake_player().

◆ NpcHitQueryAheadCollider

s32 NpcHitQueryAheadCollider

◆ NpcHitQueryAheadY

s32 NpcHitQueryAheadY

◆ NpcHitQueryBehindCollider

s32 NpcHitQueryBehindCollider

◆ NpcHitQueryBehindLeftY

s32 NpcHitQueryBehindLeftY

◆ NpcHitQueryBehindRightY

s32 NpcHitQueryBehindRightY

◆ NpcHitQueryColliderID