SSBM Decomp
Loading...
Searching...
No Matches
grcorneria.c File Reference
#include "grcorneria.h"
#include "granime.h"
#include "grcorneria.static.h"
#include "grdatfiles.h"
#include "grdisplay.h"
#include "grlib.h"
#include "grmaterial.h"
#include "ground.h"
#include "grvenom.h"
#include "grzakogenerator.h"
#include "inlines.h"
#include "stage.h"
#include "types.h"
#include <placeholder.h>
#include "cm/camera.h"
#include "ft/ftlib.h"
#include "gm/gm_1832.h"
#include "gm/gm_1A45.h"
#include "gm/gmregclear.h"
#include "if/ifcoget.h"
#include "if/ifstatus.h"
#include "it/item.h"
#include "it/items/itarwinglaser.h"
#include "it/items/itgreatfoxlaser.h"
#include "lb/lb_00B0.h"
#include "lb/lbaudio_ax.h"
#include "lb/lbspdisplay.h"
#include "mp/mplib.h"
#include "pl/player.h"
#include <dolphin/types.h>
#include <baselib/controller.h>
#include <baselib/debug.h>
#include <baselib/generator.h>
#include <baselib/gobj.h>
#include <baselib/gobjgxlink.h>
#include <baselib/jobj.h>
#include <baselib/random.h>
#include <baselib/sislib.h>

Data Structures

struct  grCorneria_YakumonoParam
struct  grCn_Entry

Functions

void grCorneria_801DCCFC (void)
static s32 grCn_RandRange (s32 imax, s32 imin)
static int grCn_CheckFar (Vec3 *pos)
static void grCn_SpawnArwing (s32 slot, u32 type_id, int group)
static u32 grCn_PickUniqueType (s32 slot, int range, int base)
void grCorneria_801DCE1C (void)
void grCorneria_801DD2C0 (int unused)
void grCorneria_801DD350 (void)
void grCorneria_801DD478 (void)
void grCorneria_801DD508 (void)
bool grCorneria_801DD52C (void)
HSD_GObjgrCorneria_801DD534 (int arg0)
void grCorneria_801DD620 (Ground_GObj *gobj)
bool grCorneria_801DD64C (Ground_GObj *arg)
void grCorneria_801DD654 (Ground_GObj *arg)
void grCorneria_801DD658 (Ground_GObj *arg)
void grCorneria_801DD65C (Ground_GObj *gobj)
void grCorneria_801DD674 (Ground_GObj *ground_gobj)
bool grCorneria_801DD9A0 (Ground_GObj *arg)
void grCorneria_801DD9A8 (Ground_GObj *gobj)
void grCorneria_801DDAC0 (Ground_GObj *arg)
void grCorneria_801DDAC4 (Ground_GObj *gobj)
bool grCorneria_801DDCE8 (Ground_GObj *arg)
void grCorneria_801DDCF0 (Vec3 *vec)
void grCorneria_801DDD4C (Vec3 *vec)
void grCorneria_801DDDA8 (HSD_GObj *gobj, Vec3 *vec)
void grCorneria_801DDE88 (HSD_GObj *gobj)
static void grCorneria_801DE024_inline (Ground_GObj *gobj)
void grCorneria_801DE024 (Ground_GObj *gobj)
void grCorneria_801DE4BC (Ground_GObj *arg)
void grCorneria_Arwing_801DE4C0 (Ground_GObj *gobj)
bool grCorneria_801DE560 (Ground_GObj *arg)
void grCorneria_801DE568 (Ground_GObj *gobj)
void grCorneria_801DE8E0 (Ground_GObj *arg)
void grCorneria_801DE8E4 (Ground_GObj *gobj)
bool grCorneria_801DEC00 (Ground_GObj *arg)
bool grCorneria_801DEC08 (Vec3 *pos)
s32 grCorneria_801DEC94 (Vec3 *pos)
static int randi (int max)
static int get_grp_off (Ground_GObj *gobj)
static Groundget_arwing_ground (HSD_GObj *gobj)
void grCorneria_801DED50 (Ground_GObj *gobj)
void grCorneria_801DF8CC (Ground_GObj *arg)
void grCorneria_801DF8D0 (Ground_GObj *gobj)
bool grCorneria_801DFBC4 (Ground_GObj *arg)
void grCorneria_801DFBCC (Ground_GObj *arg)
void grCorneria_801DFBEC (Ground_GObj *arg)
void grCorneria_801DFBF0 (Ground_GObj *gobj)
bool grCorneria_801DFC1C (Ground_GObj *arg)
void grCorneria_801DFC24 (Ground_GObj *arg)
void grCorneria_801DFC28 (Ground_GObj *arg)
void grCorneria_801DFC2C (Ground_GObj *gobj)
bool grCorneria_801DFC90 (Ground_GObj *arg)
void grCorneria_801DFC98 (Ground_GObj *gobj)
void grCorneria_801DFEB4 (Ground_GObj *arg)
void grCorneria_801DFEB8 (Ground_GObj *gobj)
bool grCorneria_801DFF18 (Ground_GObj *arg)
void grCorneria_801DFF20 (Ground_GObj *gobj)
void grCorneria_801E013C (Ground_GObj *arg)
void grCorneria_801E0140 (Ground_GObj *gobj)
bool grCorneria_801E01A0 (Ground_GObj *arg)
void grCorneria_801E01A8 (Ground_GObj *gobj)
void grCorneria_801E03C4 (Ground_GObj *arg)
UNK_T grCorneria_801E03C8 (Ground_GObj *gobj, int id)
void grCorneria_801E0678 (void)
int grCorneria_801E08CC (void)
int grCorneria_801E0A74 (f32 *arg0)
static void clearX10_b2 (HSD_GObj *gobj)
void grCorneria_801E0C3C (Ground_GObj *gobj)
bool grCorneria_801E0D28 (Ground_GObj *arg)
void grCorneria_801E0D30 (Ground_GObj *gobj)
void grCorneria_801E0DE0 (Ground_GObj *arg)
void grCorneria_801E0DE4 (Ground_GObj *gobj)
bool grCorneria_801E0E0C (Ground_GObj *arg)
void grCorneria_801E0E14 (Ground_GObj *gobj)
void grCorneria_801E0E3C (Ground_GObj *arg)
void grCorneria_801E0E40 (void)
void grCorneria_801E0F30 (Ground_GObj *arg)
void grCorneria_801E0F34 (Ground_GObj *gobj, int val)
bool grCorneria_801E0F64 (Ground_GObj *arg)
void grCorneria_801E0F6C (Ground_GObj *gobj)
void grCorneria_801E1030 (Ground_GObj *gobj)
void grCorneria_801E1054 (Ground_GObj *arg)
bool grCorneria_801E1058 (Ground_GObj *arg)
static void Fake_HSD_JObjSetTranslateX (HSD_JObj *jobj, f32 x)
void grCorneria_801E1060 (Ground_GObj *gobj)
void grCorneria_801E12CC (Ground_GObj *arg)
void fn_801E12D0 (Item_GObj *gobj, Ground *gr)
void fn_801E12D4 (Item_GObj *gobj, Ground *gr, Vec3 *pos, HSD_GObj *arg3, f32 damage)
static f32 grCn_GetX1C (void)
static HSD_JObjgrCn_GetCannonJObj2 (Ground_GObj *gobj)
void grCorneria_801E1348 (Ground_GObj *gobj)
void grCorneria_801E1878 (Ground_GObj *gobj)
void grCorneria_801E1970 (Ground_GObj *gobj)
HSD_GObjgrCorneria_801E1BF0 (void)
void grCorneria_801E2110 (void)
void grCorneria_801E2228 (Ground_GObj *gobj)
HSD_GeneratorgrCorneria_801E2454 (Vec3 *vec, s32 arg1)
HSD_GeneratorgrCorneria_801E2480 (Vec3 *vec, s32 arg1)
void smashTaunt_801E24AC (Ground_GObj *gobj, int renderpass)
 This triggers for both Corneria and Venom.
void smashTaunt_801E2550 (Ground_GObj *gobj, struct grSmashTaunt_GroundVars *gv)
s32 grCorneria_801E2598 (u32 arg0, u32 arg1)
static void grCn_HideJointPair (HSD_GObj *gobj, s16 *joints)
void grCorneria_801E25C4 (HSD_GObj *gobj, struct grSmashTaunt_GroundVars *gv, int line, int arg3, int arg4)
void grCorneria_801E2738 (HSD_GObj *gobj, void *ptr, u32 idx1, u32 idx2)
void grCorneria_801E277C (Ground_GObj *gobj, struct grSmashTaunt_GroundVars *gv)
void grCorneria_801E2A6C (void)
void grCorneria_801E2AF4 (void)
bool grCorneria_801E2B80 (void)
bool grCorneria_801E2C34 (void)
bool grCorneria_801E2CE8 (void)
bool grCorneria_801E2D14 (void)
bool grCorneria_801E2D90 (enum_t line_id)
bool grCorneria_801E2E50 (int line_id)
f32 grCorneria_801E2EA0 (void)
DynamicsDescgrCorneria_801E2EE4 (enum_t arg)
bool grCorneria_801E2EEC (Vec3 *v, int arg1, HSD_JObj *jobj)
f32 grCorneria_801E2FCC (void)

Variables

static struct grCorneria_YakumonoParamyakumono_param
static u32 grCn_804D69A4
static int grCn_804D69A8
static bool grCn_804D69AC
static int grCn_804D69B0
static GrJoint grCn_803E1D38 []
static HSD_GObjarwing_gobjs [3] = { 0 }
static int arwing_types [3] = { 0 }
static int arwing_groups [3] = { 0 }
StageCallbacks grCn_StageCallbacks []
StageData grCn_StageData
Vec3 grCn_803B8090
static Vec3 grCn_803E1F70 [5]
static Vec3 grCn_803E1FAC [5] = { 0 }
static grZakoGenerator_Spawn grCn_803E1FE8 [1]
static grZakoGenerator_Spawn grCn_803E2000 [2]
static int grCn_803E2030 []
static Vec3 lbl_803E2068 []
static int grCn_803E2110 [] = { 2, 2, 2, 2, 10 }
Vec3 grCn_803B809C
Vec3 grCn_803B80A8
static const f32 grCn_ArwingMinX = -10.0f
 Bounds shared by grCorneria_801DE024 and grCorneria_801DED50.
static const f32 grCn_ArwingMaxX = 2000.0f
static int grCn_803E214C [6][2]
static int grCn_803E217C [] = { 0x0D, 0x0D, 0x0E, 0x0F, 0x10 }
static int grCn_803E2190 [5] = { 0, 0, 1, 2, 5 }
Vec3 grCn_803B80B4
static int grCn_803E21B0 [] = { 1, 1, 1, 1, 1 }
int grCn_804D466C = -1
static s16 grCn_803E21F0 [][2]
static grCn_Entry grCn_803E2204 [20][5]
const GXColor grCn_804DB218 = { 0xAE, 0xBA, 0xD6, 0xFF }
const GXColor grCn_804DB21C = { 0xD7, 0xE4, 0xF6, 0xFF }
const GXColor grCn_804DB220 = { 0xE0, 0xEC, 0xFA, 0xFF }
const GXColor grCn_804DB224 = { 0x6A, 0x9E, 0xAD, 0xFF }
const GXColor grCn_804DB228 = { 0x4F, 0x94, 0xB5, 0xFF }
const GXColor grCn_804DB22C = { 0x49, 0x6E, 0x3F, 0xFF }
const GXColor grCn_804DB230 = { 0x6A, 0x9E, 0xAD, 0xFF }
const GXColor grCn_804DB234 = { 0x4F, 0x94, 0xB5, 0xFF }
const GXColor grCn_804DB238 = { 0x00, 0x50, 0x91, 0xFF }
const GXColor grCn_804DB24C = { 0xFF, 0xFF, 0xFF, 0xFF }
const f32 grCn_804DB260 = 107.0f
 Defined after all readers so MWCC loads the named symbols instead of folding the values back into the literal pool.
const f32 grCn_804DB264 = 106.0f
const f32 grCn_804DB268 = -3.4028235e38f

Function Documentation

◆ grCorneria_801DCCFC()

void grCorneria_801DCCFC ( void )

◆ grCn_RandRange()

s32 grCn_RandRange ( s32 imax,
s32 imin )
inlinestatic

◆ grCn_CheckFar()

int grCn_CheckFar ( Vec3 * pos)
inlinestatic

◆ grCn_SpawnArwing()

void grCn_SpawnArwing ( s32 slot,
u32 type_id,
int group )
inlinestatic

◆ grCn_PickUniqueType()

u32 grCn_PickUniqueType ( s32 slot,
int range,
int base )
inlinestatic

◆ grCorneria_801DCE1C()

void grCorneria_801DCE1C ( void )

◆ grCorneria_801DD2C0()

void grCorneria_801DD2C0 ( int unused)

◆ grCorneria_801DD350()

void grCorneria_801DD350 ( void )

◆ grCorneria_801DD478()

void grCorneria_801DD478 ( void )

◆ grCorneria_801DD508()

void grCorneria_801DD508 ( void )

◆ grCorneria_801DD52C()

bool grCorneria_801DD52C ( void )

◆ grCorneria_801DD534()

HSD_GObj * grCorneria_801DD534 ( int arg0)

◆ grCorneria_801DD620()

void grCorneria_801DD620 ( Ground_GObj * gobj)

◆ grCorneria_801DD64C()

bool grCorneria_801DD64C ( Ground_GObj * arg)

◆ grCorneria_801DD654()

void grCorneria_801DD654 ( Ground_GObj * arg)

◆ grCorneria_801DD658()

void grCorneria_801DD658 ( Ground_GObj * arg)

◆ grCorneria_801DD65C()

void grCorneria_801DD65C ( Ground_GObj * gobj)

◆ grCorneria_801DD674()

void grCorneria_801DD674 ( Ground_GObj * ground_gobj)

◆ grCorneria_801DD9A0()

bool grCorneria_801DD9A0 ( Ground_GObj * arg)

◆ grCorneria_801DD9A8()

void grCorneria_801DD9A8 ( Ground_GObj * gobj)

◆ grCorneria_801DDAC0()

void grCorneria_801DDAC0 ( Ground_GObj * arg)

◆ grCorneria_801DDAC4()

void grCorneria_801DDAC4 ( Ground_GObj * gobj)

◆ grCorneria_801DDCE8()

bool grCorneria_801DDCE8 ( Ground_GObj * arg)

◆ grCorneria_801DDCF0()

void grCorneria_801DDCF0 ( Vec3 * vec)

◆ grCorneria_801DDD4C()

void grCorneria_801DDD4C ( Vec3 * vec)

◆ grCorneria_801DDDA8()

void grCorneria_801DDDA8 ( HSD_GObj * gobj,
Vec3 * vec )

◆ grCorneria_801DDE88()

void grCorneria_801DDE88 ( HSD_GObj * gobj)

◆ grCorneria_801DE024_inline()

void grCorneria_801DE024_inline ( Ground_GObj * gobj)
inlinestatic

◆ grCorneria_801DE024()

void grCorneria_801DE024 ( Ground_GObj * gobj)

◆ grCorneria_801DE4BC()

void grCorneria_801DE4BC ( Ground_GObj * arg)

◆ grCorneria_Arwing_801DE4C0()

void grCorneria_Arwing_801DE4C0 ( Ground_GObj * gobj)

◆ grCorneria_801DE560()

bool grCorneria_801DE560 ( Ground_GObj * arg)

◆ grCorneria_801DE568()

void grCorneria_801DE568 ( Ground_GObj * gobj)

◆ grCorneria_801DE8E0()

void grCorneria_801DE8E0 ( Ground_GObj * arg)

◆ grCorneria_801DE8E4()

void grCorneria_801DE8E4 ( Ground_GObj * gobj)

◆ grCorneria_801DEC00()

bool grCorneria_801DEC00 ( Ground_GObj * arg)

◆ grCorneria_801DEC08()

bool grCorneria_801DEC08 ( Vec3 * pos)

◆ grCorneria_801DEC94()

s32 grCorneria_801DEC94 ( Vec3 * pos)
Todo
Stage_IsOutsideBlastZoneWithMargin breaks the fallthrough.

◆ randi()

int randi ( int max)
inlinestatic

◆ get_grp_off()

int get_grp_off ( Ground_GObj * gobj)
inlinestatic

◆ get_arwing_ground()

Ground * get_arwing_ground ( HSD_GObj * gobj)
inlinestatic

◆ grCorneria_801DED50()

void grCorneria_801DED50 ( Ground_GObj * gobj)

◆ grCorneria_801DF8CC()

void grCorneria_801DF8CC ( Ground_GObj * arg)

◆ grCorneria_801DF8D0()

void grCorneria_801DF8D0 ( Ground_GObj * gobj)

◆ grCorneria_801DFBC4()

bool grCorneria_801DFBC4 ( Ground_GObj * arg)

◆ grCorneria_801DFBCC()

void grCorneria_801DFBCC ( Ground_GObj * arg)

◆ grCorneria_801DFBEC()

void grCorneria_801DFBEC ( Ground_GObj * arg)

◆ grCorneria_801DFBF0()

void grCorneria_801DFBF0 ( Ground_GObj * gobj)

◆ grCorneria_801DFC1C()

bool grCorneria_801DFC1C ( Ground_GObj * arg)

◆ grCorneria_801DFC24()

void grCorneria_801DFC24 ( Ground_GObj * arg)

◆ grCorneria_801DFC28()

void grCorneria_801DFC28 ( Ground_GObj * arg)

◆ grCorneria_801DFC2C()

void grCorneria_801DFC2C ( Ground_GObj * gobj)

◆ grCorneria_801DFC90()

bool grCorneria_801DFC90 ( Ground_GObj * arg)

◆ grCorneria_801DFC98()

void grCorneria_801DFC98 ( Ground_GObj * gobj)

◆ grCorneria_801DFEB4()

void grCorneria_801DFEB4 ( Ground_GObj * arg)

◆ grCorneria_801DFEB8()

void grCorneria_801DFEB8 ( Ground_GObj * gobj)

◆ grCorneria_801DFF18()

bool grCorneria_801DFF18 ( Ground_GObj * arg)

◆ grCorneria_801DFF20()

void grCorneria_801DFF20 ( Ground_GObj * gobj)

◆ grCorneria_801E013C()

void grCorneria_801E013C ( Ground_GObj * arg)

◆ grCorneria_801E0140()

void grCorneria_801E0140 ( Ground_GObj * gobj)

◆ grCorneria_801E01A0()

bool grCorneria_801E01A0 ( Ground_GObj * arg)

◆ grCorneria_801E01A8()

void grCorneria_801E01A8 ( Ground_GObj * gobj)

◆ grCorneria_801E03C4()

void grCorneria_801E03C4 ( Ground_GObj * arg)

◆ grCorneria_801E03C8()

UNK_T grCorneria_801E03C8 ( Ground_GObj * gobj,
int id )
Todo
Fake return type, function returns nothing and its return value is not used either

◆ grCorneria_801E0678()

void grCorneria_801E0678 ( void )

◆ grCorneria_801E08CC()

int grCorneria_801E08CC ( void )

◆ grCorneria_801E0A74()

int grCorneria_801E0A74 ( f32 * arg0)

◆ clearX10_b2()

void clearX10_b2 ( HSD_GObj * gobj)
inlinestatic

◆ grCorneria_801E0C3C()

void grCorneria_801E0C3C ( Ground_GObj * gobj)

◆ grCorneria_801E0D28()

bool grCorneria_801E0D28 ( Ground_GObj * arg)

◆ grCorneria_801E0D30()

void grCorneria_801E0D30 ( Ground_GObj * gobj)

◆ grCorneria_801E0DE0()

void grCorneria_801E0DE0 ( Ground_GObj * arg)

◆ grCorneria_801E0DE4()

void grCorneria_801E0DE4 ( Ground_GObj * gobj)

◆ grCorneria_801E0E0C()

bool grCorneria_801E0E0C ( Ground_GObj * arg)

◆ grCorneria_801E0E14()

void grCorneria_801E0E14 ( Ground_GObj * gobj)

◆ grCorneria_801E0E3C()

void grCorneria_801E0E3C ( Ground_GObj * arg)

◆ grCorneria_801E0E40()

void grCorneria_801E0E40 ( void )

◆ grCorneria_801E0F30()

void grCorneria_801E0F30 ( Ground_GObj * arg)

◆ grCorneria_801E0F34()

void grCorneria_801E0F34 ( Ground_GObj * gobj,
int val )

◆ grCorneria_801E0F64()

bool grCorneria_801E0F64 ( Ground_GObj * arg)

◆ grCorneria_801E0F6C()

void grCorneria_801E0F6C ( Ground_GObj * gobj)

◆ grCorneria_801E1030()

void grCorneria_801E1030 ( Ground_GObj * gobj)

◆ grCorneria_801E1054()

void grCorneria_801E1054 ( Ground_GObj * arg)

◆ grCorneria_801E1058()

bool grCorneria_801E1058 ( Ground_GObj * arg)

◆ Fake_HSD_JObjSetTranslateX()

void Fake_HSD_JObjSetTranslateX ( HSD_JObj * jobj,
f32 x )
inlinestatic

◆ grCorneria_801E1060()

void grCorneria_801E1060 ( Ground_GObj * gobj)

◆ grCorneria_801E12CC()

void grCorneria_801E12CC ( Ground_GObj * arg)

◆ fn_801E12D0()

void fn_801E12D0 ( Item_GObj * gobj,
Ground * gr )

◆ fn_801E12D4()

void fn_801E12D4 ( Item_GObj * gobj,
Ground * gr,
Vec3 * pos,
HSD_GObj * arg3,
f32 damage )

◆ grCn_GetX1C()

f32 grCn_GetX1C ( void )
inlinestatic

◆ grCn_GetCannonJObj2()

HSD_JObj * grCn_GetCannonJObj2 ( Ground_GObj * gobj)
inlinestatic

◆ grCorneria_801E1348()

void grCorneria_801E1348 ( Ground_GObj * gobj)

◆ grCorneria_801E1878()

void grCorneria_801E1878 ( Ground_GObj * gobj)
Remarks
Splitting the pad around a scoped pos places the vector at sp+0x18 as in the target; a function-scope pos with a single PAD_STACK(16) leaves it at sp+0x24 (six reg-save/load instructions arg-mismatch, 99.90%).

◆ grCorneria_801E1970()

void grCorneria_801E1970 ( Ground_GObj * gobj)

◆ grCorneria_801E1BF0()

HSD_GObj * grCorneria_801E1BF0 ( void )

◆ grCorneria_801E2110()

void grCorneria_801E2110 ( void )

◆ grCorneria_801E2228()

void grCorneria_801E2228 ( Ground_GObj * gobj)

◆ grCorneria_801E2454()

HSD_Generator * grCorneria_801E2454 ( Vec3 * vec,
s32 arg1 )

◆ grCorneria_801E2480()

HSD_Generator * grCorneria_801E2480 ( Vec3 * vec,
s32 arg1 )

◆ smashTaunt_801E24AC()

void smashTaunt_801E24AC ( Ground_GObj * gobj,
int renderpass )

This triggers for both Corneria and Venom.

◆ smashTaunt_801E2550()

void smashTaunt_801E2550 ( Ground_GObj * gobj,
struct grSmashTaunt_GroundVars * gv )

◆ grCorneria_801E2598()

s32 grCorneria_801E2598 ( u32 arg0,
u32 arg1 )

◆ grCn_HideJointPair()

void grCn_HideJointPair ( HSD_GObj * gobj,
s16 * joints )
inlinestatic

◆ grCorneria_801E25C4()

void grCorneria_801E25C4 ( HSD_GObj * gobj,
struct grSmashTaunt_GroundVars * gv,
int line,
int arg3,
int arg4 )
Todo
Only differs by a callee-saved register permutation.

◆ grCorneria_801E2738()

void grCorneria_801E2738 ( HSD_GObj * gobj,
void * ptr,
u32 idx1,
u32 idx2 )

◆ grCorneria_801E277C()

void grCorneria_801E277C ( Ground_GObj * gobj,
struct grSmashTaunt_GroundVars * gv )

◆ grCorneria_801E2A6C()

void grCorneria_801E2A6C ( void )

◆ grCorneria_801E2AF4()

void grCorneria_801E2AF4 ( void )

◆ grCorneria_801E2B80()

bool grCorneria_801E2B80 ( void )

◆ grCorneria_801E2C34()

bool grCorneria_801E2C34 ( void )

◆ grCorneria_801E2CE8()

bool grCorneria_801E2CE8 ( void )

◆ grCorneria_801E2D14()

bool grCorneria_801E2D14 ( void )

◆ grCorneria_801E2D90()

bool grCorneria_801E2D90 ( enum_t line_id)

◆ grCorneria_801E2E50()

bool grCorneria_801E2E50 ( int line_id)

◆ grCorneria_801E2EA0()

f32 grCorneria_801E2EA0 ( void )

◆ grCorneria_801E2EE4()

DynamicsDesc * grCorneria_801E2EE4 ( enum_t arg)

◆ grCorneria_801E2EEC()

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

◆ grCorneria_801E2FCC()

f32 grCorneria_801E2FCC ( void )

Variable Documentation

◆ yakumono_param

struct grCorneria_YakumonoParam* yakumono_param
static

◆ grCn_804D69A4

u32 grCn_804D69A4
static

◆ grCn_804D69A8

int grCn_804D69A8
static

◆ grCn_804D69AC

bool grCn_804D69AC
static

◆ grCn_804D69B0

int grCn_804D69B0
static

◆ grCn_803E1D38

GrJoint grCn_803E1D38[]
static
Initial value:
= {
{ 3, 3, 0 }, { 4, 3, 0 }, { 0, 13, 0 }, { 1, 14, 0 },
{ 2, 15, 0 }, { 5, 16, 0 }, { 6, 17, 0 }, { 7, 18, 0 },
}

◆ arwing_gobjs

HSD_GObj* arwing_gobjs[3] = { 0 }
static

◆ arwing_types

int arwing_types[3] = { 0 }
static

◆ arwing_groups

int arwing_groups[3] = { 0 }
static

◆ grCn_StageCallbacks

StageCallbacks grCn_StageCallbacks[]

◆ grCn_StageData

StageData grCn_StageData
Initial value:
= {
"/GrCn",
(1 << 0),
}
#define ARRAY_SIZE(arr)
Definition types.h:31
DynamicsDesc * grCorneria_801E2EE4(enum_t arg)
Definition grcorneria.c:2797
void grCorneria_801DD2C0(int unused)
Definition grcorneria.c:469
void grCorneria_801DD508(void)
Definition grcorneria.c:554
bool grCorneria_801E2EEC(Vec3 *v, int arg1, HSD_JObj *jobj)
Definition grcorneria.c:2806
void grCorneria_801DD478(void)
Definition grcorneria.c:526
StageCallbacks grCn_StageCallbacks[]
Definition grcorneria.c:94
bool grCorneria_801DD52C(void)
Definition grcorneria.c:559
void grCorneria_801DD350(void)
Definition grcorneria.c:495
static GrJoint grCn_803E1D38[]
Definition grcorneria.c:85
@ Gr_Kind_Corneria
Definition forward.h:69

◆ grCn_803B8090

Vec3 grCn_803B8090
extern

◆ grCn_803E1F70

Vec3 grCn_803E1F70[5]
static
Initial value:
= {
{ -274.14, 48.58, 0 }, { -200.81, -20.1, 0 }, { -59.31, -58.74, 0 },
{ -40.19, -73.77, 0 }, { 78.44, -73.48, 0 },
}

◆ grCn_803E1FAC

Vec3 grCn_803E1FAC[5] = { 0 }
static

◆ grCn_803E1FE8

grZakoGenerator_Spawn grCn_803E1FE8[1]
static
Initial value:
= {
{ -59, -58, 18, -22, -73, 0 },
}

◆ grCn_803E2000

grZakoGenerator_Spawn grCn_803E2000[2]
static
Initial value:
= {
{ -81, -21, 28, 14, -59, 128 },
{ 14, -59, 128, 0, -75, 173 },
}

◆ grCn_803E2030

int grCn_803E2030[]
static
Initial value:
= {
-1, 0, 1, 2, 3, 4, 5, 6, 6, 6, 7, 8, 9, 10,
}

◆ lbl_803E2068

Vec3 lbl_803E2068[]
static
Initial value:
= {
{ 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, { 0, 0, 0 }, { -40, 10, 0 }, { 15, 5, 0 }, { 190, -10, 0 },
{ 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 },
}

◆ grCn_803E2110

int grCn_803E2110[] = { 2, 2, 2, 2, 10 }
static

◆ grCn_803B809C

Vec3 grCn_803B809C
extern

◆ grCn_803B80A8

Vec3 grCn_803B80A8
extern

◆ grCn_ArwingMinX

const f32 grCn_ArwingMinX = -10.0f
static

Bounds shared by grCorneria_801DE024 and grCorneria_801DED50.

Volatile reads keep MWCC from duplicating them later in the literal pool.

◆ grCn_ArwingMaxX

const f32 grCn_ArwingMaxX = 2000.0f
static

◆ grCn_803E214C

int grCn_803E214C[6][2]
static
Initial value:
= {
{ -1, -1 }, { 1, 0 }, { 2, 2 }, { 4, 4 }, { 5, 5 }, { -1, -1 },
}

◆ grCn_803E217C

int grCn_803E217C[] = { 0x0D, 0x0D, 0x0E, 0x0F, 0x10 }
static

◆ grCn_803E2190

int grCn_803E2190[5] = { 0, 0, 1, 2, 5 }
static

◆ grCn_803B80B4

Vec3 grCn_803B80B4
extern

◆ grCn_803E21B0

int grCn_803E21B0[] = { 1, 1, 1, 1, 1 }
static

◆ grCn_804D466C

int grCn_804D466C = -1

◆ grCn_803E21F0

s16 grCn_803E21F0[][2]
static
Initial value:
= {
{ 0, 0 }, { 1, 6 }, { 2, 7 }, { 3, 8 }, { 4, 9 },
}

◆ grCn_803E2204

grCn_Entry grCn_803E2204[20][5]
static

◆ grCn_804DB218

const GXColor grCn_804DB218 = { 0xAE, 0xBA, 0xD6, 0xFF }

◆ grCn_804DB21C

const GXColor grCn_804DB21C = { 0xD7, 0xE4, 0xF6, 0xFF }

◆ grCn_804DB220

const GXColor grCn_804DB220 = { 0xE0, 0xEC, 0xFA, 0xFF }

◆ grCn_804DB224

const GXColor grCn_804DB224 = { 0x6A, 0x9E, 0xAD, 0xFF }

◆ grCn_804DB228

const GXColor grCn_804DB228 = { 0x4F, 0x94, 0xB5, 0xFF }

◆ grCn_804DB22C

const GXColor grCn_804DB22C = { 0x49, 0x6E, 0x3F, 0xFF }

◆ grCn_804DB230

const GXColor grCn_804DB230 = { 0x6A, 0x9E, 0xAD, 0xFF }

◆ grCn_804DB234

const GXColor grCn_804DB234 = { 0x4F, 0x94, 0xB5, 0xFF }

◆ grCn_804DB238

const GXColor grCn_804DB238 = { 0x00, 0x50, 0x91, 0xFF }

◆ grCn_804DB24C

const GXColor grCn_804DB24C = { 0xFF, 0xFF, 0xFF, 0xFF }

◆ grCn_804DB260

const f32 grCn_804DB260 = 107.0f

Defined after all readers so MWCC loads the named symbols instead of folding the values back into the literal pool.

◆ grCn_804DB264

const f32 grCn_804DB264 = 106.0f

◆ grCn_804DB268

const f32 grCn_804DB268 = -3.4028235e38f