1 #ifndef _OBJECT_LIST_PROCESSOR_H 2 #define _OBJECT_LIST_PROCESSOR_H 12 #define TIME_STOP_UNKNOWN_0 (1 << 0) 13 #define TIME_STOP_ENABLED (1 << 1) 14 #define TIME_STOP_UNKNOWN_2 (1 << 2) 15 #define TIME_STOP_MARIO_AND_DOORS (1 << 3) 16 #define TIME_STOP_ALL_OBJECTS (1 << 4) 17 #define TIME_STOP_MARIO_OPENED_DOOR (1 << 5) 18 #define TIME_STOP_ACTIVE (1 << 6) 24 #define OBJECT_POOL_CAPACITY 240
struct NumTimesCalled gNumCalls
The number of times find_floor, find_ceil, and find_wall_collisions have been called respectively...
Definition: object_list_processor.c:56
void bhv_mario_update(void)
Mario's primary behavior update function.
Definition: object_list_processor.c:249
Definition: object_list_processor.h:33
Definition: object_list_processor.h:52
struct Object gObjectPool[]
The pool that objects are allocated from.
Definition: object_list_processor.c:74
Definition: object_list_processor.h:68
signed short int s16
Definition: ultratypes.h:13
Definition: object_list_processor.h:48
Definition: object_list_processor.h:37
void unload_objects_from_area(s32 unused, s32 areaIndex)
Definition: object_list_processor.h:51
u32 * gBehCommand
The next object behavior command to be executed.
Definition: object_list_processor.c:115
s16 gDebugInfo[][8]
An array of debug controls that could be used to tweak in-game parameters.
Definition: object_list_processor.c:62
s16 floor
Definition: object_list_processor.h:69
void set_object_respawn_info_bits(struct Object *obj, u8 bits)
OR the object's respawn info with bits << 8.
Definition: object_list_processor.c:390
void spawn_objects_from_info(s32 unused, struct SpawnInfo *spawnInfo)
struct Object * gLuigiObject
An object variable that may have been used to represent the planned second player.
Definition: object_list_processor.c:103
struct ObjectNode gFreeObjectList
A singly linked list of available slots in the object pool.
Definition: object_list_processor.c:91
u32 gObjectCounter
Roughly the number of objects that have been processed this frame so far.
Definition: object_list_processor.c:51
struct ObjectNode * gObjectLists
A pointer to gObjectListArray.
Definition: object_list_processor.c:86
s16 ceil
Definition: object_list_processor.h:70
struct ObjectNode gObjectListArray[]
Nodes used to represent the doubly linked object lists.
Definition: object_list_processor.c:27
struct Object * gCurrentObject
The object whose behavior script is currently being updated.
Definition: object_list_processor.c:110
s32 gNumStaticSurfaceNodes
The number of nodes that have been created for surfaces.
Definition: object_list_processor.c:139
struct Object * gMarioObject
The object representing mario.
Definition: object_list_processor.c:96
s32 gSurfaceNodesAllocated
The total number of surface nodes allocated (a node is allocated for each spatial partition cell that...
Definition: object_list_processor.c:129
Definition: object_list_processor.h:32
Definition: object_list_processor.h:56
s32 gDebugInfoFlags
Flags controlling what debug info is displayed.
Definition: object_list_processor.c:32
static UNUSED u32 unused
Definition: osContStartReadData.c:6
s16 gDebugInfoOverwrite[][8]
Definition: object_list_processor.c:63
Definition: object_list_processor.h:44
void clear_objects(void)
Clear objects, dynamic surfaces, and some miscellaneous level data used by objects.
Definition: object_list_processor.c:511
u32 gTimeStopState
A set of flags to control which objects are updated on a given frame.
Definition: object_list_processor.c:69
s16 gPrevFrameObjectCount
The number of objects that were processed last frame, which may miss some objects that were spawned l...
Definition: object_list_processor.c:123
s32 gNumStaticSurfaces
The number of surfaces in the pool.
Definition: object_list_processor.c:144
void update_objects(s32 unused)
s16 wall
Definition: object_list_processor.h:71
unsigned char u8
Definition: ultratypes.h:12
Definition: object_list_processor.h:39
s32 gNumFindFloorMisses
The number of times per frame find_floor found no floor beneath an object, and therefore either retur...
Definition: object_list_processor.c:38
#define UNUSED
Definition: macros.h:13
s32 gSurfacesAllocated
The total number of surfaces allocated.
Definition: object_list_processor.c:134
struct Object gMacroObjectDefaultParent
A special object whose purpose is to act as a parent for macro objects.
Definition: object_list_processor.c:79
Definition: object_list_processor.h:42
Definition: object_list_processor.h:43
s32 gUnknownWallCount
An unused debug counter with the label "WALL".
Definition: object_list_processor.c:45
signed int s32
Definition: ultratypes.h:15
Definition: object_list_processor.h:46
Definition: object_list_processor.h:34
struct MemoryPool * gObjectMemoryPool
A pool used by chain chomp and wiggler to allocate their body parts.
Definition: object_list_processor.c:149
ObjectList
Every object is categorized into an object list, which controls the order they are processed and whic...
Definition: object_list_processor.h:30
unsigned int u32
Definition: ultratypes.h:16
Definition: object_list_processor.h:36
UNUSED s32 unused_8033BEF8
Definition: object_list_processor.c:40