SSBM Decomp
Loading...
Searching...
No Matches
mplib.h
Go to the documentation of this file.
1#ifndef GALE01_04D164
2#define GALE01_04D164
3
4#include <platform.h>
5
6#include "ft/forward.h"
7#include "lb/forward.h"
8
9#include "mp/types.h"
10
11#include <baselib/forward.h>
12
13#include <dolphin/gx/GXStruct.h>
14#include <dolphin/mtx.h>
15
16/* 04D164 */ MapCollData* mpLib_8004D164(void);
17/* 04D16C */ CollVtx* mpGetGroundCollVtx(void);
18/* 04D174 */ CollLine* mpGetGroundCollLine(void);
19/* 04D17C */ CollJoint* mpGetGroundCollJoint(void);
20/* 04D184 */ void mpPruneEmptyLines(MapCollData* coll_data);
21/* 04D288 */ void mpLibLoad(MapCollData* coll_data);
22/* 04DB78 */ int mpLineGetNext(int line_id);
23/* 04DBB4 */ bool mpLib_8004DBB4(int index, Vec3* out);
24/* 04DC04 */ int mpLineGetPrev(int line_id);
25/* 04DD90 */ int mpLib_8004DD90_Floor(int line_id, Vec3*, float* y_out,
26 u32* flags_out, Vec3* normal_out);
27/* 04E090 */ int mpLib_8004E090_Ceiling(int line_id, Vec3*, float* y_out,
28 u32* flags_out, Vec3* normal_out);
29/* 04E398 */ int mpLib_8004E398_LeftWall(int line_id, Vec3*, float* x_out,
30 u32* flags_out, Vec3* normal_out);
31/* 04E684 */ int mpLib_8004E684_RightWall(int line_id, Vec3*, float* x_out,
32 u32* flags_out, Vec3* normal_out);
33/* 04EBF8 */ bool mpLineIntersectionH(float* int_x, float* int_y, float a0x,
34 float a0y, float a1x, float b0x,
35 float b0y, float b1x, float b1y);
36/* 04ED5C */ void mpLib_8004ED5C(int, float*, float*, float*, float*);
37/* 04F008 */ bool mpCheckFloor(float ax, float ay, float bx, float by,
38 float y_offset, Vec3* vec_out, int* line_id_out,
39 u32* flags_out, Vec3* normal_out,
40 int line_id_skip, int joint_id_skip,
41 int joint_id_only, bool (*)(Fighter_GObj*, int),
42 Fighter_GObj*);
43/* 04F400 */ bool mpCheckFloorRemap(float ax, float ay, float bx, float by,
44 float y_offset, Vec3* vec_out,
45 int* line_id_out, u32* flags_out,
46 Vec3* normal_out, int line_id_skip,
47 int joint_id_skip, int joint_id_only,
48 bool (*)(Fighter_GObj*, int),
49 Fighter_GObj*);
50/* 04F8A4 */ bool mpCheckCeiling(float ax, float ay, float bx, float by,
51 Vec3* vec_out, int* line_id_out,
52 u32* flags_out, Vec3* normal_out,
53 int joint_id_skip, int joint_id_only);
54/* 04FC2C */ bool mpCheckCeilingRemap(float ax, float ay, float bx, float by,
55 Vec3* vec_out, int* line_id_out,
56 u32* flags_out, Vec3* normal_out,
57 int joint_id_skip, int joint_id_only);
58/* 050068 */ bool mpLineIntersectionV(float* int_x, float* int_y, float a0x,
59 float a0y, float a1y, float b0x,
60 float b0y, float b1x, float b1y);
61/* 0501CC */ bool mpCheckLeftWall(float ax, float ay, float bx, float by,
62 Vec3* vec_out, int* line_id_out,
63 u32* flags_out, Vec3* normal_out,
64 int joint_id_skip, int joint_id_only);
65/* 05057C */ bool mpCheckLeftWallRemap(float ax, float ay, float bx, float by,
66 Vec3* vec_out, int* line_id_out,
67 u32* flags_out, Vec3* normal_out,
68 int joint_id_skip, int joint_id_only);
69/* 0509B8 */ bool mpCheckRightWall(float ax, float ay, float bx, float by,
70 Vec3* vec_out, int* line_id_out,
71 u32* flags_out, Vec3* normal_out,
72 int joint_id_skip, int joint_id_only);
73/* 050D68 */ bool mpCheckRightWallRemap(float ax, float ay, float bx, float by,
74 Vec3* vec_out, int* line_id_out,
75 u32* flags_out, Vec3* normal_out,
76 int joint_id_skip, int joint_id_only);
77/* 0511A4 */ bool mpLib_800511A4_RightWall(float ax, float ay, float bx,
78 float by, float cx, float cy,
79 float dx, float dy,
80 int* line_id_out, int joint_id_skip,
81 int joint_id_only);
82/* 0515A0 */ bool mpLib_800515A0_LeftWall(float a0x, float a0y, float a1x,
83 float a1y, float b0x, float b0y,
84 float b1x, float b1y,
85 int* line_id_out, int joint_id_skip,
86 int joint_id_only);
87/* 05199C */ int mpLib_8005199C_Floor(Vec3*, int joint_id_skip,
88 int joint_id_only);
89/* 051BA8 */ int mpLib_80051BA8_Floor(Vec3* out_vec, int line_id_skip,
90 int joint_id_skip, int joint_id_only,
91 int dir, float left, float bottom,
92 float right, float top);
93/* 051EC8 */ bool mpCheckMultiple(float x0, float y0, float x1, float y1,
94 Vec3* pos_out, int* line_id_out,
95 u32* flags_out, Vec3* normal_out, u32 checks,
96 int joint_id_skip, int joint_id_only);
97/* 0524DC */ bool mpCheckAllRemap(Vec3* pos_out, int* line_id_out,
98 u32* flags_out, Vec3* normal_out,
99 int joint_id_skip, int joint_id_only,
100 float x0, float y0, float x1, float y1);
101/* 052508 */ bool mpCheckAll(Vec3* pos_out, int* line_id_out, u32* flags_out,
102 Vec3* normal_out, int joint_id_skip,
103 int joint_id_only, float x0, float y0, float x1,
104 float y1);
105/* 052534 */ int mpLineNextNonFloor(int line_id);
106/* 052700 */ int mpLinePrevNonFloor(int line_id);
107/* 0528CC */ int mpLinePrevNonCeiling(int line_id);
108/* 052A98 */ int mpLineNextNonCeiling(int line_id);
109/* 052C64 */ int mpLineNextNonLeftWall(int line_id);
110/* 052E30 */ int mpLinePrevNonLeftWall(int line_id);
111/* 052FFC */ int mpLinePrevNonRightWall(int line_id);
112/* 0531C8 */ int mpLineNextNonRightWall(int line_id);
113/* 053394 */ int mpLib_80053394_Floor(int line_id);
114/* 053448 */ int mpLib_80053448_Floor(int line_id);
115/* 0534FC */ int mpLib_800534FC_Floor(int line_id);
116/* 0536CC */ int mpLib_800536CC_Floor(int line_id);
117/* 05389C */ int mpLib_8005389C_Ceiling(int line_id);
118/* 053950 */ int mpLib_80053950_Ceiling(int line_id);
119/* 053A04 */ int mpLib_80053A04_Ceiling(int line_id);
120/* 053BD4 */ int mpLib_80053BD4_Ceiling(int line_id);
121/* 053DA4 */ void mpLib_80053DA4_Floor(int line_id, Vec3*);
122/* 053ECC */ void mpLib_80053ECC_Floor(int line_id, Vec3*);
123/* 053FF4 */ void mpFloorGetRight(int line_id, Vec3*);
124/* 054158 */ void mpFloorGetLeft(int line_id, Vec3*);
125/* 0542BC */ void mpCeilingGetRight(int line_id, Vec3*);
126/* 054420 */ void mpCeilingGetLeft(int line_id, Vec3*);
127/* 054584 */ void mpLeftWallGetTop(int line_id, Vec3*);
128/* 0546E8 */ void mpLeftWallGetBottom(int line_id, Vec3*);
129/* 05484C */ void mpRightWallGetTop(int line_id, Vec3*);
130/* 0549B0 */ void mpRightWallGetBottom(int line_id, Vec3*);
131/* 054B14 */ void mpLineGetV1Pos(int line_id, Vec3* pos_out);
132/* 054BC0 */ void mpLineGetV0Pos(int line_id, Vec3* pos_out);
133/* 054C6C */ enum_t mpLineGetKind(int line_id);
134/* 054CEC */ u32 mpLineGetFlags(int line_id);
135/* 054D68 */ void mpLib_80054D68(int line_id, u32 flags);
136/* 054DFC */ Vec3* mpLineGetNormal(int line_id, Vec3* normal_out);
137/* 054ED8 */ bool mpLib_80054ED8(int line_id);
138/* 054F68 */ bool mpLinesConnected(int start_id, int target_id);
139/* 0552B0 */ void mpLib_800552B0(int joint_id, HSD_JObj*, int z);
140/* 05541C */ void mpJointHide(int joint_id);
141/* 0557D0 */ void mpJointUnhide(int joint_id);
142/* 055C5C */ void mpJointUpdateDynamics(int joint_id);
143/* 055E24 */ void mpLib_80055E24(int joint_id);
144/* 055E9C */ void mpLib_80055E9C(int joint_id);
145/* 0565DC */ void mpJointUpdateBounding(int joint_id);
146/* 05667C */ void mpLib_8005667C(int joint_id);
147/* 0566D8 */ void mpVtxGetPos(int vtx_id, float* x_out, float* y_out);
148/* 0566F8 */ void mpVtxSetPos(int vtx_id, float x, float y);
149/* 056710 */ void mpLineSetPos(int line_id, float x0, float y0, float x1,
150 float y1);
151/* 056758 */ void mpLib_80056758(int line_id, float x0, float y0, float x1,
152 float y1);
153/* 0567C0 */ bool mpGetSpeed(int line_id, Vec3* pos, Vec3* speed);
154/* 0569EC */ float mpLib_800569EC(u32);
155/* 056A1C */ int* mpLib_80056A1C(int, int*);
156/* 056A54 */ int mpLib_80056A54(int, int*);
157/* 056A8C */ int* mpLib_80056A8C(int, int*);
158/* 056AC4 */ int mpLib_80056AC4(int, int*);
159/* 056AFC */ int* mpLib_80056AFC(int, int*);
160/* 056B34 */ int mpLib_80056B34(int, int*);
161/* 056B6C */ int mpJointFromLine(int line_id);
162/* 056C54 */ bool mpLib_80056C54(int line_id, Vec3* pos, int* line_id_out,
163 Vec3* vec_out, u32* flags_out,
164 Vec3* normal_out, float, float);
165/* 057424 */ void mpLib_80057424(int joint_id);
166/* 057528 */ void mpLib_80057528(int line_id);
167/* 0575B0 */ void mpLib_800575B0(int line_id);
168/* 057638 */ void mpJointListAdd(int joint_id);
169/* 057B4C */ void mpJointListUnlink(CollJoint*);
170/* 057BC0 */ void mpLib_80057BC0(int joint_id);
171/* 057FDC */ void mpLib_80057FDC(int joint_id);
172/* 058044 */ void mpLib_80058044(int joint_id);
173/* 0580AC */ void mpJointSetB10(int joint_id);
174/* 0580C8 */ void mpJointSetCb1(int joint_id, void* user_data,
176/* 0580E0 */ void mpJointClearCb1(int joint_id);
177/* 0580FC */ void mpJointGetCb1(int joint_id, mpLib_JointCollisionCallback* cb,
178 void** user_data);
179/* 05811C */ void mpLib_8005811C(CollData*, int ledge_id);
180/* 0581A4 */ void mpJointSetCb2(int joint_id, void* user_data,
182/* 0581BC */ void mpJointGetCb2(int joint_id, mpLib_JointCollisionCallback* cb,
183 void** user_data);
184/* 0581DC */ void mpLib_800581DC(int joint_id0, int joint_id1);
185/* 058560 */ void mpLib_80058560(void);
186/* 058614 */ void mpLib_80058614_Floor(void);
187/* 0587FC */ void mpLib_800587FC(HSD_GObj*);
188/* 058820 */ void mpLib_80058820(void);
189/* 0588C8 */ bool mpCheckedBounding(void);
190/* 0588D0 */ void mpBoundingCheck(float left, float bottom, float right,
191 float top);
192/* 058970 */ void mpBoundingCheck2(float x1, float y1, float x2, float y2);
193/* 0589D0 */ void mpBoundingCheck3(float x0, float y0, float x1, float y1,
194 float x2, float y2, float x3, float y3);
195/* 058AA0 */ void mpUncheckBounding(void);
196/* 058ACC */ void mpLib_SetupDraw(GXColor);
197/* 058B5C */ void mpLib_DrawEcbs(CollData*);
198/* 0590F4 */ void mpLib_DrawSnapping(void);
199/* 059404 */ int mpLib_DrawMatchingLines(int, int, const GXColor*);
200/* 059554 */ void mpLib_80059554(void);
201/* 059E60 */ void mpLib_80059E60(void);
202/* 059FE0 */ void mpLib_DrawCrosses(s16* idx, int len, GXColor);
203/* 05A220 */ void mpLib_DrawSpecialPoints(void);
204/* 05A2DC */ void mpLib_8005A2DC(void);
205/* 05A340 */ void mpLib_DrawZones(void);
206/* 458868 */ extern mpCollisionBox mpLib_80458868[2];
207
208#endif
u8 x0
Definition dbbonus.c:20
UnkFlagStruct x1
Definition dbbonus.c:21
struct Vec Vec3
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
u8 x2
Definition gm_1601.c:149
u8 x3
Definition gm_1601.c:150
void(* mpLib_JointCollisionCallback)(void *user_data, int joint_id, CollData *coll, int coll_x50, mpLib_GroundEnum ground_kind, float delta_y)
Joint collision callback for ground surfaces.
Definition forward.h:50
mpCollisionBox mpLib_80458868[2]
Definition mplib.c:69
int mpLib_80053BD4_Ceiling(int line_id)
Definition mplib.c:4045
void mpCeilingGetRight(int line_id, Vec3 *)
Definition mplib.c:4184
void mpLib_DrawSpecialPoints(void)
Definition mplib.c:6835
void mpJointSetB10(int joint_id)
Definition mplib.c:5496
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)
Definition mplib.c:3409
void mpJointGetCb1(int joint_id, mpLib_JointCollisionCallback *cb, void **user_data)
Definition mplib.c:5517
bool mpLib_80054ED8(int line_id)
Definition mplib.c:4416
void mpLineGetV0Pos(int line_id, Vec3 *pos_out)
Definition mplib.c:4363
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)
Definition mplib.c:3265
int mpJointFromLine(int line_id)
Definition mplib.c:5115
int mpLib_800536CC_Floor(int line_id)
Definition mplib.c:3981
void mpRightWallGetBottom(int line_id, Vec3 *)
Definition mplib.c:4324
void mpVtxSetPos(int vtx_id, float x, float y)
Definition mplib.c:4991
void mpJointHide(int joint_id)
Definition mplib.c:4582
void mpLib_80057424(int joint_id)
Definition mplib.c:5267
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)
Definition mplib.c:2591
void mpLib_8004ED5C(int, float *, float *, float *, float *)
Definition mplib.c:1565
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)
Definition mplib.c:2901
bool mpCheckedBounding(void)
Definition mplib.c:5873
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)
Definition mplib.c:1921
int mpLineNextNonRightWall(int line_id)
Definition mplib.c:3805
void mpLib_80058614_Floor(void)
Definition mplib.c:5752
int mpLib_80056A54(int, int *)
Definition mplib.c:5062
float mpLib_800569EC(u32)
Definition mplib.c:5049
int mpLib_8005389C_Ceiling(int line_id)
Definition mplib.c:4007
int mpLineNextNonCeiling(int line_id)
Definition mplib.c:3733
CollJoint * mpGetGroundCollJoint(void)
Definition mplib.c:827
void mpJointUpdateBounding(int joint_id)
Definition mplib.c:4946
void mpJointSetCb1(int joint_id, void *user_data, mpLib_JointCollisionCallback cb)
Definition mplib.c:5502
void mpLib_80057FDC(int joint_id)
Definition mplib.c:5462
void mpJointUnhide(int joint_id)
Definition mplib.c:4627
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)
Definition mplib.c:3582
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)
Definition mplib.c:2417
void mpLib_8005667C(int joint_id)
Definition mplib.c:4970
Vec3 * mpLineGetNormal(int line_id, Vec3 *normal_out)
Definition mplib.c:4396
void mpLib_80057528(int line_id)
Definition mplib.c:5281
void mpLibLoad(MapCollData *coll_data)
Definition mplib.c:877
void mpLib_DrawEcbs(CollData *)
Definition mplib.c:6029
void mpRightWallGetTop(int line_id, Vec3 *)
Definition mplib.c:4296
int * mpLib_80056AFC(int, int *)
Definition mplib.c:5086
void mpLeftWallGetBottom(int line_id, Vec3 *)
Definition mplib.c:4268
enum_t mpLineGetKind(int line_id)
Definition mplib.c:4374
void mpLib_80053DA4_Floor(int line_id, Vec3 *)
Definition mplib.c:4069
void mpCeilingGetLeft(int line_id, Vec3 *)
Definition mplib.c:4212
void mpLib_DrawZones(void)
blast zones, camera bounds, etc
Definition mplib.c:6896
void mpLib_80058820(void)
Definition mplib.c:5860
void mpLib_DrawCrosses(s16 *idx, int len, GXColor)
Definition mplib.c:6757
int mpLineGetNext(int line_id)
Definition mplib.c:1020
int mpLib_800534FC_Floor(int line_id)
Definition mplib.c:3916
void mpLib_800552B0(int joint_id, HSD_JObj *, int z)
what even is this lol
Definition mplib.c:4543
int mpLineGetPrev(int line_id)
Definition mplib.c:1040
void mpLib_80057BC0(int joint_id)
Definition mplib.c:5402
int mpLib_DrawMatchingLines(int, int, const GXColor *)
Definition mplib.c:6283
void mpJointSetCb2(int joint_id, void *user_data, mpLib_JointCollisionCallback cb)
Definition mplib.c:5539
bool mpLinesConnected(int start_id, int target_id)
Definition mplib.c:4474
void mpLineGetV1Pos(int line_id, Vec3 *pos_out)
Definition mplib.c:4352
int mpLib_8004DD90_Floor(int line_id, Vec3 *, float *y_out, u32 *flags_out, Vec3 *normal_out)
Definition mplib.c:1092
void mpLib_80055E9C(int joint_id)
Definition mplib.c:4749
void mpLib_8005A2DC(void)
Definition mplib.c:6849
void mpLineSetPos(int line_id, float x0, float y0, float x1, float y1)
Definition mplib.c:4998
void mpLib_80058044(int joint_id)
Definition mplib.c:5479
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
Definition mplib.c:2227
void mpJointClearCb1(int joint_id)
Definition mplib.c:5510
void mpJointUpdateDynamics(int joint_id)
Definition mplib.c:4680
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(*)(Fighter_GObj *, int), Fighter_GObj *)
Definition mplib.c:1604
int mpLineNextNonFloor(int line_id)
Definition mplib.c:3679
void mpBoundingCheck3(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3)
Definition mplib.c:5933
void mpJointGetCb2(int joint_id, mpLib_JointCollisionCallback *cb, void **user_data)
Definition mplib.c:5546
bool mpLib_80056C54(int line_id, Vec3 *pos, int *line_id_out, Vec3 *vec_out, u32 *flags_out, Vec3 *normal_out, float, float)
Definition mplib.c:5139
int mpLib_80053394_Floor(int line_id)
Definition mplib.c:3845
void mpLib_SetupDraw(GXColor)
Definition mplib.c:6009
int mpLib_80053448_Floor(int line_id)
Definition mplib.c:3851
void mpLib_80054D68(int line_id, u32 flags)
Definition mplib.c:4386
bool mpLib_8004DBB4(int index, Vec3 *out)
void mpFloorGetLeft(int line_id, Vec3 *)
Definition mplib.c:4151
void mpFloorGetRight(int line_id, Vec3 *)
Definition mplib.c:4122
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)
Definition mplib.c:3574
void mpLib_800587FC(HSD_GObj *)
Definition mplib.c:5854
int mpLib_8004E398_LeftWall(int line_id, Vec3 *, float *x_out, u32 *flags_out, Vec3 *normal_out)
Definition mplib.c:1246
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
Definition mplib.c:1502
int mpLib_80053A04_Ceiling(int line_id)
Definition mplib.c:4019
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(*)(Fighter_GObj *, int), Fighter_GObj *)
Definition mplib.c:1749
void mpLib_800575B0(int line_id)
Definition mplib.c:5295
u32 mpLineGetFlags(int line_id)
Definition mplib.c:4380
int mpLib_8005199C_Floor(Vec3 *, int joint_id_skip, int joint_id_only)
Definition mplib.c:3188
void mpJointListAdd(int joint_id)
Definition mplib.c:5309
void mpLib_80056758(int line_id, float x0, float y0, float x1, float y1)
Definition mplib.c:5005
void mpLib_80059554(void)
Definition mplib.c:6351
int mpLinePrevNonFloor(int line_id)
Definition mplib.c:3697
void mpLib_8005811C(CollData *, int ledge_id)
Definition mplib.c:5525
int mpLineNextNonLeftWall(int line_id)
Definition mplib.c:3751
int * mpLib_80056A8C(int, int *)
Definition mplib.c:5070
void mpLib_800581DC(int joint_id0, int joint_id1)
Definition mplib.c:5562
int mpLinePrevNonRightWall(int line_id)
Definition mplib.c:3787
void mpUncheckBounding(void)
Definition mplib.c:5978
void mpJointListUnlink(CollJoint *)
Definition mplib.c:5377
void mpLeftWallGetTop(int line_id, Vec3 *)
Definition mplib.c:4240
void mpVtxGetPos(int vtx_id, float *x_out, float *y_out)
Definition mplib.c:4984
int mpLib_8004E090_Ceiling(int line_id, Vec3 *, float *y_out, u32 *flags_out, Vec3 *normal_out)
Definition mplib.c:1170
int mpLib_80056B34(int, int *)
Definition mplib.c:5094
CollVtx * mpGetGroundCollVtx(void)
Definition mplib.c:817
int mpLib_80053950_Ceiling(int line_id)
Definition mplib.c:4013
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)
Definition mplib.c:2726
CollLine * mpGetGroundCollLine(void)
Definition mplib.c:822
int mpLib_80056AC4(int, int *)
Definition mplib.c:5078
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)
Definition mplib.c:2281
void mpPruneEmptyLines(MapCollData *coll_data)
Definition mplib.c:832
void mpLib_80053ECC_Floor(int line_id, Vec3 *)
Definition mplib.c:4093
int mpLib_8004E684_RightWall(int line_id, Vec3 *, float *x_out, u32 *flags_out, Vec3 *normal_out)
Definition mplib.c:1318
MapCollData * mpLib_8004D164(void)
Definition mplib.c:812
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)
Definition mplib.c:3043
bool mpGetSpeed(int line_id, Vec3 *pos, Vec3 *speed)
Definition mplib.c:5018
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)
Definition mplib.c:2058
int * mpLib_80056A1C(int, int *)
Definition mplib.c:5054
void mpLib_DrawSnapping(void)
Definition mplib.c:6176
int mpLinePrevNonCeiling(int line_id)
Definition mplib.c:3715
void mpLib_80055E24(int joint_id)
Definition mplib.c:4733
void mpLib_80058560(void)
Definition mplib.c:5729
void mpBoundingCheck2(float x1, float y1, float x2, float y2)
Definition mplib.c:5909
void mpLib_80059E60(void)
Definition mplib.c:6694
int mpLinePrevNonLeftWall(int line_id)
Definition mplib.c:3769
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 bou...
Definition mplib.c:5880
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:27
Definition types.h:202
Definition types.h:103
Definition types.h:59
Definition types.h:75
Definition GXStruct.h:29
Definition gobj.h:24
Definition jobj.h:107
Definition types.h:120
Definition types.h:140