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#include <Runtime/platform.h>
4
5#include <melee/lb/forward.h>
6
7typedef struct CollJoint CollJoint;
8typedef struct CollLine CollLine;
9typedef struct CollVtx CollVtx;
10typedef struct MapCollData MapCollData;
11typedef struct MapJoint MapJoint;
12typedef struct MapLine MapLine;
13typedef struct mpIsland mpIsland;
14typedef struct mpCollisionBox mpCollisionBox;
17
40
46
55typedef void (*mpLib_JointCollisionCallback)(void* user_data, int joint_id,
56 CollData* coll, int coll_x50,
57 mpLib_GroundEnum ground_kind,
58 float delta_y);
59
60typedef bool (*mpColl_Callback)(CollData*, int);
61
68
69#define LINE_FLAG_KIND (0xF)
70#define LINE_FLAG_EMPTY (1 << 7)
71#define LINE_FLAG_PLATFORM (1 << 8)
72#define LINE_FLAG_LEDGE (1 << 9)
73#define LINE_FLAG_ENABLED (1 << 16)
74#define LINE_FLAG_HIDDEN (1 << 18)
75
76#define MPCOLL_WALLID_MAX 9
77
82
84 mpIsland_B1 = 1 << 1,
85};
86
88 CollJoint_B8 = 1 << 8,
89 CollJoint_B9 = 1 << 9,
90 CollJoint_B10 = 1 << 10,
91 CollJoint_B11 = 1 << 11,
95};
96
99#define Collide_LeftWallPush 0x1
100#define Collide_LeftWallHug 0x20
101#define Collide_LeftWallMask 0x3F
102#define Collide_RightWallPush 0x40
103#define Collide_RightWallHug 0x800
104#define Collide_RightWallMask 0xFC0
105#define Collide_WallMask (Collide_LeftWallMask | Collide_RightWallMask)
106
107#define Collide_CeilingPush 0x2000
108#define Collide_CeilingHug 0x4000
109#define Collide_CeilingMask (Collide_CeilingPush | Collide_CeilingHug)
110
111#define Collide_FloorPush 0x8000
112#define Collide_FloorHug 0x10000
113#define Collide_FloorMask (Collide_FloorPush | Collide_FloorHug)
114
115#define Collide_LeftEdge 0x100000
116#define Collide_RightEdge 0x200000
117#define Collide_Edge 0x800000
118#define Collide_LeftLedgeGrab 0x1000000
119#define Collide_RightLedgeGrab 0x2000000
120#define Collide_LedgeGrabMask (Collide_LeftLedgeGrab | Collide_RightLedgeGrab)
121#define Collide_LeftLedgeSlip 0x10000000
122#define Collide_RightLedgeSlip 0x20000000
123
124#endif
CollLineKind
Definition forward.h:62
@ CollLine_LeftWall
Definition forward.h:66
@ CollLine_RightWall
Definition forward.h:65
@ CollLine_Floor
Definition forward.h:63
@ CollLine_Ceiling
Definition forward.h:64
bool(* mpColl_Callback)(CollData *, int)
Definition forward.h:60
CollDataX130Flags
Definition forward.h:78
@ CollData_X130_Locked
Definition forward.h:79
@ CollData_X130_Clear
Definition forward.h:80
mpLib_GroundEnum
Definition forward.h:41
@ mpLib_GroundEnum_Unk1
Definition forward.h:43
@ mpLib_GroundEnum_Unk0
Definition forward.h:42
@ mpLib_GroundEnum_Unk2
Definition forward.h:44
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:55
mpIslandFlags
Definition forward.h:83
@ mpIsland_B1
Definition forward.h:84
mp_Terrain
Definition forward.h:18
@ mp_Terrain_Unk17
Definition forward.h:36
@ mp_Terrain_Wood
Definition forward.h:23
@ mp_Terrain_LightMetal
Definition forward.h:24
@ mp_Terrain_UFO
Definition forward.h:31
@ mp_Terrain_Water
Definition forward.h:29
@ mp_Terrain_Birdo
Definition forward.h:28
@ mp_Terrain_Checkered
Definition forward.h:37
@ mp_Terrain_Basic
Definition forward.h:19
@ mp_Terrain_Unk11
Definition forward.h:30
@ mp_Terrain_HeavyMetal
Definition forward.h:25
@ mp_Terrain_GnW
Definition forward.h:35
@ mp_Terrain_Unk19
Definition forward.h:38
@ mp_Terrain_Goop
Definition forward.h:27
@ mp_Terrain_Ice
Definition forward.h:34
@ mp_Terrain_Paper
Definition forward.h:26
@ mp_Terrain_Grass
Definition forward.h:21
@ mp_Terrain_Dirt
Definition forward.h:22
@ mp_Terrain_Snow
Definition forward.h:33
@ mp_Terrain_Rock
Definition forward.h:20
@ mp_Terrain_Turtle
Definition forward.h:32
CollJointFlags
Definition forward.h:87
@ CollJoint_B11
Definition forward.h:91
@ CollJoint_Enabled
Definition forward.h:93
@ CollJoint_TooFar
Definition forward.h:92
@ CollJoint_B8
Definition forward.h:88
@ CollJoint_B9
Definition forward.h:89
@ CollJoint_Hidden
Definition forward.h:94
@ CollJoint_B10
Definition forward.h:90
int bool
A signed integer used to contain boolean values.
Definition stdbool.h:6
Definition types.h:205
Definition types.h:95
Definition types.h:59
Definition types.h:64
Definition types.h:112
Definition types.h:85
Definition types.h:48
Definition types.h:123
Definition types.h:26
Definition types.h:31
Definition types.h:35