SSBM Decomp
Loading...
Searching...
No Matches
forward.h
Go to the documentation of this file.
1
#ifndef MELEE_MP_FORWARD_H
2
#define MELEE_MP_FORWARD_H
3
4
#include <
platform.h
>
5
6
#include "
lb/forward.h
"
7
8
typedef
struct
CollJoint
CollJoint
;
9
typedef
struct
CollLine
CollLine
;
10
typedef
struct
CollVtx
CollVtx
;
11
typedef
struct
MapCollData
MapCollData
;
12
typedef
struct
MapJoint
MapJoint
;
13
typedef
struct
MapLine
MapLine
;
14
typedef
struct
mp_UnkStruct0
mp_UnkStruct0
;
15
typedef
struct
mp_UnkStruct3
mp_UnkStruct3
;
16
typedef
struct
mpCollisionBox
mpCollisionBox
;
17
typedef
struct
mpisland
mpisland
;
18
typedef
struct
mpIsland_Palette
mpIsland_Palette
;
19
typedef
struct
mpIsland_PaletteEntry
mpIsland_PaletteEntry
;
20
21
typedef
enum
mp_Terrain
{
22
mp_Terrain_Basic
,
23
mp_Terrain_Rock
,
24
mp_Terrain_Grass
,
25
mp_Terrain_Dirt
,
26
mp_Terrain_Wood
,
27
mp_Terrain_LightMetal
,
28
mp_Terrain_HeavyMetal
,
29
mp_Terrain_Paper
,
30
mp_Terrain_Goop
,
31
mp_Terrain_Birdo
,
// used in GrI2
32
mp_Terrain_Water
,
33
mp_Terrain_Unk11
,
// used in GrTe
34
mp_Terrain_UFO
,
35
mp_Terrain_Turtle
,
36
mp_Terrain_Snow
,
37
mp_Terrain_Ice
,
38
mp_Terrain_GnW
,
39
mp_Terrain_Unk17
,
// used in GrTe
40
mp_Terrain_Checkered
,
41
mp_Terrain_Unk19
,
42
}
mp_Terrain
;
43
44
typedef
enum
mpLib_GroundEnum
{
45
mpLib_GroundEnum_Unk0
,
46
mpLib_GroundEnum_Unk1
,
47
mpLib_GroundEnum_Unk2
,
48
}
mpLib_GroundEnum
;
49
50
typedef
void (*
mpLib_JointCollisionCallback
)(
void
* user_data,
int
joint_id,
51
CollData
* coll,
int
coll_x50,
52
mpLib_GroundEnum
ground_kind,
53
float
delta_y);
54
typedef
bool
(*
mpColl_Callback
)(
CollData
*,
u32
);
55
56
typedef
enum
CollLineKind
{
57
CollLine_Floor
= 1 << 0,
58
CollLine_Ceiling
= 1 << 1,
59
CollLine_RightWall
= 1 << 2,
60
CollLine_LeftWall
= 1 << 3,
61
}
CollLineKind
;
62
63
#define LINE_FLAG_KIND (0xF)
64
#define LINE_FLAG_EMPTY (1 << 7)
65
#define LINE_FLAG_PLATFORM (1 << 8)
66
#define LINE_FLAG_LEDGE (1 << 9)
67
#define LINE_FLAG_ENABLED (1 << 16)
68
#define LINE_FLAG_HIDDEN (1 << 18)
69
70
#define MPCOLL_WALLID_MAX 9
71
72
enum
CollDataX130Flags
{
73
CollData_X130_Locked
= 1 << 4,
74
CollData_X130_Clear
= 1 << 5,
75
};
76
77
enum
CollJointFlags
{
78
CollJoint_B8
= 1 << 8,
79
CollJoint_B9
= 1 << 9,
80
CollJoint_B10
= 1 << 10,
81
CollJoint_B11
= 1 << 11,
82
CollJoint_TooFar
= 1 << 12,
83
CollJoint_Enabled
= 1 << 16,
84
CollJoint_Hidden
= 1 << 18,
85
};
86
89
#define Collide_LeftWallPush 0x1
90
#define Collide_LeftWallHug 0x20
91
#define Collide_LeftWallMask 0x3F
92
#define Collide_RightWallPush 0x40
93
#define Collide_RightWallHug 0x800
94
#define Collide_RightWallMask 0xFC0
95
#define Collide_WallMask (Collide_LeftWallMask | Collide_RightWallMask)
96
97
#define Collide_CeilingPush 0x2000
98
#define Collide_CeilingHug 0x4000
99
#define Collide_CeilingMask (Collide_CeilingPush | Collide_CeilingHug)
100
101
#define Collide_FloorPush 0x8000
102
#define Collide_FloorHug 0x10000
103
#define Collide_FloorMask (Collide_FloorPush | Collide_FloorHug)
104
105
#define Collide_LeftEdge 0x100000
106
#define Collide_RightEdge 0x200000
107
#define Collide_Edge 0x800000
108
#define Collide_LeftLedgeGrab 0x1000000
109
#define Collide_RightLedgeGrab 0x2000000
110
#define Collide_LedgeGrabMask (Collide_LeftLedgeGrab | Collide_RightLedgeGrab)
111
#define Collide_LeftLedgeSlip 0x10000000
112
#define Collide_RightLedgeSlip 0x20000000
113
114
#endif
u32
unsigned long u32
Definition
types.h:9
forward.h
CollLineKind
CollLineKind
Definition
forward.h:56
CollLine_LeftWall
@ CollLine_LeftWall
Definition
forward.h:60
CollLine_RightWall
@ CollLine_RightWall
Definition
forward.h:59
CollLine_Floor
@ CollLine_Floor
Definition
forward.h:57
CollLine_Ceiling
@ CollLine_Ceiling
Definition
forward.h:58
CollDataX130Flags
CollDataX130Flags
Definition
forward.h:72
CollData_X130_Locked
@ CollData_X130_Locked
Definition
forward.h:73
CollData_X130_Clear
@ CollData_X130_Clear
Definition
forward.h:74
mpLib_GroundEnum
mpLib_GroundEnum
Definition
forward.h:44
mpLib_GroundEnum_Unk1
@ mpLib_GroundEnum_Unk1
Definition
forward.h:46
mpLib_GroundEnum_Unk0
@ mpLib_GroundEnum_Unk0
Definition
forward.h:45
mpLib_GroundEnum_Unk2
@ mpLib_GroundEnum_Unk2
Definition
forward.h:47
mpLib_JointCollisionCallback
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
mpColl_Callback
bool(* mpColl_Callback)(CollData *, u32)
Definition
forward.h:54
mp_Terrain
mp_Terrain
Definition
forward.h:21
mp_Terrain_Unk17
@ mp_Terrain_Unk17
Definition
forward.h:39
mp_Terrain_Wood
@ mp_Terrain_Wood
Definition
forward.h:26
mp_Terrain_LightMetal
@ mp_Terrain_LightMetal
Definition
forward.h:27
mp_Terrain_UFO
@ mp_Terrain_UFO
Definition
forward.h:34
mp_Terrain_Water
@ mp_Terrain_Water
Definition
forward.h:32
mp_Terrain_Birdo
@ mp_Terrain_Birdo
Definition
forward.h:31
mp_Terrain_Checkered
@ mp_Terrain_Checkered
Definition
forward.h:40
mp_Terrain_Basic
@ mp_Terrain_Basic
Definition
forward.h:22
mp_Terrain_Unk11
@ mp_Terrain_Unk11
Definition
forward.h:33
mp_Terrain_HeavyMetal
@ mp_Terrain_HeavyMetal
Definition
forward.h:28
mp_Terrain_GnW
@ mp_Terrain_GnW
Definition
forward.h:38
mp_Terrain_Unk19
@ mp_Terrain_Unk19
Definition
forward.h:41
mp_Terrain_Goop
@ mp_Terrain_Goop
Definition
forward.h:30
mp_Terrain_Ice
@ mp_Terrain_Ice
Definition
forward.h:37
mp_Terrain_Paper
@ mp_Terrain_Paper
Definition
forward.h:29
mp_Terrain_Grass
@ mp_Terrain_Grass
Definition
forward.h:24
mp_Terrain_Dirt
@ mp_Terrain_Dirt
Definition
forward.h:25
mp_Terrain_Snow
@ mp_Terrain_Snow
Definition
forward.h:36
mp_Terrain_Rock
@ mp_Terrain_Rock
Definition
forward.h:23
mp_Terrain_Turtle
@ mp_Terrain_Turtle
Definition
forward.h:35
CollJointFlags
CollJointFlags
Definition
forward.h:77
CollJoint_B11
@ CollJoint_B11
Definition
forward.h:81
CollJoint_Enabled
@ CollJoint_Enabled
Definition
forward.h:83
CollJoint_TooFar
@ CollJoint_TooFar
Definition
forward.h:82
CollJoint_B8
@ CollJoint_B8
Definition
forward.h:78
CollJoint_B9
@ CollJoint_B9
Definition
forward.h:79
CollJoint_Hidden
@ CollJoint_Hidden
Definition
forward.h:84
CollJoint_B10
@ CollJoint_B10
Definition
forward.h:80
platform.h
bool
int bool
A signed integer used to contain boolean values.
Definition
stdbool.h:8
CollData
Definition
types.h:202
CollJoint
Definition
types.h:103
CollLine
Definition
types.h:59
CollVtx
Definition
types.h:75
MapCollData
Definition
types.h:120
MapJoint
Definition
types.h:84
MapLine
Definition
types.h:48
mpCollisionBox
Definition
types.h:140
mpIsland_PaletteEntry
Definition
types.h:25
mpIsland_Palette
Definition
types.h:30
mp_UnkStruct0
Definition
types.h:34
mp_UnkStruct3
Definition
types.h:69
mpisland
Definition
types.h:64
src
melee
mp
forward.h
Generated by
1.15.0