#ifndef __BS_INT_H__ #define __BS_INT_H__ #include #include "functions.h" #include "variables.h" typedef void (*bsStateMethod)(void); enum bs_interrupt_e { BS_INTR_0_NONE, BS_INTR_1, BS_INTR_2, BS_INTR_3, BS_INTR_4, BS_INTR_5, BS_INTR_6, BS_INTR_7, //something with carried objects BS_INTR_8, //something with carried objects BS_INTR_9, //bsbfly?? BS_INTR_A, //wishy_washy? BS_INTR_B, BS_INTR_C_CLIMB, //bsclimb? BS_INTR_D_SURF, BS_INTR_E, BS_INTR_F, //gv matching game, mr. vile (lose?) BS_INTR_10, BS_INTR_11_DROWN, BS_INTR_12, //something with carried objects BS_INTR_13_FF_DEATH_SQUARE, BS_INTR_14, //gv matching game?, forces jump state BS_INTR_15, BS_INTR_16_THROW_CARRIED_OBJ, //carry_object_throw_volume BS_INTR_17, //eat yumblie? BS_INTR_18_CROC_ATE_WRONG, //ate wrong yumblie type? BS_INTR_19, BS_INTR_1A, //turbo_talon_trainers? BS_INTR_1B, //wading_boots BS_INTR_1C, BS_INTR_1D, BS_INTR_1E, BS_INTR_1F, BS_INTR_20, BS_INTR_21, BS_INTR_22, BS_INTR_23, BS_INTR_24, BS_INTR_25, BS_INTR_26, //bsjig_jiggy BS_INTR_27_BANJO_SLED, BS_INTR_28, //bs_sled BS_INTR_27_WALRUS_SLED, //bs_walrus_sled??? BS_INTR_2A, //boggy race text? BS_INTR_2B, //boggy race? BS_INTR_2C, BS_INTR_2D, BS_INTR_2E, BS_INTR_2F_LOGGO, //loggo flush? BS_INTR_30, BS_INTR_31, //takes damage BS_INTR_32, BS_INTR_33, BS_INTR_34, BS_INTR_35, //notedoor? BS_INTR_36_DINGPOT, //dingpot BS_INTR_37 }; typedef struct bs_state_s{ bsStateMethod init_func; bsStateMethod update_func; bsStateMethod end_func; bsStateMethod interrupt_func; } bsState; typedef struct bs_map_s{ s32 uid; bsState behavior; } bsMap; void bsList_clearAll(void); void bsList_setInitMethod(enum bs_e i, bsStateMethod func); void bsList_setUpdateMethod(enum bs_e i, bsStateMethod func); void bsList_setEndMethod(enum bs_e i, bsStateMethod func); void bsList_setInterruptMethod(enum bs_e i, bsStateMethod func); bsStateMethod bsList_getInitMethod(enum bs_e i); bsStateMethod bsList_getUpdateMethod(enum bs_e i); bsStateMethod bsList_getEndMethod(enum bs_e i); bsStateMethod bsList_getInterruptMethod(enum bs_e i); #endif