Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
Macros | Functions
mario_actions_automatic.c File Reference
#include <ultra64.h>
#include "sm64.h"
#include "behavior_data.h"
#include "mario_actions_automatic.h"
#include "audio/external.h"
#include "area.h"
#include "mario.h"
#include "mario_step.h"
#include "engine/math_util.h"
#include "memory.h"
#include "engine/graph_node.h"
#include "save_file.h"
#include "engine/surface_collision.h"
#include "interaction.h"
#include "camera.h"

Macros

#define POLE_NONE   0
 
#define POLE_TOUCHED_FLOOR   1
 
#define POLE_FELL_OFF   2
 
#define HANG_NONE   0
 
#define HANG_HIT_CEIL_OR_OOB   1
 
#define HANG_LEFT_CEIL   2
 

Functions

void add_tree_leaf_particles (struct MarioState *m)
 
void play_climbing_sounds (struct MarioState *m, s32 b)
 
s32 set_pole_position (struct MarioState *m, f32 offsetY)
 
s32 act_holding_pole (struct MarioState *m)
 
s32 act_climbing_pole (struct MarioState *m)
 
s32 act_grab_pole_slow (struct MarioState *m)
 
s32 act_grab_pole_fast (struct MarioState *m)
 
s32 act_top_of_pole_transition (struct MarioState *m)
 
s32 act_top_of_pole (struct MarioState *m)
 
s32 perform_hanging_step (struct MarioState *m, Vec3f nextPos)
 
s32 update_hang_moving (struct MarioState *m)
 
void update_hang_stationary (struct MarioState *m)
 
s32 act_start_hanging (struct MarioState *m)
 
s32 act_hanging (struct MarioState *m)
 
s32 act_hang_moving (struct MarioState *m)
 
s32 let_go_of_ledge (struct MarioState *m)
 
void func_8025F0DC (struct MarioState *m)
 
void func_8025F188 (struct MarioState *m)
 
void update_ledge_climb (struct MarioState *m, s32 animation, u32 endAction)
 
s32 act_ledge_grab (struct MarioState *m)
 
s32 act_ledge_climb_slow (struct MarioState *m)
 
s32 act_ledge_climb_down (struct MarioState *m)
 
s32 act_ledge_climb_fast (struct MarioState *m)
 
s32 act_grabbed (struct MarioState *m)
 
s32 act_in_cannon (struct MarioState *m)
 
s32 act_tornado_twirling (struct MarioState *m)
 
s32 check_common_automatic_cancels (struct MarioState *m)
 
s32 mario_execute_automatic_action (struct MarioState *m)
 

Macro Definition Documentation

◆ HANG_HIT_CEIL_OR_OOB

#define HANG_HIT_CEIL_OR_OOB   1

◆ HANG_LEFT_CEIL

#define HANG_LEFT_CEIL   2

◆ HANG_NONE

#define HANG_NONE   0

◆ POLE_FELL_OFF

#define POLE_FELL_OFF   2

◆ POLE_NONE

#define POLE_NONE   0

◆ POLE_TOUCHED_FLOOR

#define POLE_TOUCHED_FLOOR   1

Function Documentation

◆ act_climbing_pole()

s32 act_climbing_pole ( struct MarioState m)

◆ act_grab_pole_fast()

s32 act_grab_pole_fast ( struct MarioState m)

◆ act_grab_pole_slow()

s32 act_grab_pole_slow ( struct MarioState m)

◆ act_grabbed()

s32 act_grabbed ( struct MarioState m)

◆ act_hang_moving()

s32 act_hang_moving ( struct MarioState m)

◆ act_hanging()

s32 act_hanging ( struct MarioState m)

◆ act_holding_pole()

s32 act_holding_pole ( struct MarioState m)

The Shifting Sand Land palm tree check is done climbing up in

◆ act_in_cannon()

s32 act_in_cannon ( struct MarioState m)

◆ act_ledge_climb_down()

s32 act_ledge_climb_down ( struct MarioState m)

◆ act_ledge_climb_fast()

s32 act_ledge_climb_fast ( struct MarioState m)

◆ act_ledge_climb_slow()

s32 act_ledge_climb_slow ( struct MarioState m)

◆ act_ledge_grab()

s32 act_ledge_grab ( struct MarioState m)

◆ act_start_hanging()

s32 act_start_hanging ( struct MarioState m)

Crash if mario's referenced ceiling is NULL (same for other hanging actions)

◆ act_top_of_pole()

s32 act_top_of_pole ( struct MarioState m)

◆ act_top_of_pole_transition()

s32 act_top_of_pole_transition ( struct MarioState m)

◆ act_tornado_twirling()

s32 act_tornado_twirling ( struct MarioState m)

◆ add_tree_leaf_particles()

void add_tree_leaf_particles ( struct MarioState m)

◆ check_common_automatic_cancels()

s32 check_common_automatic_cancels ( struct MarioState m)

◆ func_8025F0DC()

void func_8025F0DC ( struct MarioState m)

◆ func_8025F188()

void func_8025F188 ( struct MarioState m)

◆ let_go_of_ledge()

s32 let_go_of_ledge ( struct MarioState m)

◆ mario_execute_automatic_action()

s32 mario_execute_automatic_action ( struct MarioState m)

◆ perform_hanging_step()

s32 perform_hanging_step ( struct MarioState m,
Vec3f  nextPos 
)

◆ play_climbing_sounds()

void play_climbing_sounds ( struct MarioState m,
s32  b 
)

◆ set_pole_position()

s32 set_pole_position ( struct MarioState m,
f32  offsetY 
)

◆ update_hang_moving()

s32 update_hang_moving ( struct MarioState m)

◆ update_hang_stationary()

void update_hang_stationary ( struct MarioState m)

◆ update_ledge_climb()

void update_ledge_climb ( struct MarioState m,
s32  animation,
u32  endAction 
)