SSBM Decomp
Loading...
Searching...
No Matches
lbcollision.c File Reference
#include "lbcollision.h"
#include <Runtime/platform.h>
#include <math.h>
#include <placeholder.h>
#include "forward.h"
#include "lb_00B0.h"
#include "lbaudio_ax.h"
#include "lbvector.h"
#include "types.h"
#include <dolphin/gx.h>
#include <dolphin/mtx.h>
#include <melee/ft/types.h>
#include <sysdolphin/baselib/cobj.h>
#include <sysdolphin/baselib/jobj.h>
#include <sysdolphin/baselib/mtx.h>
#include <sysdolphin/baselib/state.h>
#include <sysdolphin/baselib/tev.h>

Data Structures

struct  unk

Functions

static bool lbColl_80006E58 (Vec3 *hit_start, Vec3 *hit_end, Vec3 *hurt_start, Vec3 *hurt_end, Vec3 *hit_closest, Vec3 *hurt_closest, MtxPtr hurt_mtx, Vec3 *out_contact_pos, float *out_overlap, float hit_radius, float hurt_radius, float broadphase_scale)
 Tests a hit capsule segment against a hurt or shield capsule segment.
int lbColl_80005BB0 (HitCapsule *arg0, int arg1)
 .text
bool lbColl_80005C44 (const Vec3 *arg0, const Vec3 *arg1, const Vec3 *arg2, Vec3 *arg3, float arg8, float arg9)
float lbColl_80005EBC (const Vec3 *arg0, const Vec3 *arg1, const Vec3 *arg2, float *arg3)
float lbColl_80005FC0 (Vec3 *arg0, Vec3 *arg1, Vec3 *arg2, float *arg3)
static bool end (Vec3 *a, Vec3 *b, float unk_sum)
bool lbColl_80006094 (Vec3 *arg0, Vec3 *arg1, Vec3 *arg2, Vec3 *arg3, Vec3 *arg4, Vec3 *arg5, float arg6, float arg7)
static float lbColl_GetY (Vec3 *v)
static float lbColl_DifferenceY (Vec3 *a, Vec3 *b)
bool lbColl_800067F8 (Vec3 *a, Vec3 *b, Vec3 *c, Vec3 *d, Vec3 *e, Vec3 *f, float p, float q)
static float sqrDistance (Vec3 *a, Vec3 *b)
static float sqrtf_store (float x, volatile float *y)
void lbColl_800077A0 (Vec3 *a, MtxPtr arg1, Vec3 *b, Vec3 *c, Vec3 *d, Vec3 *e, float *angle, float x, float dist_offset)
bool lbColl_80007AFC (HitCapsule *a, HitCapsule *b, float x, float y)
bool lbColl_80007B78 (Mtx a, struct Fighter_x1614_t *b, float x, float y)
bool lbColl_80007BCC (HitCapsule *arg0, HitResult *shield_hit, void *arg2, s32 arg3, float arg4, float arg5, float arg6)
void lbColl_80007DD8 (HitCapsule *capsule, HitResult *hit, Mtx hit_transform, Vec3 *arg3, float *angle, float scale)
bool lbColl_80007ECC (HitCapsule *arg0, HurtCapsule *arg1, Mtx arg2, float hit_scl_y, float hurt_scl_y, float hurt_pos_z)
bool lbColl_8000805C (HitCapsule *arg0, HurtCapsule *arg1, Mtx arg2, s32 arg3, float arg4, float arg5, float arg6)
bool lbColl_80008248 (HitCapsule *arg0, HurtCapsule *arg1, Mtx arg2, f32 arg3, f32 arg4, f32 arg5)
void lbColl_800083C4 (HurtCapsule *arg0)
void lbColl_80008428 (HitCapsule *arg0)
void lbColl_80008434 (HitCapsule *arg0)
void lbColl_80008440 (HitCapsule *hit)
void lbColl_CopyHitCapsule (HitCapsule *src, HitCapsule *dst)
bool lbColl_80008688 (HitCapsule *capsule, int type, void *victim)
bool lbColl_80008820 (HitCapsule *capsule, int type, void *victim)
void lbColl_800089B8 (HitCapsule *hit, UNK_T arg1)
void lbColl_80008A5C (HitCapsule *hit)
void lbColl_80008D30 (HitCapsule *arg0, lbColl_80008D30_arg1 *arg1)
void lbColl_80008DA4 (GXColor *arg0, GXColor *arg1)
static bool isSmall (float x)
void lbColl_80008FC8 (Vec3 arg0, Vec3 arg1, GXColor *arg2, GXColor *arg3, f32 arg4)
void lbColl_800096B4 (MtxPtr arg0, Vec3 arg1, Vec3 arg2, GXColor *arg3, GXColor *arg4, f32 arg5)
void lbColl_80009DD4 (Vec3 *v0, Vec3 *v1, GXColor *clr)
bool lbColl_80009F54 (HitCapsule *hit, u32 arg1, float arg8)
static void lbColl_DrawHitResult (MtxPtr mtx, Vec3 *a, Vec3 *b, GXColor *c0, GXColor *c1, f32 size)
bool lbColl_8000A044 (HitCapsule *hit, u32 arg1, float arg8)
bool lbColl_8000A10C (struct lbColl_8000A10C_arg0_t *arg0, u32 arg1, f32 arg2)
bool lbColl_8000A1A8 (struct Fighter_x1614_t *arg0, int arg1, f32 scale_y)
bool lbColl_8000A244 (HurtCapsule *hurt, u32 arg1, Mtx arg2, float arg3)
bool lbColl_8000A460 (Fighter_x1670_t *hurt, u32 arg1)
bool lbColl_8000A584 (HurtCapsule *hurt, u32 arg1, u32 arg2, Mtx arg3, f32 arg8)
static bool lbColl_DrawHit (HitResult *hit, u32 arg1, MtxPtr arg2, f32 pos_z, GXColor *color, GXColor *secondary_color, MtxPtr hit_mtx, Vec3 *pos_a, Vec3 *pos_b)
bool lbColl_8000A78C (HitResult *hit, u32 arg1, Mtx arg2, f32 pos_z)
bool lbColl_8000A95C (HitResult *hit, u32 arg1, Mtx arg2, f32 pos_z)
bool lbColl_8000AB2C (HitResult *hit, u32 arg1, MtxPtr arg2, f32 pos_z)
bool lbColl_8000ACFC (UNK_T victim, HitCapsule *hitbox)

Variables

static GXColor lbColl_804D36A0 = { 0xFF, 0x00, 0x00, 0x80 }
 .sdata
static GXColor lbColl_804D36A4 = { 0xFF, 0x00, 0xFF, 0x80 }
static GXColor lbColl_804D36A8 = { 0x80, 0x00, 0x00, 0x80 }
static GXColor lbColl_804D36AC = { 0xFF, 0xFF, 0x00, 0x80 }
static GXColor lbColl_804D36B0 = { 0x80, 0x80, 0x00, 0x80 }
static GXColor lbColl_804D36B4 = { 0x00, 0xFF, 0x00, 0x80 }
static GXColor lbColl_804D36B8 = { 0x00, 0x80, 0x00, 0x80 }
static GXColor lbColl_804D36BC = { 0x00, 0x00, 0xFF, 0x80 }
static GXColor lbColl_804D36C0 = { 0x00, 0x00, 0x80, 0x80 }
static GXColor lbColl_804D36C4 = { 0x00, 0xFF, 0xFF, 0x80 }
static GXColor lbColl_804D36C8 = { 0x00, 0x80, 0x80, 0x80 }
static GXColor lbColl_804D36CC = { 0x00, 0xFF, 0x80, 0x80 }
static GXColor lbColl_804D36D0 = { 0x00, 0x80, 0x40, 0x80 }
static GXColor lbColl_804D36D4 = { 0x00, 0x80, 0xFF, 0x80 }
static GXColor lbColl_804D36D8 = { 0x00, 0x40, 0x80, 0x80 }
static GXColor lbColl_804D36DC = { 0xFF, 0xFF, 0xFF, 0x80 }
static GXColor lbColl_804D36E0 = { 0xFF, 0x80, 0x00, 0x80 }
static GXColor lbColl_804D36E4 = { 0x80, 0x40, 0x00, 0x80 }
static GXColor lbColl_804D36E8 = { 0xFF, 0xFF, 0xFF, 0x80 }
static GXColor lbColl_804D36EC = { 0x80, 0x80, 0x80, 0x80 }
static GXColor lbColl_804D36F0 = { 0xFF, 0xFF, 0x00, 0x80 }
int lbColl_803B9880 []
 .data
static GXColor lbColl_804D36F4 = { 0x80, 0x80, 0x00, 0x80 }
static GXColor lbColl_804D36F8 = { 0xFF, 0x00, 0x00, 0x80 }
static GXColor lbColl_804D36FC = { 0x80, 0x00, 0x00, 0x80 }
struct unk lbColl_803B9928 []
u8 lbColl_SpherePositions [0x1A0]
u8 lbColl_SphereNormals [0x1A0]
u8 lbColl_SphereDisplayList [0x120]
u8 lbColl_CylinderPositions [0x80]
u8 lbColl_UnknownData [0xA0]
u8 lbColl_CylinderNormals [0x60]
u8 lbColl_CylinderDisplayList [0xA0]
GXColor const lbColl_804D7A50 = { 0 }

Function Documentation

◆ lbColl_80006E58()

bool lbColl_80006E58 ( Vec3 * hit_start,
Vec3 * hit_end,
Vec3 * hurt_start,
Vec3 * hurt_end,
Vec3 * hit_closest,
Vec3 * hurt_closest,
MtxPtr hurt_mtx,
Vec3 * out_contact_pos,
float * out_overlap,
float hit_radius,
float hurt_radius,
float broadphase_scale )
static

Tests a hit capsule segment against a hurt or shield capsule segment.

Parameters
[in]hit_startFirst endpoint of the hit capsule axis.
[in]hit_endSecond endpoint of the hit capsule axis.
[in]hurt_startFirst endpoint of the hurt/shield capsule axis.
[in]hurt_endSecond endpoint of the hurt/shield capsule axis.
[out]hit_closestClosest point on the hit capsule axis.
[out]hurt_closestClosest point on the hurt/shield capsule axis.
[in]hurt_mtxMatrix used to measure hurt radius along contact normal.
[out]out_contact_posContact point on the hurt/shield surface.
[out]out_overlapEffective radius margin minus closest distance.
[in]hit_radiusHit capsule radius.
[in]hurt_radiusHurt/shield capsule radius.
[in]broadphase_scaleScale applied to hurt_radius for AABB rejection.
Returns
true if the capsule axes overlap within their effective radii.

◆ lbColl_80005BB0()

int lbColl_80005BB0 ( HitCapsule * arg0,
int arg1 )

.text

◆ lbColl_80005C44()

bool lbColl_80005C44 ( const Vec3 * arg0,
const Vec3 * arg1,
const Vec3 * arg2,
Vec3 * arg3,
float arg8,
float arg9 )

◆ lbColl_80005EBC()

float lbColl_80005EBC ( const Vec3 * arg0,
const Vec3 * arg1,
const Vec3 * arg2,
float * arg3 )

◆ lbColl_80005FC0()

float lbColl_80005FC0 ( Vec3 * arg0,
Vec3 * arg1,
Vec3 * arg2,
float * arg3 )

◆ end()

bool end ( Vec3 * a,
Vec3 * b,
float unk_sum )
inlinestatic

◆ lbColl_80006094()

bool lbColl_80006094 ( Vec3 * arg0,
Vec3 * arg1,
Vec3 * arg2,
Vec3 * arg3,
Vec3 * arg4,
Vec3 * arg5,
float arg6,
float arg7 )

◆ lbColl_GetY()

float lbColl_GetY ( Vec3 * v)
inlinestatic

◆ lbColl_DifferenceY()

float lbColl_DifferenceY ( Vec3 * a,
Vec3 * b )
inlinestatic

◆ lbColl_800067F8()

bool lbColl_800067F8 ( Vec3 * a,
Vec3 * b,
Vec3 * c,
Vec3 * d,
Vec3 * e,
Vec3 * f,
float p,
float q )

◆ sqrDistance()

float sqrDistance ( Vec3 * a,
Vec3 * b )
inlinestatic

◆ sqrtf_store()

float sqrtf_store ( float x,
volatile float * y )
inlinestatic

◆ lbColl_800077A0()

void lbColl_800077A0 ( Vec3 * a,
MtxPtr arg1,
Vec3 * b,
Vec3 * c,
Vec3 * d,
Vec3 * e,
float * angle,
float x,
float dist_offset )

◆ lbColl_80007AFC()

bool lbColl_80007AFC ( HitCapsule * a,
HitCapsule * b,
float x,
float y )

◆ lbColl_80007B78()

bool lbColl_80007B78 ( Mtx a,
struct Fighter_x1614_t * b,
float x,
float y )
Todo
Eliminate casts.

◆ lbColl_80007BCC()

bool lbColl_80007BCC ( HitCapsule * arg0,
HitResult * shield_hit,
void * arg2,
s32 arg3,
float arg4,
float arg5,
float arg6 )

◆ lbColl_80007DD8()

void lbColl_80007DD8 ( HitCapsule * capsule,
HitResult * hit,
Mtx hit_transform,
Vec3 * arg3,
float * angle,
float scale )

◆ lbColl_80007ECC()

bool lbColl_80007ECC ( HitCapsule * arg0,
HurtCapsule * arg1,
Mtx arg2,
float hit_scl_y,
float hurt_scl_y,
float hurt_pos_z )

◆ lbColl_8000805C()

bool lbColl_8000805C ( HitCapsule * arg0,
HurtCapsule * arg1,
Mtx arg2,
s32 arg3,
float arg4,
float arg5,
float arg6 )

◆ lbColl_80008248()

bool lbColl_80008248 ( HitCapsule * arg0,
HurtCapsule * arg1,
Mtx arg2,
f32 arg3,
f32 arg4,
f32 arg5 )

◆ lbColl_800083C4()

void lbColl_800083C4 ( HurtCapsule * arg0)

◆ lbColl_80008428()

void lbColl_80008428 ( HitCapsule * arg0)

◆ lbColl_80008434()

void lbColl_80008434 ( HitCapsule * arg0)

◆ lbColl_80008440()

void lbColl_80008440 ( HitCapsule * hit)

◆ lbColl_CopyHitCapsule()

void lbColl_CopyHitCapsule ( HitCapsule * src,
HitCapsule * dst )

◆ lbColl_80008688()

bool lbColl_80008688 ( HitCapsule * capsule,
int type,
void * victim )

◆ lbColl_80008820()

bool lbColl_80008820 ( HitCapsule * capsule,
int type,
void * victim )

◆ lbColl_800089B8()

void lbColl_800089B8 ( HitCapsule * hit,
UNK_T arg1 )

◆ lbColl_80008A5C()

void lbColl_80008A5C ( HitCapsule * hit)

◆ lbColl_80008D30()

void lbColl_80008D30 ( HitCapsule * arg0,
lbColl_80008D30_arg1 * arg1 )

◆ lbColl_80008DA4()

void lbColl_80008DA4 ( GXColor * arg0,
GXColor * arg1 )

◆ isSmall()

bool isSmall ( float x)
inlinestatic

◆ lbColl_80008FC8()

void lbColl_80008FC8 ( Vec3 arg0,
Vec3 arg1,
GXColor * arg2,
GXColor * arg3,
f32 arg4 )

◆ lbColl_800096B4()

void lbColl_800096B4 ( MtxPtr arg0,
Vec3 arg1,
Vec3 arg2,
GXColor * arg3,
GXColor * arg4,
f32 arg5 )

◆ lbColl_80009DD4()

void lbColl_80009DD4 ( Vec3 * v0,
Vec3 * v1,
GXColor * clr )

◆ lbColl_80009F54()

bool lbColl_80009F54 ( HitCapsule * hit,
u32 arg1,
float arg8 )

◆ lbColl_DrawHitResult()

void lbColl_DrawHitResult ( MtxPtr mtx,
Vec3 * a,
Vec3 * b,
GXColor * c0,
GXColor * c1,
f32 size )
inlinestatic

◆ lbColl_8000A044()

bool lbColl_8000A044 ( HitCapsule * hit,
u32 arg1,
float arg8 )

◆ lbColl_8000A10C()

bool lbColl_8000A10C ( struct lbColl_8000A10C_arg0_t * arg0,
u32 arg1,
f32 arg2 )

◆ lbColl_8000A1A8()

bool lbColl_8000A1A8 ( struct Fighter_x1614_t * arg0,
int arg1,
f32 scale_y )

◆ lbColl_8000A244()

bool lbColl_8000A244 ( HurtCapsule * hurt,
u32 arg1,
Mtx arg2,
float arg3 )

◆ lbColl_8000A460()

bool lbColl_8000A460 ( Fighter_x1670_t * hurt,
u32 arg1 )

◆ lbColl_8000A584()

bool lbColl_8000A584 ( HurtCapsule * hurt,
u32 arg1,
u32 arg2,
Mtx arg3,
f32 arg8 )

◆ lbColl_DrawHit()

bool lbColl_DrawHit ( HitResult * hit,
u32 arg1,
MtxPtr arg2,
f32 pos_z,
GXColor * color,
GXColor * secondary_color,
MtxPtr hit_mtx,
Vec3 * pos_a,
Vec3 * pos_b )
inlinestatic

◆ lbColl_8000A78C()

bool lbColl_8000A78C ( HitResult * hit,
u32 arg1,
Mtx arg2,
f32 pos_z )

◆ lbColl_8000A95C()

bool lbColl_8000A95C ( HitResult * hit,
u32 arg1,
Mtx arg2,
f32 pos_z )

◆ lbColl_8000AB2C()

bool lbColl_8000AB2C ( HitResult * hit,
u32 arg1,
MtxPtr arg2,
f32 pos_z )

◆ lbColl_8000ACFC()

bool lbColl_8000ACFC ( UNK_T victim,
HitCapsule * hitbox )

Variable Documentation

◆ lbColl_804D36A0

GXColor lbColl_804D36A0 = { 0xFF, 0x00, 0x00, 0x80 }
static

.sdata

◆ lbColl_804D36A4

GXColor lbColl_804D36A4 = { 0xFF, 0x00, 0xFF, 0x80 }
static

◆ lbColl_804D36A8

GXColor lbColl_804D36A8 = { 0x80, 0x00, 0x00, 0x80 }
static

◆ lbColl_804D36AC

GXColor lbColl_804D36AC = { 0xFF, 0xFF, 0x00, 0x80 }
static

◆ lbColl_804D36B0

GXColor lbColl_804D36B0 = { 0x80, 0x80, 0x00, 0x80 }
static

◆ lbColl_804D36B4

GXColor lbColl_804D36B4 = { 0x00, 0xFF, 0x00, 0x80 }
static

◆ lbColl_804D36B8

GXColor lbColl_804D36B8 = { 0x00, 0x80, 0x00, 0x80 }
static

◆ lbColl_804D36BC

GXColor lbColl_804D36BC = { 0x00, 0x00, 0xFF, 0x80 }
static

◆ lbColl_804D36C0

GXColor lbColl_804D36C0 = { 0x00, 0x00, 0x80, 0x80 }
static

◆ lbColl_804D36C4

GXColor lbColl_804D36C4 = { 0x00, 0xFF, 0xFF, 0x80 }
static

◆ lbColl_804D36C8

GXColor lbColl_804D36C8 = { 0x00, 0x80, 0x80, 0x80 }
static

◆ lbColl_804D36CC

GXColor lbColl_804D36CC = { 0x00, 0xFF, 0x80, 0x80 }
static

◆ lbColl_804D36D0

GXColor lbColl_804D36D0 = { 0x00, 0x80, 0x40, 0x80 }
static

◆ lbColl_804D36D4

GXColor lbColl_804D36D4 = { 0x00, 0x80, 0xFF, 0x80 }
static

◆ lbColl_804D36D8

GXColor lbColl_804D36D8 = { 0x00, 0x40, 0x80, 0x80 }
static

◆ lbColl_804D36DC

GXColor lbColl_804D36DC = { 0xFF, 0xFF, 0xFF, 0x80 }
static

◆ lbColl_804D36E0

GXColor lbColl_804D36E0 = { 0xFF, 0x80, 0x00, 0x80 }
static

◆ lbColl_804D36E4

GXColor lbColl_804D36E4 = { 0x80, 0x40, 0x00, 0x80 }
static

◆ lbColl_804D36E8

GXColor lbColl_804D36E8 = { 0xFF, 0xFF, 0xFF, 0x80 }
static

◆ lbColl_804D36EC

GXColor lbColl_804D36EC = { 0x80, 0x80, 0x80, 0x80 }
static

◆ lbColl_804D36F0

GXColor lbColl_804D36F0 = { 0xFF, 0xFF, 0x00, 0x80 }
static

◆ lbColl_803B9880

int lbColl_803B9880[]
Initial value:
= {
0x00083D60, 0x00083D60, 0x00083D60, 0x0000005B, 0x0000005A, 0x00000059,
0x00000058, 0x00000057, 0x00000056, 0x0000006F, 0x00000070, 0x00000071,
0x00000054, 0x00000054, 0x00000054, 0x0000005A, 0x00000059, 0x000000DF,
0x000000E1, 0x000000E1, 0x000000E1, 0x00000062, 0x00000063, 0x00000064,
0x00000065, 0x00000066, 0x00000067, 0x0004461B, 0x0004461B, 0x0004461B,
0x000000F1, 0x000000F1, 0x000000F1, 0x0000005E, 0x0000005D, 0x0000005C,
0x00035BAF, 0x00035BB2, 0x00035BB5, 0x00083D60, 0x00083D60, 0x0000020D,
}

.data

◆ lbColl_804D36F4

GXColor lbColl_804D36F4 = { 0x80, 0x80, 0x00, 0x80 }
static

◆ lbColl_804D36F8

GXColor lbColl_804D36F8 = { 0xFF, 0x00, 0x00, 0x80 }
static

◆ lbColl_804D36FC

GXColor lbColl_804D36FC = { 0x80, 0x00, 0x00, 0x80 }
static

◆ lbColl_803B9928

struct unk lbColl_803B9928[]
Initial value:
= {
}
static GXColor lbColl_804D36B4
Definition lbcollision.c:34
static GXColor lbColl_804D36BC
Definition lbcollision.c:36
static GXColor lbColl_804D36B0
Definition lbcollision.c:33
static GXColor lbColl_804D36B8
Definition lbcollision.c:35
static GXColor lbColl_804D36C0
Definition lbcollision.c:37
static GXColor lbColl_804D36AC
Definition lbcollision.c:32

◆ lbColl_SpherePositions

u8 lbColl_SpherePositions[0x1A0]

◆ lbColl_SphereNormals

u8 lbColl_SphereNormals[0x1A0]

◆ lbColl_SphereDisplayList

u8 lbColl_SphereDisplayList[0x120]
Initial value:
= {
0x98, 0x00, 0x75, 0x0B, 0x0B, 0x04, 0x04, 0x0C, 0x0C, 0x01, 0x01, 0x07,
0x07, 0x0E, 0x0E, 0x19, 0x19, 0x10, 0x10, 0x1A, 0x1A, 0x02, 0x02, 0x05,
0x05, 0x14, 0x14, 0x09, 0x09, 0x14, 0x14, 0x17, 0x17, 0x15, 0x15, 0x17,
0x17, 0x16, 0x16, 0x17, 0x17, 0x3E, 0x3E, 0x09, 0x09, 0x03, 0x03, 0x05,
0x05, 0x06, 0x06, 0x1A, 0x1A, 0x1B, 0x1B, 0x19, 0x19, 0x18, 0x18, 0x07,
0x07, 0x08, 0x08, 0x0C, 0x0C, 0x0D, 0x0D, 0x0B, 0x0B, 0x0A, 0x0A, 0x0B,
0x0B, 0x31, 0x31, 0x04, 0x04, 0x31, 0x31, 0x13, 0x13, 0x32, 0x32, 0x00,
0x00, 0x34, 0x34, 0x0F, 0x0F, 0x36, 0x36, 0x11, 0x11, 0x38, 0x38, 0x12,
0x12, 0x3A, 0x3A, 0x15, 0x15, 0x3C, 0x3C, 0x16, 0x16, 0x3F, 0x3F, 0x3E,
0x3E, 0x3F, 0x3F, 0x40, 0x40, 0x3F, 0x3F, 0x3D, 0x3D, 0x3C, 0x3C, 0x3B,
0x3B, 0x3A, 0x3A, 0x39, 0x39, 0x38, 0x38, 0x37, 0x37, 0x36, 0x36, 0x35,
0x35, 0x34, 0x34, 0x33, 0x33, 0x32, 0x32, 0x33, 0x33, 0x31, 0x31, 0x33,
0x33, 0x2A, 0x2A, 0x35, 0x35, 0x2B, 0x2B, 0x37, 0x37, 0x2C, 0x2C, 0x39,
0x39, 0x2D, 0x2D, 0x3B, 0x3B, 0x2E, 0x2E, 0x3D, 0x3D, 0x2F, 0x2F, 0x40,
0x40, 0x30, 0x30, 0x3E, 0x3E, 0x30, 0x30, 0x29, 0x29, 0x30, 0x30, 0x28,
0x28, 0x2F, 0x2F, 0x27, 0x27, 0x2E, 0x2E, 0x26, 0x26, 0x2D, 0x2D, 0x25,
0x25, 0x2C, 0x2C, 0x24, 0x24, 0x2B, 0x2B, 0x23, 0x23, 0x2A, 0x2A, 0x23,
0x23, 0x31, 0x31, 0x23, 0x23, 0x1C, 0x1C, 0x24, 0x24, 0x1D, 0x1D, 0x25,
0x25, 0x1E, 0x1E, 0x26, 0x26, 0x1F, 0x1F, 0x27, 0x27, 0x20, 0x20, 0x28,
0x28, 0x21, 0x21, 0x29, 0x29, 0x22, 0x22, 0x3E, 0x3E, 0x98, 0x00, 0x0C,
0x15, 0x15, 0x14, 0x14, 0x12, 0x12, 0x02, 0x02, 0x11, 0x11, 0x10, 0x10,
0x0F, 0x0F, 0x0E, 0x0E, 0x00, 0x00, 0x01, 0x01, 0x13, 0x13, 0x04, 0x04,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
}

◆ lbColl_CylinderPositions

u8 lbColl_CylinderPositions[0x80]
Initial value:
= {
0xE0, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xE0, 0x01, 0xE7, 0x83, 0x3B, 0x20,
0xE0, 0x00, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x01,
0x20, 0x00, 0x00, 0x00, 0xC0, 0x01, 0xE0, 0x01, 0xC4, 0xE0, 0xE7, 0x83,
0xE0, 0x01, 0xE7, 0x83, 0xC4, 0xE0, 0xE0, 0x01, 0xD2, 0xBF, 0xD2, 0xBF,
0xE0, 0x00, 0x18, 0x7D, 0xC4, 0xE0, 0x00, 0x00, 0x18, 0x7D, 0xC4, 0xE0,
0x1F, 0xFF, 0x18, 0x7D, 0xC4, 0xE0, 0x1F, 0xFF, 0x18, 0x7D, 0x3B, 0x20,
0xE0, 0x00, 0x18, 0x7D, 0x3B, 0x20, 0xE0, 0x00, 0x2D, 0x41, 0x2D, 0x41,
0x00, 0x00, 0x18, 0x7D, 0x3B, 0x20, 0xE0, 0x01, 0xC0, 0x01, 0x00, 0x00,
0x00, 0x00, 0xE7, 0x83, 0xC4, 0xE0, 0x00, 0x00, 0xD2, 0xBF, 0xD2, 0xBF,
0x20, 0x00, 0xD2, 0xBF, 0xD2, 0xBF, 0x20, 0x00, 0xE7, 0x83, 0xC4, 0xE0,
0xE0, 0x00, 0x2D, 0x41, 0xD2, 0xBF, 0x00, 0x00,
}

◆ lbColl_UnknownData

u8 lbColl_UnknownData[0xA0]
Initial value:
= {
0x2D, 0x41, 0xD2, 0xBF, 0x1F, 0xFF, 0x2D, 0x41, 0xD2, 0xBF, 0x00, 0x00,
0xC4, 0xE0, 0xE7, 0x83, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x20, 0x00,
0xC0, 0x01, 0x00, 0x00, 0x20, 0x00, 0xC4, 0xE0, 0xE7, 0x83, 0x00, 0x00,
0x2D, 0x41, 0x2D, 0x41, 0x1F, 0xFF, 0x3B, 0x20, 0x18, 0x7D, 0x1F, 0xFF,
0x2D, 0x41, 0x2D, 0x41, 0x00, 0x00, 0xE7, 0x83, 0x3B, 0x20, 0x00, 0x00,
0x00, 0x00, 0x3F, 0xFF, 0x20, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x20, 0x00,
0xE7, 0x83, 0x3B, 0x20, 0x20, 0x00, 0xD2, 0xBF, 0x2D, 0x41, 0x20, 0x00,
0xC4, 0xE0, 0x18, 0x7D, 0xE0, 0x00, 0x3B, 0x20, 0xE7, 0x83, 0x00, 0x00,
0x3B, 0x20, 0xE7, 0x83, 0x1F, 0xFF, 0x3B, 0x20, 0xE7, 0x83, 0x1F, 0xFF,
0x40, 0x00, 0x00, 0x00, 0xE0, 0x01, 0xC4, 0xE0, 0x18, 0x7D, 0xE0, 0x01,
0xD2, 0xBF, 0x2D, 0x41, 0x00, 0x00, 0xD2, 0xBF, 0x2D, 0x41, 0x00, 0x00,
0xC4, 0xE0, 0x18, 0x7D, 0xE0, 0x00, 0x3B, 0x20, 0x18, 0x7D, 0xE0, 0x00,
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3B, 0x20, 0x18, 0x7D,
}

◆ lbColl_CylinderNormals

u8 lbColl_CylinderNormals[0x60]
Initial value:
= {
0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x18, 0xFF, 0xC5,
0x00, 0x00, 0x00, 0x18, 0x00, 0x3B, 0x00, 0x00, 0xFF, 0xD3, 0xFF, 0xD3,
0x00, 0x00, 0xFF, 0xE8, 0xFF, 0xC5, 0x00, 0x00, 0x00, 0x2D, 0xFF, 0xD3,
0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC5, 0xFF, 0xE8,
0x00, 0x00, 0x00, 0x2D, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
0x00, 0x00, 0xFF, 0xE8, 0x00, 0x3B, 0x00, 0x00, 0x00, 0x3B, 0xFF, 0xE8,
0x00, 0x00, 0xFF, 0xD3, 0x00, 0x2D, 0x00, 0x00, 0xFF, 0xC5, 0x00, 0x18,
0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x18,
}

◆ lbColl_CylinderDisplayList

u8 lbColl_CylinderDisplayList[0xA0]
Initial value:
= {
0x98, 0x00, 0x45, 0x2C, 0x0F, 0x2D, 0x0E, 0x2F, 0x0F, 0x2D, 0x0E, 0x2E,
0x0E, 0x24, 0x0B, 0x25, 0x0B, 0x14, 0x05, 0x15, 0x05, 0x08, 0x01, 0x09,
0x01, 0x02, 0x00, 0x03, 0x00, 0x06, 0x04, 0x10, 0x04, 0x07, 0x03, 0x11,
0x03, 0x05, 0x07, 0x17, 0x07, 0x0F, 0x06, 0x18, 0x06, 0x28, 0x0D, 0x2B,
0x0D, 0x29, 0x0C, 0x2A, 0x0C, 0x01, 0x0A, 0x1E, 0x0A, 0x00, 0x09, 0x1F,
0x09, 0x0C, 0x02, 0x0E, 0x02, 0x0D, 0x08, 0x1B, 0x08, 0x2C, 0x0F, 0x1B,
0x08, 0x2F, 0x0F, 0x1D, 0x08, 0x2F, 0x0F, 0x1C, 0x0F, 0x2E, 0x0E, 0x27,
0x0E, 0x25, 0x0B, 0x26, 0x0B, 0x15, 0x05, 0x16, 0x05, 0x09, 0x01, 0x0A,
0x01, 0x03, 0x00, 0x04, 0x00, 0x10, 0x04, 0x13, 0x04, 0x11, 0x03, 0x12,
0x03, 0x17, 0x07, 0x1A, 0x07, 0x18, 0x06, 0x19, 0x06, 0x2B, 0x0D, 0x23,
0x0D, 0x2A, 0x0C, 0x22, 0x0C, 0x1E, 0x0A, 0x21, 0x0A, 0x1F, 0x09, 0x20,
0x09, 0x0E, 0x02, 0x0B, 0x02, 0x1B, 0x08, 0x1D, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00,
}

◆ lbColl_804D7A50

GXColor const lbColl_804D7A50 = { 0 }