SSBM Decomp
Loading...
Searching...
No Matches
mplib.c File Reference
#include "mplib.h"
#include "mpisland.h"
#include "mplib.static.h"
#include "placeholder.h"
#include "platform.h"
#include "stdbool.h"
#include "types.h"
#include "baselib/debug.h"
#include "baselib/forward.h"
#include "baselib/memory.h"
#include "db/db.h"
#include "dolphin/gx/GXGeometry.h"
#include "dolphin/gx/GXStruct.h"
#include "dolphin/gx/GXVert.h"
#include "dolphin/types.h"
#include "ft/ftlib.h"
#include "gr/grdynamicattr.h"
#include "gr/ground.h"
#include "it/inlines.h"
#include "it/it_26B1.h"
#include "it/itCharItems.h"
#include "lb/forward.h"
#include "mp/forward.h"
#include "mp/mpcoll.h"
#include <math.h>
#include <math_ppc.h>
#include <stddef.h>
#include <string.h>
#include <dolphin/mtx.h>
#include <baselib/jobj.h>
#include <sysdolphin/baselib/cobj.h>
#include <sysdolphin/baselib/gobj.h>
#include <sysdolphin/baselib/gobjproc.h>
#include <sysdolphin/baselib/lobj.h>
#include <sysdolphin/baselib/tev.h>
#include <sysdolphin/baselib/texp.h>
#include <melee/cm/camera.h>
#include <melee/cm/types.h>
#include <melee/gr/stage.h>
#include <melee/lb/types.h>

Data Structures

struct  mpLib_803BF248_t_x4
struct  mpLib_803BF248_t

Macros

#define LINEID_CHECK(line, line_id)

Functions

MapCollDatampLib_8004D164 (void)
CollVtxmpGetGroundCollVtx (void)
CollLinempGetGroundCollLine (void)
CollJointmpGetGroundCollJoint (void)
void mpPruneEmptyLines (MapCollData *coll_data)
void mpLibLoad (MapCollData *coll_data)
int mpLineGetNext (int line_id)
int mpLineGetPrev (int line_id)
static void mpRemap2d (float *x_out, float *y_out, float ax0, float ay0, float ax1, float ay1, float bx0, float by0, float bx1, float by1, float px, float py)
 remap point p from line a to line b
int mpLib_8004DD90_Floor (int line_id, Vec3 *vec, float *y_out, u32 *flags_out, Vec3 *normal_out)
int mpLib_8004E090_Ceiling (int line_id, Vec3 *vec, float *y_out, u32 *flags_out, Vec3 *normal_out)
int mpLib_8004E398_LeftWall (int line_id, Vec3 *vec, float *x_out, u32 *flags_out, Vec3 *normal_out)
int mpLib_8004E684_RightWall (int line_id, Vec3 *vec, float *x_out, u32 *flags_out, Vec3 *normal_out)
bool mpLineIntersection (float a0x, float a0y, float a1x, float a1y, float b0x, float b0y, float b1x, float b1y, float *int_x, float *int_y)
 direction dependent line intersection
bool mpLineIntersectionH (float *int_x, float *int_y, float a0x, float a0y, float a1x, float b0x, float b0y, float b1x, float b1y)
 line intersection between a and b, where a is a horizontal line
void mpLib_8004ED5C (int line_id, float *x0_out, float *y0_out, float *x1_out, float *y1_out)
bool mpCheckFloor (float ax, float ay, float bx, float by, float y_offset, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int line_id_skip, int joint_id_skip, int joint_id_only, bool(*cb)(Fighter_GObj *, int), Fighter_GObj *gobj)
bool mpCheckFloorRemap (float ax, float ay, float bx, float by, float y_offset, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int line_id_skip, int joint_id_skip, int joint_id_only, bool(*cb)(Fighter_GObj *, int), Fighter_GObj *gobj)
bool mpCheckCeiling (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpCheckCeilingRemap (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpLineIntersectionV (float *int_x, float *int_y, float a0x, float a0y, float a1y, float b0x, float b0y, float b1x, float b1y)
 line intersection between a and b, where a is a vertical line
bool mpCheckLeftWall (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpCheckLeftWallRemap (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpCheckRightWall (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpCheckRightWallRemap (float ax, float ay, float bx, float by, Vec3 *vec_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only)
bool mpLib_800511A4_RightWall (float ax, float ay, float bx, float by, float cx, float cy, float dx, float dy, int *line_id_out, int joint_id_skip, int joint_id_only)
bool mpLib_800515A0_LeftWall (float a0x, float a0y, float a1x, float a1y, float b0x, float b0y, float b1x, float b1y, int *line_id_out, int joint_id_skip, int joint_id_only)
int mpLib_8005199C_Floor (Vec3 *vec, int joint_id_skip, int joint_id_only)
int mpLib_80051BA8_Floor (Vec3 *out_vec, int line_id_skip, int joint_id_skip, int joint_id_only, int dir, float left, float bottom, float right, float top)
bool mpCheckMultiple (float x0, float y0, float x1, float y1, Vec3 *pos_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, u32 checks, int joint_id_skip, int joint_id_only)
bool mpCheckAllRemap (Vec3 *pos_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only, float x0, float y0, float x1, float y1)
bool mpCheckAll (Vec3 *pos_out, int *line_id_out, u32 *flags_out, Vec3 *normal_out, int joint_id_skip, int joint_id_only, float x0, float y0, float x1, float y1)
int mpLineNextNonFloor (int line_id)
int mpLinePrevNonFloor (int line_id)
int mpLinePrevNonCeiling (int line_id)
int mpLineNextNonCeiling (int line_id)
int mpLineNextNonLeftWall (int line_id)
int mpLinePrevNonLeftWall (int line_id)
int mpLinePrevNonRightWall (int line_id)
int mpLineNextNonRightWall (int line_id)
int mpLib_80053394_Floor (int line_id)
int mpLib_80053448_Floor (int line_id)
int mpLib_800534FC_Floor (int line_id)
int mpLib_800536CC_Floor (int line_id)
int mpLib_8005389C_Ceiling (int line_id)
int mpLib_80053950_Ceiling (int line_id)
int mpLib_80053A04_Ceiling (int line_id)
int mpLib_80053BD4_Ceiling (int line_id)
void mpLib_80053DA4_Floor (int line_id, Vec3 *pos_out)
void mpLib_80053ECC_Floor (int line_id, Vec *vec)
void mpFloorGetRight (int line_id, Vec3 *pos_out)
void mpFloorGetLeft (int line_id, Vec3 *pos_out)
void mpCeilingGetRight (int line_id, Vec3 *pos_out)
void mpCeilingGetLeft (int line_id, Vec3 *pos_out)
void mpLeftWallGetTop (int line_id, Vec3 *pos_out)
void mpLeftWallGetBottom (int line_id, Vec3 *pos_out)
void mpRightWallGetTop (int line_id, Vec3 *pos_out)
void mpRightWallGetBottom (int line_id, Vec3 *pos_out)
void mpLineGetV1Pos (int line_id, Vec3 *pos_out)
void mpLineGetV0Pos (int line_id, Vec3 *pos_out)
enum_t mpLineGetKind (int line_id)
u32 mpLineGetFlags (int line_id)
void mpLib_80054D68 (int line_id, u32 flags)
Vec3 * mpLineGetNormal (int line_id, Vec3 *normal_out)
bool mpLib_80054ED8 (int line_id)
bool mpLinesConnected (int start_id, int target_id)
static HSD_JObjjobj_child (HSD_JObj *jobj)
static HSD_JObjjobj_next (HSD_JObj *jobj)
static HSD_JObjjobj_parent (HSD_JObj *jobj)
void mpLib_800552B0 (int joint_id, HSD_JObj *jobj, int z)
 what even is this lol
void mpJointHide (int joint_id)
void mpJointUnhide (int joint_id)
void mpJointUpdateDynamics (int joint_id)
void mpLib_80055E24 (int joint_id)
void mpLib_80055E9C (int joint_id)
void mpJointUpdateBounding (int joint_id)
void mpLib_8005667C (int joint_id)
void mpVtxGetPos (int vtx_id, float *x_out, float *y_out)
void mpVtxSetPos (int vtx_id, float x, float y)
void mpLineSetPos (int line_id, float x0, float y0, float x1, float y1)
void mpLib_80056758 (int line_id, float x0, float y0, float x1, float y1)
bool mpGetSpeed (int line_id, Vec3 *pos, Vec3 *speed)
float mpLib_800569EC (u32 unk)
int * mpLib_80056A1C (int arg0, int *arg1)
int mpLib_80056A54 (int arg0, int *arg1)
int * mpLib_80056A8C (int arg0, int *arg1)
int mpLib_80056AC4 (int arg0, int *arg1)
int * mpLib_80056AFC (int arg0, int *arg1)
int mpLib_80056B34 (int arg0, int *arg1)
int mpJointFromLine (int line_id)
bool mpLib_80056C54 (int line_id, Vec3 *pos, int *line_id_out, Vec3 *vec_out, u32 *flags_out, Vec3 *normal_out, f32 var_f25, f32 arg7)
void mpLib_80057424 (int joint_id)
void mpLib_80057528 (int line_id)
void mpLib_800575B0 (int line_id)
void mpJointListAdd (int joint_id)
void mpJointListUnlink (CollJoint *arg0)
void mpLib_80057BC0 (int joint_id)
void mpLib_80057FDC (int joint_id)
void mpLib_80058044 (int joint_id)
void mpJointSetB10 (int joint_id)
void mpJointSetCb1 (int joint_id, void *obj, mpLib_Callback cb)
void mpJointClearCb1 (int joint_id)
void mpJointGetCb1 (int joint_id, mpLib_Callback *arg1, Ground **arg2)
void mpLib_8005811C (CollData *coll, int ledge_id)
void mpJointSetCb2 (int joint_id, Ground *arg1, mpLib_Callback arg2)
void mpJointGetCb2 (int joint_id, mpLib_Callback *cb, Ground **gr)
void mpLib_800581DC (int joint_id0, int joint_id1)
void mpLib_80058560 (void)
void mpLib_80058614_Floor (void)
void mpLib_800587FC (HSD_GObj *gobj)
void mpLib_80058820 (void)
bool mpCheckedBounding (void)
void mpBoundingCheck (float left, float bottom, float right, float top)
 takes a bounding box and checks each joint to see if they're within range if they are outside the bounding box, they are marked as too far
void mpBoundingCheck2 (float x1, float y1, float x2, float y2)
void mpBoundingCheck3 (float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3)
void mpUncheckBounding (void)
void mpLib_SetupDraw (GXColor color)
void mpLib_DrawEcbs (CollData *cd)
void mpLib_DrawSnapping (void)
void mpLib_DrawMatchingLines (int value, int flag, GXColor color)
void mpLib_80059554 (void)
void mpLib_80059E60 (void)
void mpLib_DrawCrosses (s16 *idx, int len, GXColor arg2)
void mpLib_DrawSpecialPoints (void)
void mpLib_8005A2DC (void)
void mpLib_DrawZones (void)
 blast zones, camera bounds, etc

Variables

struct mpLib_803BF248_t_x4 mpLib_803BD3D8
static struct mpLib_803BF248_t_x4 mpLib_803BD430
static struct mpLib_803BF248_t_x4 mpLib_803BD488
static struct mpLib_803BF248_t_x4 mpLib_803BD4E0
static struct mpLib_803BF248_t_x4 mpLib_803BD538
static struct mpLib_803BF248_t_x4 mpLib_803BD590
static struct mpLib_803BF248_t_x4 mpLib_803BD5E8
static struct mpLib_803BF248_t_x4 mpLib_803BD640
static struct mpLib_803BF248_t_x4 mpLib_803BD698
static struct mpLib_803BF248_t_x4 mpLib_803BD6F0
static struct mpLib_803BF248_t_x4 mpLib_803BD748
static struct mpLib_803BF248_t_x4 mpLib_803BD7A0
static struct mpLib_803BF248_t_x4 mpLib_803BD7F8
static struct mpLib_803BF248_t_x4 mpLib_803BD850
static struct mpLib_803BF248_t_x4 mpLib_803BD8A8
static struct mpLib_803BF248_t_x4 mpLib_803BD900
static struct mpLib_803BF248_t_x4 mpLib_803BD958
static struct mpLib_803BF248_t_x4 mpLib_803BD9B0
static struct mpLib_803BF248_t_x4 mpLib_803BDA08
static struct mpLib_803BF248_t_x4 mpLib_803BDA60
static struct mpLib_803BF248_t_x4 mpLib_803BDAB8
static struct mpLib_803BF248_t_x4 mpLib_803BDB10
static struct mpLib_803BF248_t_x4 mpLib_803BDB68
static struct mpLib_803BF248_t_x4 mpLib_803BDBC0
static struct mpLib_803BF248_t_x4mpLib_803BDC18 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDC68 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDCB8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDD08 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDD58 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDDA8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDDF8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDE48 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDE98 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDEE8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDF38 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDF88 [20]
static struct mpLib_803BF248_t_x4mpLib_803BDFD8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE028 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE078 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE0C8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE118 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE168 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE1B8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE208 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE258 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE2A8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE2F8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE348 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE398 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE3E8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE438 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE488 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE4D8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE528 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE578 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE5C8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE618 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE668 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE6B8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE708 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE758 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE7A8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE7F8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE848 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE898 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE8E8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE938 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE988 [20]
static struct mpLib_803BF248_t_x4mpLib_803BE9D8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEA28 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEA78 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEAC8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEB18 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEB68 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEBB8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEC08 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEC58 [20]
static struct mpLib_803BF248_t_x4mpLib_803BECA8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BECF8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BED48 [20]
static struct mpLib_803BF248_t_x4mpLib_803BED98 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEDE8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEE38 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEE88 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEED8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEF28 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEF78 [20]
static struct mpLib_803BF248_t_x4mpLib_803BEFC8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF018 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF068 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF0B8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF108 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF158 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF1A8 [20]
static struct mpLib_803BF248_t_x4mpLib_803BF1F8 [20]
static struct mpLib_803BF248_t mpLib_803BF248 [0x47]
 clang-format off
Vec2 mpLib_803BF718 [2] = { { -1.0F, -400.0F }, { 1.0F, -400.0F } }
 clang-format on
MapLine mpLib_803BF728 = { 0, 1, -1, -1, -1, -1, 1, 0 }
MapJoint mpLib_803BF738
MapCollData mpLib_803BF760
static HSD_Chan mpLib_803BF540
static const GXColor mpLib_FloorColor = { 0xC0, 0xC0, 0xC0, 0xFF }
static const GXColor mpLib_CeilingColor = { 0xC0, 0x80, 0x80, 0xFF }
static const GXColor mpLib_RightWallColor = { 0x80, 0xC0, 0x80, 0xFF }
static const GXColor mpLib_LeftWallColor = { 0x80, 0x80, 0xC0, 0xFF }
static const GXColor mpLib_DynamicFloorColor = { 0x60, 0x60, 0x60, 0xFF }
static const GXColor mpLib_DynamicCeilingColor = { 0x60, 0x40, 0x40, 0xFF }
static const GXColor mpLib_DynamicRightWallColor = { 0x40, 0x60, 0x40, 0xFF }
static const GXColor mpLib_DynamicLeftWallColor = { 0x40, 0x40, 0x60, 0xFF }
static const GXColor mpLib_804D80F0 = { 0xFF, 0x40, 0x40, 0xFF }
static const GXColor mpLib_804D80F4 = { 0x40, 0x40, 0xFF, 0xFF }
static const GXColor mpLib_804D80F8 = { 0xFF, 0x40, 0xFF, 0xFF }
static const GXColor mpLib_804D80FC = { 0x80, 0x80, 0x80, 0xFF }
static const GXColor mpLib_804D8100 = { 0x80, 0x80, 0x80, 0xFF }
static s16 mpLib_ItemSpawnVtxIds [0x15]
static s16 mpLib_EnemySpawnVtxIds [0x50]
static s16 mpLib_TrophySpawnVtxIds [0x19]
static s16 mpLib_ExitVtxIds [0x2E]
static s16 mpLib_SpawnVtxIds [4] = { 0, 1, 2, 3 }
static s16 mpLib_RespawnVtxIds [4] = { 4, 5, 6, 7 }
static const GXColor mpLib_804D8128 = { 0x7D, 0x7D, 0xFF, 0xFF }
static const GXColor mpLib_804D812C = { 0x7D, 0xFF, 0x80, 0xFF }
static const GXColor mpLib_804D8130 = { 0xFF, 0xFF, 0x80, 0xFF }
static const GXColor mpLib_804D8134 = { 0xFF, 0x40, 0x40, 0xFF }
static const GXColor mpLib_804D8138 = { 0xFF, 0x40, 0xC0, 0xFF }
static const GXColor mpLib_804D813C = { 0xFF, 0xFF, 0xFF, 0xFF }
static const GXColor mpLib_804D8140 = { 0xFF, 0xFF, 0xC0, 0xFF }
static const GXColor mpLib_804D8144 = { 0xFF, 0xFF, 0xFF, 0x80 }
static const GXColor mpLib_804D8148 = { 0x80, 0xC0, 0xC0, 0xFF }
static const GXColor mpLib_804D814C = { 0xC0, 0xFF, 0xFF, 0x80 }
static const GXColor mpLib_804D8150 = { 0x40, 0x40, 0xFF, 0x00 }

Macro Definition Documentation

◆ LINEID_CHECK

#define LINEID_CHECK ( line,
line_id )
Value:
do { \
if ((line_id) == -1 || (line_id) >= mpLib_804D64B4->line_count) \
HSD_ASSERTREPORT(line, 0, "%s:%d:not found lineID=%d\n", \
__FILE__, line, line_id); \
} while (0)
#define __FILE__
Definition ftYs_Init.c:45
static MapCollData * mpLib_804D64B4
Definition mplib.static.h:22

Function Documentation

◆ mpLib_8004D164()

MapCollData * mpLib_8004D164 ( void )

◆ mpGetGroundCollVtx()

CollVtx * mpGetGroundCollVtx ( void )

◆ mpGetGroundCollLine()

CollLine * mpGetGroundCollLine ( void )

◆ mpGetGroundCollJoint()

CollJoint * mpGetGroundCollJoint ( void )

◆ mpPruneEmptyLines()

void mpPruneEmptyLines ( MapCollData * coll_data)

◆ mpLibLoad()

void mpLibLoad ( MapCollData * coll_data)

◆ mpLineGetNext()

int mpLineGetNext ( int line_id)

◆ mpLineGetPrev()

int mpLineGetPrev ( int line_id)

◆ mpRemap2d()

void mpRemap2d ( float * x_out,
float * y_out,
float ax0,
float ay0,
float ax1,
float ay1,
float bx0,
float by0,
float bx1,
float by1,
float px,
float py )
static

remap point p from line a to line b

◆ mpLib_8004DD90_Floor()

int mpLib_8004DD90_Floor ( int line_id,
Vec3 * vec,
float * y_out,
u32 * flags_out,
Vec3 * normal_out )

◆ mpLib_8004E090_Ceiling()

int mpLib_8004E090_Ceiling ( int line_id,
Vec3 * vec,
float * y_out,
u32 * flags_out,
Vec3 * normal_out )

◆ mpLib_8004E398_LeftWall()

int mpLib_8004E398_LeftWall ( int line_id,
Vec3 * vec,
float * x_out,
u32 * flags_out,
Vec3 * normal_out )

◆ mpLib_8004E684_RightWall()

int mpLib_8004E684_RightWall ( int line_id,
Vec3 * vec,
float * x_out,
u32 * flags_out,
Vec3 * normal_out )

◆ mpLineIntersection()

bool mpLineIntersection ( float a0x,
float a0y,
float a1x,
float a1y,
float b0x,
float b0y,
float b1x,
float b1y,
float * int_x,
float * int_y )

direction dependent line intersection

◆ mpLineIntersectionH()

bool mpLineIntersectionH ( float * int_x,
float * int_y,
float a0x,
float a0y,
float a1x,
float b0x,
float b0y,
float b1x,
float b1y )

line intersection between a and b, where a is a horizontal line

◆ mpLib_8004ED5C()

void mpLib_8004ED5C ( int line_id,
float * x0_out,
float * y0_out,
float * x1_out,
float * y1_out )

◆ mpCheckFloor()

bool mpCheckFloor ( float ax,
float ay,
float bx,
float by,
float y_offset,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int line_id_skip,
int joint_id_skip,
int joint_id_only,
bool(* cb )(Fighter_GObj *, int),
Fighter_GObj * gobj )

◆ mpCheckFloorRemap()

bool mpCheckFloorRemap ( float ax,
float ay,
float bx,
float by,
float y_offset,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int line_id_skip,
int joint_id_skip,
int joint_id_only,
bool(* cb )(Fighter_GObj *, int),
Fighter_GObj * gobj )

◆ mpCheckCeiling()

bool mpCheckCeiling ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpCheckCeilingRemap()

bool mpCheckCeilingRemap ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpLineIntersectionV()

bool mpLineIntersectionV ( float * int_x,
float * int_y,
float a0x,
float a0y,
float a1y,
float b0x,
float b0y,
float b1x,
float b1y )

line intersection between a and b, where a is a vertical line

◆ mpCheckLeftWall()

bool mpCheckLeftWall ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpCheckLeftWallRemap()

bool mpCheckLeftWallRemap ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpCheckRightWall()

bool mpCheckRightWall ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpCheckRightWallRemap()

bool mpCheckRightWallRemap ( float ax,
float ay,
float bx,
float by,
Vec3 * vec_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only )

◆ mpLib_800511A4_RightWall()

bool mpLib_800511A4_RightWall ( float ax,
float ay,
float bx,
float by,
float cx,
float cy,
float dx,
float dy,
int * line_id_out,
int joint_id_skip,
int joint_id_only )

◆ mpLib_800515A0_LeftWall()

bool mpLib_800515A0_LeftWall ( float a0x,
float a0y,
float a1x,
float a1y,
float b0x,
float b0y,
float b1x,
float b1y,
int * line_id_out,
int joint_id_skip,
int joint_id_only )

◆ mpLib_8005199C_Floor()

int mpLib_8005199C_Floor ( Vec3 * vec,
int joint_id_skip,
int joint_id_only )

◆ mpLib_80051BA8_Floor()

int mpLib_80051BA8_Floor ( Vec3 * out_vec,
int line_id_skip,
int joint_id_skip,
int joint_id_only,
int dir,
float left,
float bottom,
float right,
float top )

◆ mpCheckMultiple()

bool mpCheckMultiple ( float x0,
float y0,
float x1,
float y1,
Vec3 * pos_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
u32 checks,
int joint_id_skip,
int joint_id_only )

◆ mpCheckAllRemap()

bool mpCheckAllRemap ( Vec3 * pos_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only,
float x0,
float y0,
float x1,
float y1 )

◆ mpCheckAll()

bool mpCheckAll ( Vec3 * pos_out,
int * line_id_out,
u32 * flags_out,
Vec3 * normal_out,
int joint_id_skip,
int joint_id_only,
float x0,
float y0,
float x1,
float y1 )

◆ mpLineNextNonFloor()

int mpLineNextNonFloor ( int line_id)

◆ mpLinePrevNonFloor()

int mpLinePrevNonFloor ( int line_id)

◆ mpLinePrevNonCeiling()

int mpLinePrevNonCeiling ( int line_id)

◆ mpLineNextNonCeiling()

int mpLineNextNonCeiling ( int line_id)

◆ mpLineNextNonLeftWall()

int mpLineNextNonLeftWall ( int line_id)

◆ mpLinePrevNonLeftWall()

int mpLinePrevNonLeftWall ( int line_id)

◆ mpLinePrevNonRightWall()

int mpLinePrevNonRightWall ( int line_id)

◆ mpLineNextNonRightWall()

int mpLineNextNonRightWall ( int line_id)

◆ mpLib_80053394_Floor()

int mpLib_80053394_Floor ( int line_id)

◆ mpLib_80053448_Floor()

int mpLib_80053448_Floor ( int line_id)

◆ mpLib_800534FC_Floor()

int mpLib_800534FC_Floor ( int line_id)

◆ mpLib_800536CC_Floor()

int mpLib_800536CC_Floor ( int line_id)

◆ mpLib_8005389C_Ceiling()

int mpLib_8005389C_Ceiling ( int line_id)

◆ mpLib_80053950_Ceiling()

int mpLib_80053950_Ceiling ( int line_id)

◆ mpLib_80053A04_Ceiling()

int mpLib_80053A04_Ceiling ( int line_id)

◆ mpLib_80053BD4_Ceiling()

int mpLib_80053BD4_Ceiling ( int line_id)

◆ mpLib_80053DA4_Floor()

void mpLib_80053DA4_Floor ( int line_id,
Vec3 * pos_out )

◆ mpLib_80053ECC_Floor()

void mpLib_80053ECC_Floor ( int line_id,
Vec * vec )

◆ mpFloorGetRight()

void mpFloorGetRight ( int line_id,
Vec3 * pos_out )

◆ mpFloorGetLeft()

void mpFloorGetLeft ( int line_id,
Vec3 * pos_out )

◆ mpCeilingGetRight()

void mpCeilingGetRight ( int line_id,
Vec3 * pos_out )

◆ mpCeilingGetLeft()

void mpCeilingGetLeft ( int line_id,
Vec3 * pos_out )

◆ mpLeftWallGetTop()

void mpLeftWallGetTop ( int line_id,
Vec3 * pos_out )

◆ mpLeftWallGetBottom()

void mpLeftWallGetBottom ( int line_id,
Vec3 * pos_out )

◆ mpRightWallGetTop()

void mpRightWallGetTop ( int line_id,
Vec3 * pos_out )

◆ mpRightWallGetBottom()

void mpRightWallGetBottom ( int line_id,
Vec3 * pos_out )

◆ mpLineGetV1Pos()

void mpLineGetV1Pos ( int line_id,
Vec3 * pos_out )

◆ mpLineGetV0Pos()

void mpLineGetV0Pos ( int line_id,
Vec3 * pos_out )

◆ mpLineGetKind()

enum_t mpLineGetKind ( int line_id)

◆ mpLineGetFlags()

u32 mpLineGetFlags ( int line_id)

◆ mpLib_80054D68()

void mpLib_80054D68 ( int line_id,
u32 flags )

◆ mpLineGetNormal()

Vec3 * mpLineGetNormal ( int line_id,
Vec3 * normal_out )

◆ mpLib_80054ED8()

bool mpLib_80054ED8 ( int line_id)

◆ mpLinesConnected()

bool mpLinesConnected ( int start_id,
int target_id )

◆ jobj_child()

HSD_JObj * jobj_child ( HSD_JObj * jobj)
inlinestatic

◆ jobj_next()

HSD_JObj * jobj_next ( HSD_JObj * jobj)
inlinestatic

◆ jobj_parent()

HSD_JObj * jobj_parent ( HSD_JObj * jobj)
inlinestatic

◆ mpLib_800552B0()

void mpLib_800552B0 ( int joint_id,
HSD_JObj * jobj,
int z )

what even is this lol

◆ mpJointHide()

void mpJointHide ( int joint_id)

◆ mpJointUnhide()

void mpJointUnhide ( int joint_id)

◆ mpJointUpdateDynamics()

void mpJointUpdateDynamics ( int joint_id)

◆ mpLib_80055E24()

void mpLib_80055E24 ( int joint_id)

◆ mpLib_80055E9C()

void mpLib_80055E9C ( int joint_id)

◆ mpJointUpdateBounding()

void mpJointUpdateBounding ( int joint_id)

◆ mpLib_8005667C()

void mpLib_8005667C ( int joint_id)

◆ mpVtxGetPos()

void mpVtxGetPos ( int vtx_id,
float * x_out,
float * y_out )

◆ mpVtxSetPos()

void mpVtxSetPos ( int vtx_id,
float x,
float y )

◆ mpLineSetPos()

void mpLineSetPos ( int line_id,
float x0,
float y0,
float x1,
float y1 )

◆ mpLib_80056758()

void mpLib_80056758 ( int line_id,
float x0,
float y0,
float x1,
float y1 )

◆ mpGetSpeed()

bool mpGetSpeed ( int line_id,
Vec3 * pos,
Vec3 * speed )

◆ mpLib_800569EC()

float mpLib_800569EC ( u32 unk)

◆ mpLib_80056A1C()

int * mpLib_80056A1C ( int arg0,
int * arg1 )

◆ mpLib_80056A54()

int mpLib_80056A54 ( int arg0,
int * arg1 )

◆ mpLib_80056A8C()

int * mpLib_80056A8C ( int arg0,
int * arg1 )

◆ mpLib_80056AC4()

int mpLib_80056AC4 ( int arg0,
int * arg1 )

◆ mpLib_80056AFC()

int * mpLib_80056AFC ( int arg0,
int * arg1 )

◆ mpLib_80056B34()

int mpLib_80056B34 ( int arg0,
int * arg1 )

◆ mpJointFromLine()

int mpJointFromLine ( int line_id)

◆ mpLib_80056C54()

bool mpLib_80056C54 ( int line_id,
Vec3 * pos,
int * line_id_out,
Vec3 * vec_out,
u32 * flags_out,
Vec3 * normal_out,
f32 var_f25,
f32 arg7 )

◆ mpLib_80057424()

void mpLib_80057424 ( int joint_id)

◆ mpLib_80057528()

void mpLib_80057528 ( int line_id)

◆ mpLib_800575B0()

void mpLib_800575B0 ( int line_id)

◆ mpJointListAdd()

void mpJointListAdd ( int joint_id)

◆ mpJointListUnlink()

void mpJointListUnlink ( CollJoint * arg0)

◆ mpLib_80057BC0()

void mpLib_80057BC0 ( int joint_id)

◆ mpLib_80057FDC()

void mpLib_80057FDC ( int joint_id)

◆ mpLib_80058044()

void mpLib_80058044 ( int joint_id)

◆ mpJointSetB10()

void mpJointSetB10 ( int joint_id)

◆ mpJointSetCb1()

void mpJointSetCb1 ( int joint_id,
void * obj,
mpLib_Callback cb )

◆ mpJointClearCb1()

void mpJointClearCb1 ( int joint_id)

◆ mpJointGetCb1()

void mpJointGetCb1 ( int joint_id,
mpLib_Callback * arg1,
Ground ** arg2 )

◆ mpLib_8005811C()

void mpLib_8005811C ( CollData * coll,
int ledge_id )

◆ mpJointSetCb2()

void mpJointSetCb2 ( int joint_id,
Ground * arg1,
mpLib_Callback arg2 )

◆ mpJointGetCb2()

void mpJointGetCb2 ( int joint_id,
mpLib_Callback * cb,
Ground ** gr )

◆ mpLib_800581DC()

void mpLib_800581DC ( int joint_id0,
int joint_id1 )

◆ mpLib_80058560()

void mpLib_80058560 ( void )

◆ mpLib_80058614_Floor()

void mpLib_80058614_Floor ( void )

◆ mpLib_800587FC()

void mpLib_800587FC ( HSD_GObj * gobj)

◆ mpLib_80058820()

void mpLib_80058820 ( void )

◆ mpCheckedBounding()

bool mpCheckedBounding ( void )

◆ mpBoundingCheck()

void mpBoundingCheck ( float left,
float bottom,
float right,
float top )

takes a bounding box and checks each joint to see if they're within range if they are outside the bounding box, they are marked as too far

◆ mpBoundingCheck2()

void mpBoundingCheck2 ( float x1,
float y1,
float x2,
float y2 )

◆ mpBoundingCheck3()

void mpBoundingCheck3 ( float x0,
float y0,
float x1,
float y1,
float x2,
float y2,
float x3,
float y3 )

◆ mpUncheckBounding()

void mpUncheckBounding ( void )

◆ mpLib_SetupDraw()

void mpLib_SetupDraw ( GXColor color)

◆ mpLib_DrawEcbs()

void mpLib_DrawEcbs ( CollData * cd)

◆ mpLib_DrawSnapping()

void mpLib_DrawSnapping ( void )

◆ mpLib_DrawMatchingLines()

void mpLib_DrawMatchingLines ( int value,
int flag,
GXColor color )

◆ mpLib_80059554()

void mpLib_80059554 ( void )

◆ mpLib_80059E60()

void mpLib_80059E60 ( void )

◆ mpLib_DrawCrosses()

void mpLib_DrawCrosses ( s16 * idx,
int len,
GXColor arg2 )

◆ mpLib_DrawSpecialPoints()

void mpLib_DrawSpecialPoints ( void )

◆ mpLib_8005A2DC()

void mpLib_8005A2DC ( void )

◆ mpLib_DrawZones()

void mpLib_DrawZones ( void )

blast zones, camera bounds, etc

Variable Documentation

◆ mpLib_803BD3D8

struct mpLib_803BF248_t_x4 mpLib_803BD3D8
Initial value:
= {
1.0F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BD430

struct mpLib_803BF248_t_x4 mpLib_803BD430
static
Initial value:
= {
1.0F, { 0x161, 0x161, 0x161, 0x161 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x036, 0x037, 0x038, 0x039 },
{ 1, -1, 0 },
}

◆ mpLib_803BD488

struct mpLib_803BF248_t_x4 mpLib_803BD488
static
Initial value:
= {
1.5F, { 0x152, 0x152, 0x152, 0x152 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x01D, 0x01E, 0x01F, 0x020 },
{ 1, -1, 0 },
}

◆ mpLib_803BD4E0

struct mpLib_803BF248_t_x4 mpLib_803BD4E0
static
Initial value:
= {
1.0F, { 0x155, 0x155, 0x155, 0x155 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x022, 0x023, 0x024, 0x025 },
{ 1, -1, 0 },
}

◆ mpLib_803BD538

struct mpLib_803BF248_t_x4 mpLib_803BD538
static
Initial value:
= {
1.0F, { 0x16D, 0x16D, 0x16D, 0x16D },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x00E, 0x00F, 0x010, 0x011 },
{ 0, -1, 0 },
}

◆ mpLib_803BD590

struct mpLib_803BF248_t_x4 mpLib_803BD590
static
Initial value:
= {
1.0F, { 0x15B, 0x15B, 0x15B, 0x15B },
{ 1, -1, 0 }, { 0x04B, 0x04B, 0x04C, 0x04C },
{ 1, -1, 0 }, { 0x02C, 0x02D, 0x02E, 0x02F },
{ 1, -1, 1 },
}

◆ mpLib_803BD5E8

struct mpLib_803BF248_t_x4 mpLib_803BD5E8
static
Initial value:
= {
1.0F, { 0x158, 0x158, 0x158, 0x158 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x027, 0x028, 0x029, 0x02A },
{ 1, -1, 0 },
}

◆ mpLib_803BD640

struct mpLib_803BF248_t_x4 mpLib_803BD640
static
Initial value:
= {
1.0F, { 0x16A, 0x16A, 0x16A, 0x16A },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x03B, 0x03C, 0x03D, 0x03E },
{ 1, -1, 0 },
}

◆ mpLib_803BD698

struct mpLib_803BF248_t_x4 mpLib_803BD698
static
Initial value:
= {
1.0F, { 0x15E, 0x15E, 0x15E, 0x15E },
{ 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x031, 0x032, 0x033, 0x034 },
{ 0, -1, 0 },
}

◆ mpLib_803BD6F0

struct mpLib_803BF248_t_x4 mpLib_803BD6F0
static
Initial value:
= {
1.0F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BD748

struct mpLib_803BF248_t_x4 mpLib_803BD748
static
Initial value:
= {
1.0F, { 0x14F, 0x14F, 0x14F, 0x14F },
{ 1, -1, 0 }, { 0x20E, 0x20E, 0x20E, 0x20E },
{ 0, -1, 0 }, { 0x018, 0x019, 0x01A, 0x01B },
{ 1, -1, 0 },
}

◆ mpLib_803BD7A0

struct mpLib_803BF248_t_x4 mpLib_803BD7A0
static
Initial value:
= {
1.0F,
{ 0x14F, 0x14F, 0x14F, 0x14F },
{ 1, 0x00007537, 0 },
{ 0x20E, 0x20E, 0x20E, 0x20E },
{ 0, 0x00007538, 0 },
{ 0x018, 0x019, 0x01A, 0x01B },
{ 1, 0x0000753B, 0 },
}

◆ mpLib_803BD7F8

struct mpLib_803BF248_t_x4 mpLib_803BD7F8
static
Initial value:
= {
1.0F,
{ 0x14F, 0x14F, 0x14F, 0x14F },
{ 1, 0x00007539, 0 },
{ 0x20E, 0x20E, 0x20E, 0x20E },
{ 0, 0x00007533, 0 },
{ 0x018, 0x019, 0x01A, 0x01B },
{ 1, 0x0000753A, 0 },
}

◆ mpLib_803BD850

struct mpLib_803BF248_t_x4 mpLib_803BD850
static
Initial value:
= {
1.0F,
{ 0x14F, 0x14F, 0x14F, 0x14F },
{ 1, 0x0000754A, 0 },
{ 0x20E, 0x20E, 0x20E, 0x20E },
{ 0, 0x00007539, 0 },
{ 0x018, 0x019, 0x01A, 0x01B },
{ 1, -1, 0 },
}

◆ mpLib_803BD8A8

struct mpLib_803BF248_t_x4 mpLib_803BD8A8
static
Initial value:
= {
1.0F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BD900

struct mpLib_803BF248_t_x4 mpLib_803BD900
static
Initial value:
= {
0.1F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BD958

struct mpLib_803BF248_t_x4 mpLib_803BD958
static
Initial value:
= {
0.9F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BD9B0

struct mpLib_803BF248_t_x4 mpLib_803BD9B0
static
Initial value:
= {
1.0F, { 0x14C, 0x14C, 0x14C, 0x14C },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x013, 0x014, 0x015, 0x016 },
{ 1, -1, 0 },
}

◆ mpLib_803BDA08

struct mpLib_803BF248_t_x4 mpLib_803BDA08
static
Initial value:
= {
1.0F,
{ 0x14C, 0x14C, 0x14C, 0x14C },
{ 1, 0x00007531, 0 },
{ -1, -1, -1, -1 },
{ 0, 0x00007532, 0 },
{ 0x013, 0x014, 0x015, 0x016 },
{ 1, 0x00007533, 0 },
}

◆ mpLib_803BDA60

struct mpLib_803BF248_t_x4 mpLib_803BDA60
static
Initial value:
= {
0.2F, { 0x164, 0x164, 0x164, 0x164 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x036, 0x037, 0x038, 0x039 },
{ 1, -1, 0 },
}

◆ mpLib_803BDAB8

struct mpLib_803BF248_t_x4 mpLib_803BDAB8
static
Initial value:
= {
1.0F, { 0x170, 0x170, 0x170, 0x170 },
{ 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x040, 0x041, 0x042, 0x043 },
{ 0, -1, 0 },
}

◆ mpLib_803BDB10

struct mpLib_803BF248_t_x4 mpLib_803BDB10
static
Initial value:
= {
0.1F, { 0x15E, 0x15E, 0x15E, 0x15E },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x031, 0x032, 0x033, 0x034 },
{ 1, -1, 0 },
}

◆ mpLib_803BDB68

struct mpLib_803BF248_t_x4 mpLib_803BDB68
static
Initial value:
= {
1.0F, { 0x167, 0x167, 0x167, 0x167 },
{ 1, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { 0x03B, 0x03C, 0x03D, 0x03E },
{ 1, -1, 0 },
}

◆ mpLib_803BDBC0

struct mpLib_803BF248_t_x4 mpLib_803BDBC0
static
Initial value:
= {
1.0F, { -1, -1, -1, -1 }, { 0, -1, 0 }, { -1, -1, -1, -1 },
{ 0, -1, 0 }, { -1, -1, -1, -1 }, { 0, -1, 0 },
}

◆ mpLib_803BDC18

struct mpLib_803BF248_t_x4* mpLib_803BDC18[20]
static
Initial value:
= {
}
struct mpLib_803BF248_t_x4 mpLib_803BD3D8
Definition mplib.c:72
static struct mpLib_803BF248_t_x4 mpLib_803BDBC0
Definition mplib.c:212
static struct mpLib_803BF248_t_x4 mpLib_803BD640
Definition mplib.c:112
static struct mpLib_803BF248_t_x4 mpLib_803BD748
Definition mplib.c:128
static struct mpLib_803BF248_t_x4 mpLib_803BD6F0
Definition mplib.c:124
static struct mpLib_803BF248_t_x4 mpLib_803BD4E0
Definition mplib.c:88
static struct mpLib_803BF248_t_x4 mpLib_803BDB68
Definition mplib.c:206
static struct mpLib_803BF248_t_x4 mpLib_803BD538
Definition mplib.c:94
static struct mpLib_803BF248_t_x4 mpLib_803BD9B0
Definition mplib.c:173
static struct mpLib_803BF248_t_x4 mpLib_803BD590
Definition mplib.c:100
static struct mpLib_803BF248_t_x4 mpLib_803BD430
Definition mplib.c:76
static struct mpLib_803BF248_t_x4 mpLib_803BDB10
Definition mplib.c:200
static struct mpLib_803BF248_t_x4 mpLib_803BD698
Definition mplib.c:118
static struct mpLib_803BF248_t_x4 mpLib_803BD900
Definition mplib.c:165
static struct mpLib_803BF248_t_x4 mpLib_803BD8A8
Definition mplib.c:161
static struct mpLib_803BF248_t_x4 mpLib_803BD488
Definition mplib.c:82
static struct mpLib_803BF248_t_x4 mpLib_803BDA60
Definition mplib.c:188
static struct mpLib_803BF248_t_x4 mpLib_803BD958
Definition mplib.c:169
static struct mpLib_803BF248_t_x4 mpLib_803BD5E8
Definition mplib.c:106
static struct mpLib_803BF248_t_x4 mpLib_803BDAB8
Definition mplib.c:194

◆ mpLib_803BDC68

◆ mpLib_803BDCB8

◆ mpLib_803BDD08

◆ mpLib_803BDD58

◆ mpLib_803BDDA8

◆ mpLib_803BDDF8

◆ mpLib_803BDE48

◆ mpLib_803BDE98

◆ mpLib_803BDEE8

◆ mpLib_803BDF38

◆ mpLib_803BDF88

◆ mpLib_803BDFD8

◆ mpLib_803BE028

◆ mpLib_803BE078

◆ mpLib_803BE0C8

◆ mpLib_803BE118

◆ mpLib_803BE168

◆ mpLib_803BE1B8

◆ mpLib_803BE208

◆ mpLib_803BE258

◆ mpLib_803BE2A8

◆ mpLib_803BE2F8

◆ mpLib_803BE348

◆ mpLib_803BE398

◆ mpLib_803BE3E8

◆ mpLib_803BE438

◆ mpLib_803BE488

◆ mpLib_803BE4D8

◆ mpLib_803BE528

◆ mpLib_803BE578

◆ mpLib_803BE5C8

◆ mpLib_803BE618

◆ mpLib_803BE668

◆ mpLib_803BE6B8

◆ mpLib_803BE708

◆ mpLib_803BE758

◆ mpLib_803BE7A8

◆ mpLib_803BE7F8

◆ mpLib_803BE848

◆ mpLib_803BE898

◆ mpLib_803BE8E8

◆ mpLib_803BE938

◆ mpLib_803BE988

◆ mpLib_803BE9D8

◆ mpLib_803BEA28

◆ mpLib_803BEA78

◆ mpLib_803BEAC8

◆ mpLib_803BEB18

◆ mpLib_803BEB68

◆ mpLib_803BEBB8

◆ mpLib_803BEC08

◆ mpLib_803BEC58

◆ mpLib_803BECA8

◆ mpLib_803BECF8

◆ mpLib_803BED48

◆ mpLib_803BED98

◆ mpLib_803BEDE8

◆ mpLib_803BEE38

◆ mpLib_803BEE88

◆ mpLib_803BEED8

◆ mpLib_803BEF28

◆ mpLib_803BEF78

◆ mpLib_803BEFC8

◆ mpLib_803BF018

◆ mpLib_803BF068

◆ mpLib_803BF0B8

◆ mpLib_803BF108

◆ mpLib_803BF158

◆ mpLib_803BF1A8

◆ mpLib_803BF1F8

◆ mpLib_803BF248

struct mpLib_803BF248_t mpLib_803BF248[0x47]
static

clang-format off

◆ mpLib_803BF718

Vec2 mpLib_803BF718 = { { -1.0F, -400.0F }, { 1.0F, -400.0F } }

clang-format on

◆ mpLib_803BF728

MapLine mpLib_803BF728 = { 0, 1, -1, -1, -1, -1, 1, 0 }

◆ mpLib_803BF738

MapJoint mpLib_803BF738
Initial value:
= {
1, 0, 0, 0, 0, -9.0F, -408.0F, 9.0F, -392.0F, 2,
}

◆ mpLib_803BF760

MapCollData mpLib_803BF760
Initial value:
= {
2,
0x00000001,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0x00000001,
0x00000000,
}
Vec2 mpLib_803BF718[2]
clang-format on
Definition mplib.c:4768
MapJoint mpLib_803BF738
Definition mplib.c:4770
MapLine mpLib_803BF728
Definition mplib.c:4769

◆ mpLib_803BF540

HSD_Chan mpLib_803BF540
static
Initial value:
= {
GX_COLOR0A0,
0,
{ 0, 0, 0, 0 },
{ 0xFF, 0xA0, 0x30, 0xFF },
0,
GX_SRC_REG,
GX_SRC_REG,
GX_LIGHT_NULL,
GX_DF_CLAMP,
GX_AF_NONE,
}
#define NULL
Definition stddef.h:19

◆ mpLib_FloorColor

const GXColor mpLib_FloorColor = { 0xC0, 0xC0, 0xC0, 0xFF }
static

◆ mpLib_CeilingColor

const GXColor mpLib_CeilingColor = { 0xC0, 0x80, 0x80, 0xFF }
static

◆ mpLib_RightWallColor

const GXColor mpLib_RightWallColor = { 0x80, 0xC0, 0x80, 0xFF }
static

◆ mpLib_LeftWallColor

const GXColor mpLib_LeftWallColor = { 0x80, 0x80, 0xC0, 0xFF }
static

◆ mpLib_DynamicFloorColor

const GXColor mpLib_DynamicFloorColor = { 0x60, 0x60, 0x60, 0xFF }
static

◆ mpLib_DynamicCeilingColor

const GXColor mpLib_DynamicCeilingColor = { 0x60, 0x40, 0x40, 0xFF }
static

◆ mpLib_DynamicRightWallColor

const GXColor mpLib_DynamicRightWallColor = { 0x40, 0x60, 0x40, 0xFF }
static

◆ mpLib_DynamicLeftWallColor

const GXColor mpLib_DynamicLeftWallColor = { 0x40, 0x40, 0x60, 0xFF }
static

◆ mpLib_804D80F0

const GXColor mpLib_804D80F0 = { 0xFF, 0x40, 0x40, 0xFF }
static

◆ mpLib_804D80F4

const GXColor mpLib_804D80F4 = { 0x40, 0x40, 0xFF, 0xFF }
static

◆ mpLib_804D80F8

const GXColor mpLib_804D80F8 = { 0xFF, 0x40, 0xFF, 0xFF }
static

◆ mpLib_804D80FC

const GXColor mpLib_804D80FC = { 0x80, 0x80, 0x80, 0xFF }
static

◆ mpLib_804D8100

const GXColor mpLib_804D8100 = { 0x80, 0x80, 0x80, 0xFF }
static

◆ mpLib_ItemSpawnVtxIds

s16 mpLib_ItemSpawnVtxIds[0x15]
static
Initial value:
= {
0x7F, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93,
}

◆ mpLib_EnemySpawnVtxIds

s16 mpLib_EnemySpawnVtxIds[0x50]
static
Initial value:
= {
0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B,
0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43,
0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F,
0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x5B,
0x5C, 0x5D, 0x5E, 0x5F, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F,
}

◆ mpLib_TrophySpawnVtxIds

s16 mpLib_TrophySpawnVtxIds[0x19]
static
Initial value:
= {
0xDC, 0xDD, 0xDE, 0xDF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4,
0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED,
0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4,
}

◆ mpLib_ExitVtxIds

s16 mpLib_ExitVtxIds[0x2E]
static
Initial value:
= {
0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4,
0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0,
0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC,
0xBD, 0xBE, 0xBF, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6
}

◆ mpLib_SpawnVtxIds

s16 mpLib_SpawnVtxIds[4] = { 0, 1, 2, 3 }
static

◆ mpLib_RespawnVtxIds

s16 mpLib_RespawnVtxIds[4] = { 4, 5, 6, 7 }
static

◆ mpLib_804D8128

const GXColor mpLib_804D8128 = { 0x7D, 0x7D, 0xFF, 0xFF }
static

◆ mpLib_804D812C

const GXColor mpLib_804D812C = { 0x7D, 0xFF, 0x80, 0xFF }
static

◆ mpLib_804D8130

const GXColor mpLib_804D8130 = { 0xFF, 0xFF, 0x80, 0xFF }
static

◆ mpLib_804D8134

const GXColor mpLib_804D8134 = { 0xFF, 0x40, 0x40, 0xFF }
static

◆ mpLib_804D8138

const GXColor mpLib_804D8138 = { 0xFF, 0x40, 0xC0, 0xFF }
static

◆ mpLib_804D813C

const GXColor mpLib_804D813C = { 0xFF, 0xFF, 0xFF, 0xFF }
static

◆ mpLib_804D8140

const GXColor mpLib_804D8140 = { 0xFF, 0xFF, 0xC0, 0xFF }
static

◆ mpLib_804D8144

const GXColor mpLib_804D8144 = { 0xFF, 0xFF, 0xFF, 0x80 }
static

◆ mpLib_804D8148

const GXColor mpLib_804D8148 = { 0x80, 0xC0, 0xC0, 0xFF }
static

◆ mpLib_804D814C

const GXColor mpLib_804D814C = { 0xC0, 0xFF, 0xFF, 0x80 }
static

◆ mpLib_804D8150

const GXColor mpLib_804D8150 = { 0x40, 0x40, 0xFF, 0x00 }
static