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
8typedef struct CollJoint CollJoint;
9typedef struct CollLine CollLine;
10typedef struct CollVtx CollVtx;
11typedef struct MapCollData MapCollData;
12typedef struct MapJoint MapJoint;
13typedef struct MapLine MapLine;
14typedef struct mp_UnkStruct0 mp_UnkStruct0;
15typedef struct mp_UnkStruct3 mp_UnkStruct3;
16typedef struct mpCollisionBox mpCollisionBox;
17typedef struct mpisland mpisland;
20
43
49
50typedef void (*mpLib_JointCollisionCallback)(void* user_data, int joint_id,
51 CollData* coll, int coll_x50,
52 mpLib_GroundEnum ground_kind,
53 float delta_y);
55
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
76
78 CollJoint_B8 = 1 << 8,
79 CollJoint_B9 = 1 << 9,
80 CollJoint_B10 = 1 << 10,
81 CollJoint_B11 = 1 << 11,
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
unsigned long u32
Definition types.h:9
CollLineKind
Definition forward.h:56
@ CollLine_LeftWall
Definition forward.h:60
@ CollLine_RightWall
Definition forward.h:59
@ CollLine_Floor
Definition forward.h:57
@ CollLine_Ceiling
Definition forward.h:58
CollDataX130Flags
Definition forward.h:72
@ CollData_X130_Locked
Definition forward.h:73
@ CollData_X130_Clear
Definition forward.h:74
mpLib_GroundEnum
Definition forward.h:44
@ mpLib_GroundEnum_Unk1
Definition forward.h:46
@ mpLib_GroundEnum_Unk0
Definition forward.h:45
@ mpLib_GroundEnum_Unk2
Definition forward.h:47
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
bool(* mpColl_Callback)(CollData *, u32)
Definition forward.h:54
mp_Terrain
Definition forward.h:21
@ mp_Terrain_Unk17
Definition forward.h:39
@ mp_Terrain_Wood
Definition forward.h:26
@ mp_Terrain_LightMetal
Definition forward.h:27
@ mp_Terrain_UFO
Definition forward.h:34
@ mp_Terrain_Water
Definition forward.h:32
@ mp_Terrain_Birdo
Definition forward.h:31
@ mp_Terrain_Checkered
Definition forward.h:40
@ mp_Terrain_Basic
Definition forward.h:22
@ mp_Terrain_Unk11
Definition forward.h:33
@ mp_Terrain_HeavyMetal
Definition forward.h:28
@ mp_Terrain_GnW
Definition forward.h:38
@ mp_Terrain_Unk19
Definition forward.h:41
@ mp_Terrain_Goop
Definition forward.h:30
@ mp_Terrain_Ice
Definition forward.h:37
@ mp_Terrain_Paper
Definition forward.h:29
@ mp_Terrain_Grass
Definition forward.h:24
@ mp_Terrain_Dirt
Definition forward.h:25
@ mp_Terrain_Snow
Definition forward.h:36
@ mp_Terrain_Rock
Definition forward.h:23
@ mp_Terrain_Turtle
Definition forward.h:35
CollJointFlags
Definition forward.h:77
@ CollJoint_B11
Definition forward.h:81
@ CollJoint_Enabled
Definition forward.h:83
@ CollJoint_TooFar
Definition forward.h:82
@ CollJoint_B8
Definition forward.h:78
@ CollJoint_B9
Definition forward.h:79
@ CollJoint_Hidden
Definition forward.h:84
@ CollJoint_B10
Definition forward.h:80
int bool
A signed integer used to contain boolean values.
Definition stdbool.h:8
Definition types.h:202
Definition types.h:103
Definition types.h:59
Definition types.h:75
Definition types.h:120
Definition types.h:84
Definition types.h:48
Definition types.h:140
Definition types.h:25
Definition types.h:30
Definition types.h:34
Definition types.h:69
Definition types.h:64