SSBM Decomp
Loading...
Searching...
No Matches
grcastle.c File Reference
#include "grcastle.h"
#include "placeholder.h"
#include "types.h"
#include "baselib/debug.h"
#include "cm/camera.h"
#include "ft/ft_0C31.h"
#include "ft/ftdevice.h"
#include "ft/ftlib.h"
#include "gm/gm_16AE.h"
#include "gr/granime.h"
#include "gr/grdatfiles.h"
#include "gr/grdisplay.h"
#include "gr/grlib.h"
#include "gr/grmaterial.h"
#include "gr/ground.h"
#include "gr/grzakogenerator.h"
#include "gr/inlines.h"
#include "it/it_266F.h"
#include "it/it_26B1.h"
#include "it/it_2725.h"
#include "lb/lb_00B0.h"
#include "lb/lb_00F9.h"
#include "lb/lbvector.h"
#include "lb/types.h"
#include "mp/mplib.h"
#include <dolphin/mtx.h>
#include <baselib/archive.h>
#include <baselib/gobj.h>
#include <baselib/gobjgxlink.h>
#include <baselib/gobjproc.h>
#include <baselib/jobj.h>
#include <baselib/psstructs.h>
#include <baselib/random.h>
#include <baselib/spline.h>
#include <MetroTRK/intrinsics.h>
#include <MSL/trigf.h>

Data Structures

struct  grCastleParams_Entry
 
struct  grCastleParams
 
struct  grCastle_PlatSubObj
 
struct  grCastle_BlinkTable
 
struct  grCastle_DynEntry
 
struct  grCastle_DynEntries
 
struct  grCastle_YOffsets
 
struct  grCastle_WeightTable
 
struct  grCastle_TargetEntry
 
struct  grCastle_TargetTable
 

Macros

#define __FILE__   "jobj.h"
 

Functions

void grCastle_801CD338 (bool arg0)
 
void grCastle_801CD37C (void)
 
void grCastle_801CD4A0 (void)
 
void grCastle_801CD4A4 (void)
 
bool grCastle_801CD4C8 (void)
 
HSD_GObjgrCastle_801CD4D0 (int gobj_id)
 
void grCastle_801CD5BC (Ground_GObj *gobj)
 
bool grCastle_801CD600 (Ground_GObj *gobj)
 
void grCastle_801CD608 (Ground_GObj *gobj)
 
void grCastle_801CD60C (Ground_GObj *gobj)
 
void grCastle_801CD610 (Ground_GObj *gobj)
 
void grCastle_801CD658 (Ground_GObj *gobj)
 
bool grCastle_801CD8A0 (Ground_GObj *gobj)
 
void grCastle_801CD8A8 (Ground_GObj *gobj)
 
void grCastle_801CD960 (Ground_GObj *gobj)
 
void grCastle_801CD9B4 (Ground_GObj *gobj)
 
void grCastle_801CDA0C (Ground_GObj *gobj)
 
bool grCastle_801CDC3C (Ground_GObj *gobj)
 
void grCastle_801CDC44 (Ground_GObj *gobj)
 
void grCastle_801CDF50 (Ground_GObj *gobj)
 
bool grCastle_801CDF54 (Vec3 *vec)
 
void grCastle_801CDFD8 (Ground_GObj *gobj)
 
s32 grCastle_801CE054 (Ground_GObj *gobj)
 
void grCastle_801CE19C (Ground_GObj *gobj)
 
void grCastle_801CE260 (Ground_GObj *gobj)
 
void fn_801CE3A0 (void)
 
bool grCastle_801CE3A4 (Ground_GObj *gobj)
 
void grCastle_801CE3AC_dontinline (Ground_GObj *gobj)
 
void grCastle_801CE3AC (Ground_GObj *gobj)
 
void fake_HSD_JObjSetTranslate (HSD_JObj *jobj, Vec3 *translate)
 
void grCastle_801CE578 (Ground_GObj *gobj)
 
void grCastle_801CE7E4 (Ground_GObj *gobj)
 
void grCastle_801CE7E8 (Ground_GObj *gobj)
 
bool grCastle_801CE858 (Ground_GObj *gobj)
 
void grCastle_801CE860 (Ground_GObj *gobj)
 
void grCastle_801CE8E4 (Ground_GObj *gobj)
 
void grCastle_801CE8E8 (Ground_GObj *gobj)
 
void fn_801CE9DC (void)
 
bool grCastle_801CE9E0 (Ground_GObj *gobj)
 
void grCastle_801CE9E8 (Ground_GObj *gobj)
 
void grCastle_801CEAC8 (Ground_GObj *gobj)
 
void zero (Ground *gp, int i, f32 zero)
 
void grCastle_801CEACC (Ground_GObj *gobj)
 
bool grCastle_801CEEFC (Ground_GObj *gobj)
 
void grCastle_801CEF04 (Ground_GObj *gobj)
 
void grCastle_801CF0F0 (Ground_GObj *gobj)
 
void grCastle_801CF0F4 (Ground_GObj *gobj)
 
bool grCastle_801CF300 (Ground_GObj *gobj)
 
void grCastle_801CF308 (Ground_GObj *gobj)
 
void grCastle_801CF74C (Ground_GObj *gobj)
 
void grCastle_801CF750 (Ground *gp, s32 arg1, CollData *cd, s32 arg3, mpLib_GroundEnum arg4, f32 arg5)
 
void grCastle_801CF7B0 (Ground_GObj *gobj)
 
HSD_JObjgrCastle_801CF868 (Ground_GObj *gobj)
 
void fn_801CFAFC (Item_GObj *item, Ground *gp, Vec3 *pos, HSD_GObj *gobj)
 
void fn_801CFB68 (Item_GObj *item_gobj, Ground *gp, HSD_GObj *gobj)
 
s32 grCastle_801CFBD4 (Ground_GObj *gobj, s32 arg1)
 
bool grCastle_801D0298 (Ground_GObj *gobj, s32 arg1)
 
void grCastle_801D02B8 (Ground_GObj *gobj)
 
void grCastle_801D0520 (Ground_GObj *gobj, int renderpass)
 
static void grCastle_801D0550_sub (unkCastle *arg0, s32 i)
 
void grCastle_801D0550 (void *arg0, unkCastle *arg1)
 
void grCastle_801D059C (void *arg0, unkCastle *arg1)
 
void grCastle_801D05E8 (void *arg0, unkCastle *arg1)
 
void grCastle_801D0634 (void *arg0, unkCastle *arg1)
 
void grCastle_801D0680 (void *arg0, unkCastle *arg1)
 
static void grCastle_801D06CC_sub (unkCastle *arg0, Ground_GObj *gobj, s32 i)
 
void grCastle_801D06CC (void *arg0, unkCastle *arg1, Ground_GObj *gobj)
 
void grCastle_801D0744 (void *arg0, unkCastle *arg1, Ground_GObj *gobj)
 
void grCastle_801D07BC (void *arg0, unkCastle *arg1, Ground_GObj *gobj)
 
void grCastle_801D0834 (void *arg0, unkCastle *arg1, Ground_GObj *gobj)
 
void grCastle_801D08AC (void *arg0, unkCastle *arg1, Ground_GObj *gobj)
 
void fn_801D0924 (HSD_GObj *gobj, int renderpass)
 
bool grCastle_801D09B8 (void *unused, HSD_GObj *gobj, Vec3 *arg2)
 
DynamicsDescgrCastle_801D0B04 (enum_t arg)
 
bool grCastle_801D0B0C (Vec3 *v, int arg1, HSD_JObj *jobj)
 
void grCastle_801D0A9C (Vec3 *arg0, f32 arg8)
 
void grCastle_801D0BBC ()
 
void grCastle_801D0D24 ()
 
void grCastle_801D0D84 (HSD_JObj *jobj)
 
f32 grCastle_801D0FF0 (void)
 

Variables

const unkCastleCallback grCs_803B7F28 [5]
 
const unkCastleCallback2 grCs_803B7F3C [5]
 
S16Vec3 grCs_803E0FE8 []
 
StageCallbacks grCs_803E0FF4 [21]
 
StageData grCs_803E11A4
 
static f32 grCs_804D45E0 = 0.017453292f
 
static u8 grCs_804D45E4 = 1
 
static grCastleParamsgrCs_804D6970
 
static struct lb_80011A50_tgrCs_804D6974
 
static const Quaternion grCs_803B7EB8 = { 0.0f, 0.0f, 0.0f, 1.0f }
 
static const grCastle_BlinkTable grCs_803B7EC8
 
static const Vec3 grCs_803B7E9C = { -257.0f, 13.5f, -252.0f }
 
static const grCastle_DynEntries grCs_803B7EA8
 
static const grCastle_YOffsets grCs_803B7F50
 
static const grCastle_WeightTable grCs_803B7EF0 = { { 0, 0, 0 } }
 
static const grCastle_TargetTable grCs_803B7EFC
 

Macro Definition Documentation

◆ __FILE__

#define __FILE__   "jobj.h"

Function Documentation

◆ grCastle_801CD338()

void grCastle_801CD338 ( bool  arg0)

◆ grCastle_801CD37C()

void grCastle_801CD37C ( void  )

◆ grCastle_801CD4A0()

void grCastle_801CD4A0 ( void  )

◆ grCastle_801CD4A4()

void grCastle_801CD4A4 ( void  )

◆ grCastle_801CD4C8()

bool grCastle_801CD4C8 ( void  )

◆ grCastle_801CD4D0()

HSD_GObj * grCastle_801CD4D0 ( int  gobj_id)

◆ grCastle_801CD5BC()

void grCastle_801CD5BC ( Ground_GObj gobj)

◆ grCastle_801CD600()

bool grCastle_801CD600 ( Ground_GObj gobj)

◆ grCastle_801CD608()

void grCastle_801CD608 ( Ground_GObj gobj)

◆ grCastle_801CD60C()

void grCastle_801CD60C ( Ground_GObj gobj)

◆ grCastle_801CD610()

void grCastle_801CD610 ( Ground_GObj gobj)

◆ grCastle_801CD658()

void grCastle_801CD658 ( Ground_GObj gobj)

◆ grCastle_801CD8A0()

bool grCastle_801CD8A0 ( Ground_GObj gobj)

◆ grCastle_801CD8A8()

void grCastle_801CD8A8 ( Ground_GObj gobj)

◆ grCastle_801CD960()

void grCastle_801CD960 ( Ground_GObj gobj)

◆ grCastle_801CD9B4()

void grCastle_801CD9B4 ( Ground_GObj gobj)

◆ grCastle_801CDA0C()

void grCastle_801CDA0C ( Ground_GObj gobj)

◆ grCastle_801CDC3C()

bool grCastle_801CDC3C ( Ground_GObj gobj)

◆ grCastle_801CDC44()

void grCastle_801CDC44 ( Ground_GObj gobj)

◆ grCastle_801CDF50()

void grCastle_801CDF50 ( Ground_GObj gobj)

◆ grCastle_801CDF54()

bool grCastle_801CDF54 ( Vec3 *  vec)

◆ grCastle_801CDFD8()

void grCastle_801CDFD8 ( Ground_GObj gobj)

◆ grCastle_801CE054()

s32 grCastle_801CE054 ( Ground_GObj gobj)

◆ grCastle_801CE19C()

void grCastle_801CE19C ( Ground_GObj gobj)

◆ grCastle_801CE260()

void grCastle_801CE260 ( Ground_GObj gobj)

◆ fn_801CE3A0()

void fn_801CE3A0 ( void  )

◆ grCastle_801CE3A4()

bool grCastle_801CE3A4 ( Ground_GObj gobj)

◆ grCastle_801CE3AC_dontinline()

void grCastle_801CE3AC_dontinline ( Ground_GObj gobj)

◆ grCastle_801CE3AC()

void grCastle_801CE3AC ( Ground_GObj gobj)

◆ fake_HSD_JObjSetTranslate()

void fake_HSD_JObjSetTranslate ( HSD_JObj jobj,
Vec3 *  translate 
)
inline

◆ grCastle_801CE578()

void grCastle_801CE578 ( Ground_GObj gobj)

◆ grCastle_801CE7E4()

void grCastle_801CE7E4 ( Ground_GObj gobj)

◆ grCastle_801CE7E8()

void grCastle_801CE7E8 ( Ground_GObj gobj)

◆ grCastle_801CE858()

bool grCastle_801CE858 ( Ground_GObj gobj)

◆ grCastle_801CE860()

void grCastle_801CE860 ( Ground_GObj gobj)

◆ grCastle_801CE8E4()

void grCastle_801CE8E4 ( Ground_GObj gobj)

◆ grCastle_801CE8E8()

void grCastle_801CE8E8 ( Ground_GObj gobj)

◆ fn_801CE9DC()

void fn_801CE9DC ( void  )

◆ grCastle_801CE9E0()

bool grCastle_801CE9E0 ( Ground_GObj gobj)

◆ grCastle_801CE9E8()

void grCastle_801CE9E8 ( Ground_GObj gobj)

◆ grCastle_801CEAC8()

void grCastle_801CEAC8 ( Ground_GObj gobj)

◆ zero()

void zero ( Ground gp,
int  i,
f32  zero 
)
inline

◆ grCastle_801CEACC()

void grCastle_801CEACC ( Ground_GObj gobj)

◆ grCastle_801CEEFC()

bool grCastle_801CEEFC ( Ground_GObj gobj)

◆ grCastle_801CEF04()

void grCastle_801CEF04 ( Ground_GObj gobj)

◆ grCastle_801CF0F0()

void grCastle_801CF0F0 ( Ground_GObj gobj)

◆ grCastle_801CF0F4()

void grCastle_801CF0F4 ( Ground_GObj gobj)

◆ grCastle_801CF300()

bool grCastle_801CF300 ( Ground_GObj gobj)

◆ grCastle_801CF308()

void grCastle_801CF308 ( Ground_GObj gobj)

◆ grCastle_801CF74C()

void grCastle_801CF74C ( Ground_GObj gobj)

◆ grCastle_801CF750()

void grCastle_801CF750 ( Ground gp,
s32  arg1,
CollData cd,
s32  arg3,
mpLib_GroundEnum  arg4,
f32  arg5 
)

◆ grCastle_801CF7B0()

void grCastle_801CF7B0 ( Ground_GObj gobj)

◆ grCastle_801CF868()

HSD_JObj * grCastle_801CF868 ( Ground_GObj gobj)

◆ fn_801CFAFC()

void fn_801CFAFC ( Item_GObj item,
Ground gp,
Vec3 *  pos,
HSD_GObj gobj 
)

◆ fn_801CFB68()

void fn_801CFB68 ( Item_GObj item_gobj,
Ground gp,
HSD_GObj gobj 
)

◆ grCastle_801CFBD4()

s32 grCastle_801CFBD4 ( Ground_GObj gobj,
s32  arg1 
)

◆ grCastle_801D0298()

bool grCastle_801D0298 ( Ground_GObj gobj,
s32  arg1 
)

◆ grCastle_801D02B8()

void grCastle_801D02B8 ( Ground_GObj gobj)

◆ grCastle_801D0520()

void grCastle_801D0520 ( Ground_GObj gobj,
int  renderpass 
)

◆ grCastle_801D0550_sub()

static void grCastle_801D0550_sub ( unkCastle arg0,
s32  i 
)
inlinestatic

◆ grCastle_801D0550()

void grCastle_801D0550 ( void *  arg0,
unkCastle arg1 
)

◆ grCastle_801D059C()

void grCastle_801D059C ( void *  arg0,
unkCastle arg1 
)

◆ grCastle_801D05E8()

void grCastle_801D05E8 ( void *  arg0,
unkCastle arg1 
)

◆ grCastle_801D0634()

void grCastle_801D0634 ( void *  arg0,
unkCastle arg1 
)

◆ grCastle_801D0680()

void grCastle_801D0680 ( void *  arg0,
unkCastle arg1 
)

◆ grCastle_801D06CC_sub()

static void grCastle_801D06CC_sub ( unkCastle arg0,
Ground_GObj gobj,
s32  i 
)
static

◆ grCastle_801D06CC()

void grCastle_801D06CC ( void *  arg0,
unkCastle arg1,
Ground_GObj gobj 
)

◆ grCastle_801D0744()

void grCastle_801D0744 ( void *  arg0,
unkCastle arg1,
Ground_GObj gobj 
)

◆ grCastle_801D07BC()

void grCastle_801D07BC ( void *  arg0,
unkCastle arg1,
Ground_GObj gobj 
)

◆ grCastle_801D0834()

void grCastle_801D0834 ( void *  arg0,
unkCastle arg1,
Ground_GObj gobj 
)

◆ grCastle_801D08AC()

void grCastle_801D08AC ( void *  arg0,
unkCastle arg1,
Ground_GObj gobj 
)

◆ fn_801D0924()

void fn_801D0924 ( HSD_GObj gobj,
int  renderpass 
)

◆ grCastle_801D09B8()

bool grCastle_801D09B8 ( void *  unused,
HSD_GObj gobj,
Vec3 *  arg2 
)

◆ grCastle_801D0B04()

DynamicsDesc * grCastle_801D0B04 ( enum_t  arg)

◆ grCastle_801D0B0C()

bool grCastle_801D0B0C ( Vec3 *  v,
int  arg1,
HSD_JObj jobj 
)

◆ grCastle_801D0A9C()

void grCastle_801D0A9C ( Vec3 *  arg0,
f32  arg8 
)

◆ grCastle_801D0BBC()

void grCastle_801D0BBC ( void  )

◆ grCastle_801D0D24()

void grCastle_801D0D24 ( )

◆ grCastle_801D0D84()

void grCastle_801D0D84 ( HSD_JObj jobj)

◆ grCastle_801D0FF0()

f32 grCastle_801D0FF0 ( void  )

Variable Documentation

◆ grCs_803B7F28

const unkCastleCallback grCs_803B7F28[5]
Initial value:
= {
}
void grCastle_801D05E8(void *arg0, unkCastle *arg1)
Definition grcastle.c:1800
void grCastle_801D0550(void *arg0, unkCastle *arg1)
Definition grcastle.c:1788
void grCastle_801D0634(void *arg0, unkCastle *arg1)
Definition grcastle.c:1806
void grCastle_801D059C(void *arg0, unkCastle *arg1)
Definition grcastle.c:1794
void grCastle_801D0680(void *arg0, unkCastle *arg1)
Definition grcastle.c:1812

◆ grCs_803B7F3C

const unkCastleCallback2 grCs_803B7F3C[5]
Initial value:
= {
}
void grCastle_801D0744(void *arg0, unkCastle *arg1, Ground_GObj *gobj)
Definition grcastle.c:1833
void grCastle_801D07BC(void *arg0, unkCastle *arg1, Ground_GObj *gobj)
Definition grcastle.c:1838
void grCastle_801D06CC(void *arg0, unkCastle *arg1, Ground_GObj *gobj)
Definition grcastle.c:1828
void grCastle_801D0834(void *arg0, unkCastle *arg1, Ground_GObj *gobj)
Definition grcastle.c:1843
void grCastle_801D08AC(void *arg0, unkCastle *arg1, Ground_GObj *gobj)
Definition grcastle.c:1848

◆ grCs_803E0FE8

S16Vec3 grCs_803E0FE8[]
Initial value:
= {
{ 4, 6, 1 },
{ 5, 6, 4 },
}

◆ grCs_803E0FF4

StageCallbacks grCs_803E0FF4[21]

◆ grCs_803E11A4

StageData grCs_803E11A4
Initial value:
= {
"/GrCs.dat",
(1 << 0),
2,
}
S16Vec3 grCs_803E0FE8[]
Definition grcastle.c:51
void grCastle_801CD4A0(void)
Definition grcastle.c:304
bool grCastle_801D0B0C(Vec3 *v, int arg1, HSD_JObj *jobj)
Definition grcastle.c:1911
void grCastle_801CD338(bool arg0)
Definition grcastle.c:254
DynamicsDesc * grCastle_801D0B04(enum_t arg)
Definition grcastle.c:1906
bool grCastle_801CD4C8(void)
Definition grcastle.c:311
void grCastle_801CD37C(void)
Definition grcastle.c:268
void grCastle_801CD4A4(void)
Definition grcastle.c:306
StageCallbacks grCs_803E0FF4[21]
Definition grcastle.c:56
@ CASTLE
Princess Peach's Castle.
Definition forward.h:50

◆ grCs_804D45E0

f32 grCs_804D45E0 = 0.017453292f
static

◆ grCs_804D45E4

u8 grCs_804D45E4 = 1
static

◆ grCs_804D6970

grCastleParams* grCs_804D6970
static

◆ grCs_804D6974

struct lb_80011A50_t* grCs_804D6974
static

◆ grCs_803B7EB8

const Quaternion grCs_803B7EB8 = { 0.0f, 0.0f, 0.0f, 1.0f }
static

◆ grCs_803B7EC8

const grCastle_BlinkTable grCs_803B7EC8
static
Initial value:
= {
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}

◆ grCs_803B7E9C

const Vec3 grCs_803B7E9C = { -257.0f, 13.5f, -252.0f }
static

◆ grCs_803B7EA8

const grCastle_DynEntries grCs_803B7EA8
static
Initial value:
= { {
{ 66, 6 },
{ 76, 6 },
{ 85, 6 },
{ 94, 6 },
} }

◆ grCs_803B7F50

const grCastle_YOffsets grCs_803B7F50
static
Initial value:
= { {
4.0f,
6.0f,
7.0f,
6.0f,
4.0f,
-1.0f,
} }

◆ grCs_803B7EF0

const grCastle_WeightTable grCs_803B7EF0 = { { 0, 0, 0 } }
static

◆ grCs_803B7EFC

const grCastle_TargetTable grCs_803B7EFC
static
Initial value:
= { {
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
{ 0, 0 },
} }