You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
Name some more stuff
This commit is contained in:
@@ -925,10 +925,6 @@
|
||||
// Secrets/Red Coins
|
||||
#define /*0x0F4*/ oHiddenStarTriggerCounter OBJECT_FIELD_S32(0x1B)
|
||||
|
||||
// Overall very difficult to determine usage, mostly stubbed code.
|
||||
/* Sparkle Spawn Star */
|
||||
#define /*0x1B0*/ oSparkleSpawnUnk1B0 OBJECT_FIELD_S32(0x4A)
|
||||
|
||||
/* Sealed Door Star */
|
||||
#define /*0x108*/ oUnlockDoorStarState OBJECT_FIELD_U32(0x20)
|
||||
#define /*0x10C*/ oUnlockDoorStarTimer OBJECT_FIELD_S32(0x21)
|
||||
|
||||
@@ -76,6 +76,6 @@ void geo_layout_cmd_node_held_obj(void);
|
||||
void geo_layout_cmd_node_culling_radius(void);
|
||||
void geo_layout_cmd_bone(void);
|
||||
|
||||
struct GraphNode *process_geo_layout(struct AllocOnlyPool *a0, void *segptr);
|
||||
struct GraphNode *process_geo_layout(struct AllocOnlyPool *pool, void *segptr);
|
||||
|
||||
#endif // GEO_LAYOUT_H
|
||||
|
||||
@@ -91,12 +91,12 @@ const char *gNoControllerMsg[] = {
|
||||
};
|
||||
#endif
|
||||
|
||||
void override_viewport_and_clip(Vp *a, Vp *b, u8 c, u8 d, u8 e) {
|
||||
u16 sp6 = ((c >> 3) << 11) | ((d >> 3) << 6) | ((e >> 3) << 1) | 1;
|
||||
void override_viewport_and_clip(Vp *vpOverride, Vp *vpClip, u8 red, u8 green, u8 blue) {
|
||||
u16 color = ((red >> 3) << 11) | ((green >> 3) << 6) | ((blue >> 3) << 1) | 1;
|
||||
|
||||
gFBSetColor = (sp6 << 16) | sp6;
|
||||
gViewportOverride = a;
|
||||
gViewportClip = b;
|
||||
gFBSetColor = (color << 16) | color;
|
||||
gViewportOverride = vpOverride;
|
||||
gViewportClip = vpClip;
|
||||
}
|
||||
|
||||
void set_warp_transition_rgb(u8 red, u8 green, u8 blue) {
|
||||
|
||||
@@ -121,9 +121,9 @@ void bhv_bubba_loop(void) {
|
||||
|
||||
if (o->oMoveFlags & OBJ_MOVE_MASK_IN_WATER) {
|
||||
if (o->oMoveFlags & OBJ_MOVE_ENTERED_WATER) {
|
||||
struct Object *sp38 = spawn_object(o, MODEL_WATER_SPLASH, bhvWaterSplash);
|
||||
if (sp38 != NULL) {
|
||||
obj_scale(sp38, 3.0f);
|
||||
struct Object *splashObj = spawn_object(o, MODEL_WATER_SPLASH, bhvWaterSplash);
|
||||
if (splashObj != NULL) {
|
||||
obj_scale(splashObj, 3.0f);
|
||||
}
|
||||
|
||||
o->oBubbaUnk108 = o->oVelY;
|
||||
|
||||
@@ -126,7 +126,7 @@ void bhv_coin_formation_spawn_loop(void) {
|
||||
}
|
||||
} else {
|
||||
if (bhv_coin_sparkles_init())
|
||||
o->parentObj->oCoinUnkF4 |= bit_shift_left(o->oBehParams2ndByte);
|
||||
o->parentObj->oCoinUnkF4 |= (1 << o->oBehParams2ndByte);
|
||||
o->oAnimState++;
|
||||
}
|
||||
if (o->parentObj->oAction == 2)
|
||||
|
||||
@@ -13,12 +13,13 @@ struct ObjectHitbox sSparkleSpawnStarHitbox = {
|
||||
};
|
||||
|
||||
void bhv_spawned_star_init(void) {
|
||||
s32 param;
|
||||
if (!(o->oInteractionSubtype & INT_SUBTYPE_NO_EXIT))
|
||||
if (!(o->oInteractionSubtype & INT_SUBTYPE_NO_EXIT)) {
|
||||
o->oBehParams = o->parentObj->oBehParams;
|
||||
param = (o->oBehParams >> 24) & 0xFF;
|
||||
if (bit_shift_left(param) & save_file_get_star_flags(gCurrSaveFileNum - 1, gCurrCourseNum - 1))
|
||||
}
|
||||
s32 param = (o->oBehParams >> 24) & 0xFF;
|
||||
if ((1 << param) & save_file_get_star_flags(gCurrSaveFileNum - 1, gCurrCourseNum - 1)) {
|
||||
cur_obj_set_model(MODEL_TRANSPARENT_STAR);
|
||||
}
|
||||
cur_obj_play_sound_2(SOUND_GENERAL2_STAR_APPEARS);
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ static struct ObjectHitbox sTreasureChestBottomHitbox = {
|
||||
};
|
||||
|
||||
void bhv_treasure_chest_top_loop(void) {
|
||||
struct Object *sp34 = o->parentObj->parentObj;
|
||||
struct Object *parent = o->parentObj->parentObj;
|
||||
|
||||
switch (o->oAction) {
|
||||
case 0:
|
||||
@@ -26,7 +26,7 @@ void bhv_treasure_chest_top_loop(void) {
|
||||
|
||||
case 1:
|
||||
if (o->oTimer == 0) {
|
||||
if (sp34->oTreasureChestUnkFC == 0) {
|
||||
if (parent->oTreasureChestUnkFC == 0) {
|
||||
spawn_object_relative(0, 0, -80, 120, o, MODEL_BUBBLE, bhvWaterAirBubble);
|
||||
play_sound(SOUND_GENERAL_CLAM_SHELL1, o->header.gfx.cameraToObject);
|
||||
} else {
|
||||
|
||||
@@ -19,10 +19,9 @@ void bhv_ukiki_cage_star_loop(void) {
|
||||
case UKIKI_CAGE_STAR_ACT_IN_CAGE:
|
||||
// Initialization to see if the star is collected (blue) or not (yellow).
|
||||
if (o->oTimer == 0) {
|
||||
if (bit_shift_left(1)
|
||||
& save_file_get_star_flags(gCurrSaveFileNum - 1, gCurrCourseNum - 1)) {
|
||||
cur_obj_set_model(MODEL_TRANSPARENT_STAR);
|
||||
}
|
||||
if (0x2 & save_file_get_star_flags(gCurrSaveFileNum - 1, gCurrCourseNum - 1)) {
|
||||
cur_obj_set_model(MODEL_TRANSPARENT_STAR);
|
||||
}
|
||||
}
|
||||
|
||||
obj_copy_pos(o, o->parentObj);
|
||||
|
||||
@@ -3656,10 +3656,6 @@ void unused_object_angle_to_vec3s(Vec3s dst, struct Object *o) {
|
||||
*/
|
||||
void evaluate_cubic_spline(f32 u, Vec3f Q, Vec3f a0, Vec3f a1, Vec3f a2, Vec3f a3) {
|
||||
f32 B[4];
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
UNUSED u8 unused[16];
|
||||
|
||||
if (u > 1.f) {
|
||||
u = 1.f;
|
||||
@@ -3673,19 +3669,6 @@ void evaluate_cubic_spline(f32 u, Vec3f Q, Vec3f a0, Vec3f a1, Vec3f a2, Vec3f a
|
||||
Q[0] = B[0] * a0[0] + B[1] * a1[0] + B[2] * a2[0] + B[3] * a3[0];
|
||||
Q[1] = B[0] * a0[1] + B[1] * a1[1] + B[2] * a2[1] + B[3] * a3[1];
|
||||
Q[2] = B[0] * a0[2] + B[1] * a1[2] + B[2] * a2[2] + B[3] * a3[2];
|
||||
|
||||
// Unused code
|
||||
B[0] = -0.5f * u * u + u - 0.33333333f;
|
||||
B[1] = 1.5f * u * u - 2.f * u - 0.5f;
|
||||
B[2] = -1.5f * u * u + u + 1.f;
|
||||
B[3] = 0.5f * u * u - 0.16666667f;
|
||||
|
||||
x = B[0] * a0[0] + B[1] * a1[0] + B[2] * a2[0] + B[3] * a3[0];
|
||||
y = B[0] * a0[1] + B[1] * a1[1] + B[2] * a2[1] + B[3] * a3[1];
|
||||
z = B[0] * a0[2] + B[1] * a1[2] + B[2] * a2[2] + B[3] * a3[2];
|
||||
|
||||
unusedSplinePitch = atan2s(sqrtf(x * x + z * z), y);
|
||||
unusedSplineYaw = atan2s(z, x);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -79,16 +79,16 @@ void spawn_macro_abs_special(s32 model, const BehaviorScript *behavior, s16 x, s
|
||||
}
|
||||
|
||||
UNUSED static void spawn_macro_coin_unknown(const BehaviorScript *behavior, s16 a1[]) {
|
||||
struct Object *sp3C;
|
||||
struct Object *obj;
|
||||
s16 model;
|
||||
|
||||
model = bhvYellowCoin == behavior ? MODEL_YELLOW_COIN : MODEL_NONE;
|
||||
|
||||
sp3C = spawn_object_abs_with_rot(&gMacroObjectDefaultParent, 0, model, behavior,
|
||||
a1[1], a1[2], a1[3], 0, convert_rotation(a1[0]), 0);
|
||||
obj = spawn_object_abs_with_rot(&gMacroObjectDefaultParent, 0, model, behavior,
|
||||
a1[1], a1[2], a1[3], 0, convert_rotation(a1[0]), 0);
|
||||
|
||||
sp3C->oUnk1A8 = a1[4];
|
||||
sp3C->oBehParams = (a1[4] & 0xFF) >> 16;
|
||||
obj->oUnk1A8 = a1[4];
|
||||
obj->oBehParams = (a1[4] & 0xFF) >> 16;
|
||||
}
|
||||
|
||||
struct LoadedPreset {
|
||||
|
||||
@@ -33,8 +33,6 @@
|
||||
#include "sound_init.h"
|
||||
#include "rumble_init.h"
|
||||
|
||||
u32 unused80339F10;
|
||||
s8 filler80339F1C[20];
|
||||
|
||||
/**************************************************
|
||||
* ANIMATIONS *
|
||||
@@ -1806,8 +1804,6 @@ void init_mario(void) {
|
||||
Vec3s capPos;
|
||||
struct Object *capObject;
|
||||
|
||||
unused80339F10 = 0;
|
||||
|
||||
gMarioState->actionTimer = 0;
|
||||
gMarioState->framesSinceA = 0xFF;
|
||||
gMarioState->framesSinceB = 0xFF;
|
||||
|
||||
@@ -2324,9 +2324,8 @@ void cur_obj_call_action_function(void (*actionFunctions[])(void)) {
|
||||
actionFunction();
|
||||
}
|
||||
|
||||
static struct Object *spawn_star_with_no_lvl_exit(s32 param, s32 sp24) {
|
||||
static struct Object *spawn_star_with_no_lvl_exit(s32 param) {
|
||||
struct Object *starObj = spawn_object(o, MODEL_STAR, bhvSpawnedStarNoLevelExit);
|
||||
starObj->oSparkleSpawnUnk1B0 = sp24;
|
||||
starObj->oBehParams = o->oBehParams;
|
||||
starObj->oBehParams2ndByte = param;
|
||||
|
||||
@@ -2336,18 +2335,14 @@ static struct Object *spawn_star_with_no_lvl_exit(s32 param, s32 sp24) {
|
||||
// old unused initializer for 2d star spawn behavior.
|
||||
// uses behavior parameters not used in the current sparkle code.
|
||||
void spawn_base_star_with_no_lvl_exit(void) {
|
||||
spawn_star_with_no_lvl_exit(0, 0);
|
||||
}
|
||||
|
||||
s32 bit_shift_left(s32 a0) {
|
||||
return 1 << a0;
|
||||
spawn_star_with_no_lvl_exit(0);
|
||||
}
|
||||
|
||||
s32 cur_obj_mario_far_away(void) {
|
||||
f32 dx = o->oHomeX - gMarioObject->oPosX;
|
||||
f32 dy = o->oHomeY - gMarioObject->oPosY;
|
||||
f32 dz = o->oHomeZ - gMarioObject->oPosZ;
|
||||
f32 marioDistToHome = sqrtf(dx * dx + dy * dy + dz * dz);
|
||||
f32 marioDistToHome = sqrtf(sqr(dx) + sqr(dy) + sqr(dz));
|
||||
|
||||
if (o->oDistanceToMario > 2000.0f && marioDistToHome > 2000.0f) {
|
||||
return TRUE;
|
||||
|
||||
@@ -67,9 +67,9 @@ Gfx *geo_switch_area(s32 callContext, struct GraphNode *node, UNUSED void *conte
|
||||
Gfx *geo_switch_anim_state(s32 callContext, struct GraphNode *node);
|
||||
Gfx *geo_switch_area(s32 callContext, struct GraphNode *node);
|
||||
#endif
|
||||
void obj_update_pos_from_parent_transformation(Mat4 a0, struct Object *a1);
|
||||
void obj_update_pos_from_parent_transformation(Mat4 mtx, struct Object *obj);
|
||||
void obj_apply_scale_to_matrix(struct Object *obj, Mat4 dst, Mat4 src);
|
||||
void create_transformation_from_matrices(Mat4 a0, Mat4 a1, Mat4 a2);
|
||||
void create_transformation_from_matrices(Mat4 dst, Mat4 a1, Mat4 a2);
|
||||
void obj_set_held_state(struct Object *obj, const BehaviorScript *heldBehavior);
|
||||
f32 lateral_dist_between_objects(struct Object *obj1, struct Object *obj2);
|
||||
f32 dist_between_objects(struct Object *obj1, struct Object *obj2);
|
||||
@@ -246,7 +246,6 @@ s32 cur_obj_is_mario_on_platform(void);
|
||||
s32 jiggle_bbh_stair(s32 timer);
|
||||
void cur_obj_call_action_function(void (*actionFunctions[])(void));
|
||||
void spawn_base_star_with_no_lvl_exit(void);
|
||||
s32 bit_shift_left(s32 a0);
|
||||
s32 cur_obj_mario_far_away(void);
|
||||
s32 is_mario_moving_fast_or_in_air(s32 speedThreshold);
|
||||
s32 is_item_in_array(s8 item, s8 *array);
|
||||
|
||||
@@ -193,12 +193,12 @@ struct RenderModeContainer renderModeTable_2Cycle[2] = { { {
|
||||
} } };
|
||||
#endif
|
||||
|
||||
struct GraphNodeRoot *gCurGraphNodeRoot = NULL;
|
||||
struct GraphNodeMasterList *gCurGraphNodeMasterList = NULL;
|
||||
struct GraphNodeRoot *gCurGraphNodeRoot = NULL;
|
||||
struct GraphNodeMasterList *gCurGraphNodeMasterList = NULL;
|
||||
struct GraphNodePerspective *gCurGraphNodeCamFrustum = NULL;
|
||||
struct GraphNodeCamera *gCurGraphNodeCamera = NULL;
|
||||
struct GraphNodeObject *gCurGraphNodeObject = NULL;
|
||||
struct GraphNodeHeldObject *gCurGraphNodeHeldObject = NULL;
|
||||
struct GraphNodeCamera *gCurGraphNodeCamera = NULL;
|
||||
struct GraphNodeObject *gCurGraphNodeObject = NULL;
|
||||
struct GraphNodeHeldObject *gCurGraphNodeHeldObject = NULL;
|
||||
u16 gAreaUpdateCounter = 0;
|
||||
|
||||
#ifdef F3DEX_GBI_2
|
||||
@@ -346,8 +346,7 @@ static void geo_process_master_list_sub(struct GraphNodeMasterList *node) {
|
||||
* parameter. Look at the RenderModeContainer struct to see the corresponding
|
||||
* render modes of layers.
|
||||
*/
|
||||
static void geo_append_display_list(void *displayList, s32 layer)
|
||||
{
|
||||
static void geo_append_display_list(void *displayList, s32 layer) {
|
||||
s32 index = 0;
|
||||
#ifdef F3DEX_GBI_2
|
||||
gSPLookAt(gDisplayListHead++, &lookAt);
|
||||
@@ -359,19 +358,15 @@ static void geo_append_display_list(void *displayList, s32 layer)
|
||||
index = 1;
|
||||
}
|
||||
#endif
|
||||
if (gCurGraphNodeMasterList != 0)
|
||||
{
|
||||
if (gCurGraphNodeMasterList != 0) {
|
||||
struct DisplayListNode *listNode = alloc_only_pool_alloc(gDisplayListHeap, sizeof(struct DisplayListNode));
|
||||
|
||||
listNode->transform = gMatStackFixed[gMatStackIndex];
|
||||
listNode->displayList = displayList;
|
||||
listNode->next = 0;
|
||||
if (gCurGraphNodeMasterList->listHeads[index][layer] == 0)
|
||||
{
|
||||
if (gCurGraphNodeMasterList->listHeads[index][layer] == 0) {
|
||||
gCurGraphNodeMasterList->listHeads[index][layer] = listNode;
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
gCurGraphNodeMasterList->listTails[index][layer]->next = listNode;
|
||||
}
|
||||
gCurGraphNodeMasterList->listTails[index][layer] = listNode;
|
||||
@@ -384,11 +379,9 @@ static void geo_append_display_list(void *displayList, s32 layer)
|
||||
static void geo_process_master_list(struct GraphNodeMasterList *node) {
|
||||
s32 i;
|
||||
|
||||
if (gCurGraphNodeMasterList == NULL && node->node.children != NULL)
|
||||
{
|
||||
if (gCurGraphNodeMasterList == NULL && node->node.children != NULL) {
|
||||
gCurGraphNodeMasterList = node;
|
||||
for (i = 0; i < GFX_NUM_MASTER_LISTS; i++)
|
||||
{
|
||||
for (i = 0; i < GFX_NUM_MASTER_LISTS; i++) {
|
||||
node->listHeads[0][i] = NULL;
|
||||
node->listHeads[1][i] = NULL;
|
||||
}
|
||||
@@ -429,18 +422,20 @@ static void geo_process_perspective(struct GraphNodePerspective *node) {
|
||||
Mtx *mtx = alloc_display_list(sizeof(*mtx));
|
||||
#ifdef WIDE
|
||||
if (gConfig.widescreen && (gCurrLevelNum != 0x01)){
|
||||
aspect = 1.775f;
|
||||
aspect = (16.0f / 9.0f); // 1.775f
|
||||
} else {
|
||||
aspect = 1.33333f;
|
||||
aspect = (4.0f / 3.0f); // 1.33333f
|
||||
}
|
||||
#else
|
||||
aspect = 1.33333f;
|
||||
aspect = (4.0f / 3.0f); // 1.33333f
|
||||
#endif
|
||||
|
||||
if (gCamera)
|
||||
gWorldScale = MAX(((gCamera->pos[0] * gCamera->pos[0]) + (gCamera->pos[1] * gCamera->pos[1]) + (gCamera->pos[2] * gCamera->pos[2]))/67108864, 1.0f);
|
||||
else
|
||||
if (gCamera) {
|
||||
gWorldScale = ((sqr(gCamera->pos[0]) + sqr(gCamera->pos[1]) + sqr(gCamera->pos[2])) / sqr(0x2000));
|
||||
gWorldScale = MAX(gWorldScale, 1.0f);
|
||||
} else {
|
||||
gWorldScale = 1.0f;
|
||||
}
|
||||
|
||||
guPerspective(mtx, &perspNorm, node->fov, aspect, (node->far/300) / gWorldScale, node->far / gWorldScale, 1.0f);
|
||||
gSPPerspNormalize(gDisplayListHead++, perspNorm);
|
||||
@@ -1262,70 +1257,27 @@ void geo_process_node_and_siblings(struct GraphNode *firstNode) {
|
||||
geo_try_process_children(curGraphNode);
|
||||
} else {
|
||||
switch (curGraphNode->type) {
|
||||
case GRAPH_NODE_TYPE_ORTHO_PROJECTION:
|
||||
geo_process_ortho_projection((struct GraphNodeOrthoProjection *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_PERSPECTIVE:
|
||||
geo_process_perspective((struct GraphNodePerspective *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_MASTER_LIST:
|
||||
geo_process_master_list((struct GraphNodeMasterList *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_LEVEL_OF_DETAIL:
|
||||
geo_process_level_of_detail((struct GraphNodeLevelOfDetail *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_SWITCH_CASE:
|
||||
geo_process_switch((struct GraphNodeSwitchCase *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_CAMERA:
|
||||
geo_process_camera((struct GraphNodeCamera *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_TRANSLATION_ROTATION:
|
||||
geo_process_translation_rotation(
|
||||
(struct GraphNodeTranslationRotation *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_TRANSLATION:
|
||||
geo_process_translation((struct GraphNodeTranslation *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_ROTATION:
|
||||
geo_process_rotation((struct GraphNodeRotation *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_OBJECT:
|
||||
geo_process_object((struct Object *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_ANIMATED_PART:
|
||||
geo_process_animated_part((struct GraphNodeAnimatedPart *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_BILLBOARD:
|
||||
geo_process_billboard((struct GraphNodeBillboard *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_DISPLAY_LIST:
|
||||
geo_process_display_list((struct GraphNodeDisplayList *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_SCALE:
|
||||
geo_process_scale((struct GraphNodeScale *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_SHADOW:
|
||||
geo_process_shadow((struct GraphNodeShadow *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_OBJECT_PARENT:
|
||||
geo_process_object_parent((struct GraphNodeObjectParent *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_GENERATED_LIST:
|
||||
geo_process_generated_list((struct GraphNodeGenerated *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_BACKGROUND:
|
||||
geo_process_background((struct GraphNodeBackground *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_HELD_OBJ:
|
||||
geo_process_held_object((struct GraphNodeHeldObject *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_BONE:
|
||||
geo_process_bone((struct GraphNodeBone *) curGraphNode);
|
||||
break;
|
||||
default:
|
||||
geo_try_process_children((struct GraphNode *) curGraphNode);
|
||||
break;
|
||||
case GRAPH_NODE_TYPE_ORTHO_PROJECTION: geo_process_ortho_projection ((struct GraphNodeOrthoProjection *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_PERSPECTIVE: geo_process_perspective ((struct GraphNodePerspective *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_MASTER_LIST: geo_process_master_list ((struct GraphNodeMasterList *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_LEVEL_OF_DETAIL: geo_process_level_of_detail ((struct GraphNodeLevelOfDetail *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_SWITCH_CASE: geo_process_switch ((struct GraphNodeSwitchCase *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_CAMERA: geo_process_camera ((struct GraphNodeCamera *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_TRANSLATION_ROTATION: geo_process_translation_rotation((struct GraphNodeTranslationRotation *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_TRANSLATION: geo_process_translation ((struct GraphNodeTranslation *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_ROTATION: geo_process_rotation ((struct GraphNodeRotation *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_OBJECT: geo_process_object ((struct Object *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_ANIMATED_PART: geo_process_animated_part ((struct GraphNodeAnimatedPart *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_BILLBOARD: geo_process_billboard ((struct GraphNodeBillboard *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_DISPLAY_LIST: geo_process_display_list ((struct GraphNodeDisplayList *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_SCALE: geo_process_scale ((struct GraphNodeScale *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_SHADOW: geo_process_shadow ((struct GraphNodeShadow *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_OBJECT_PARENT: geo_process_object_parent ((struct GraphNodeObjectParent *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_GENERATED_LIST: geo_process_generated_list ((struct GraphNodeGenerated *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_BACKGROUND: geo_process_background ((struct GraphNodeBackground *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_HELD_OBJ: geo_process_held_object ((struct GraphNodeHeldObject *) curGraphNode); break;
|
||||
case GRAPH_NODE_TYPE_BONE: geo_process_bone ((struct GraphNodeBone *) curGraphNode); break;
|
||||
default: geo_try_process_children ((struct GraphNode *) curGraphNode); break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -12,11 +12,11 @@ extern s32 gRumblePakTimer;
|
||||
void init_rumble_pak_scheduler_queue(void);
|
||||
void block_until_rumble_pak_free(void);
|
||||
void release_rumble_pak_control(void);
|
||||
void queue_rumble_data(s16 a0, s16 a1);
|
||||
void queue_rumble_decay(s16 a0);
|
||||
void queue_rumble_data(s16 time, s16 level);
|
||||
void queue_rumble_decay(s16 decay);
|
||||
u8 is_rumble_finished_and_queue_empty(void);
|
||||
void reset_rumble_timers_slip(void);
|
||||
void reset_rumble_timers_vibrate(s32 a0);
|
||||
void reset_rumble_timers_vibrate(s32 level);
|
||||
void queue_rumble_submerged(void);
|
||||
void cancel_rumble(void);
|
||||
void create_thread_6(void);
|
||||
|
||||
@@ -431,38 +431,35 @@ struct ObjValPtr *make_valptr(struct GdObj *obj, s32 flag, enum ValPtrType type,
|
||||
|
||||
/* @ 22B1DC for 0x430 */
|
||||
void reset_plane(struct ObjPlane *plane) {
|
||||
struct ObjFace *sp4C;
|
||||
struct ObjFace *face;
|
||||
f32 sp48;
|
||||
f32 sp44;
|
||||
UNUSED u32 sp40;
|
||||
UNUSED u32 sp3C;
|
||||
UNUSED u32 sp38;
|
||||
s32 i;
|
||||
s32 sp30;
|
||||
register f32 sp28;
|
||||
|
||||
imin("reset_plane");
|
||||
|
||||
sp4C = plane->unk40;
|
||||
calc_face_normal(sp4C);
|
||||
plane->unk1C = gd_dot_vec3f(&sp4C->vertices[0]->pos, &sp4C->normal);
|
||||
face = plane->unk40;
|
||||
calc_face_normal(face);
|
||||
plane->unk1C = gd_dot_vec3f(&face->vertices[0]->pos, &face->normal);
|
||||
sp48 = 0.0f;
|
||||
|
||||
sp28 = sp4C->normal.x < 0.0f ? -sp4C->normal.x : sp4C->normal.x;
|
||||
sp28 = face->normal.x < 0.0f ? -face->normal.x : face->normal.x;
|
||||
sp44 = sp28;
|
||||
if (sp44 > sp48) {
|
||||
sp30 = 0;
|
||||
sp48 = sp44;
|
||||
}
|
||||
|
||||
sp28 = sp4C->normal.y < 0.0f ? -sp4C->normal.y : sp4C->normal.y;
|
||||
sp28 = face->normal.y < 0.0f ? -face->normal.y : face->normal.y;
|
||||
sp44 = sp28;
|
||||
if (sp44 > sp48) {
|
||||
sp30 = 1;
|
||||
sp48 = sp44;
|
||||
}
|
||||
|
||||
sp28 = sp4C->normal.z < 0.0f ? -sp4C->normal.z : sp4C->normal.z;
|
||||
sp28 = face->normal.z < 0.0f ? -face->normal.z : face->normal.z;
|
||||
sp44 = sp28;
|
||||
if (sp44 > sp48) {
|
||||
sp30 = 2;
|
||||
@@ -485,8 +482,8 @@ void reset_plane(struct ObjPlane *plane) {
|
||||
|
||||
reset_bounding_box();
|
||||
|
||||
for (i = 0; i < sp4C->vtxCount; i++) {
|
||||
add_obj_pos_to_bounding_box(&sp4C->vertices[i]->header);
|
||||
for (i = 0; i < face->vtxCount; i++) {
|
||||
add_obj_pos_to_bounding_box(&face->vertices[i]->header);
|
||||
}
|
||||
|
||||
plane->boundingBox.minX = gSomeBoundingBox.minX;
|
||||
@@ -513,7 +510,6 @@ void reset_plane(struct ObjPlane *plane) {
|
||||
|
||||
/* @ 22B60C for 0x94; orig name: func_8017CE3C */
|
||||
struct ObjPlane *make_plane(s32 inZone, struct ObjFace *a1) {
|
||||
UNUSED u32 pad1C;
|
||||
struct ObjPlane *newPlane = (struct ObjPlane *) make_object(OBJ_TYPE_PLANES);
|
||||
|
||||
gGdPlaneCount++;
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
#include "types.h"
|
||||
#include "engine/graph_node.h"
|
||||
|
||||
Gfx *geo_intro_super_mario_64_logo(s32 sp50, struct GraphNode *sp54, UNUSED void *context);
|
||||
Gfx *geo_intro_tm_copyright(s32 sp40, struct GraphNode *sp44, UNUSED void *context);
|
||||
Gfx *geo_intro_regular_backdrop(s32 sp48, struct GraphNode *sp4c, UNUSED void *context);
|
||||
Gfx *geo_intro_gameover_backdrop(s32 sp40, struct GraphNode *sp44, UNUSED void *context);
|
||||
Gfx *geo_intro_super_mario_64_logo(s32 state, struct GraphNode *node, UNUSED void *context);
|
||||
Gfx *geo_intro_tm_copyright(s32 state, struct GraphNode *node, UNUSED void *context);
|
||||
Gfx *geo_intro_regular_backdrop(s32 state, struct GraphNode *node, UNUSED void *context);
|
||||
Gfx *geo_intro_gameover_backdrop(s32 state, struct GraphNode *node, UNUSED void *context);
|
||||
|
||||
#ifdef VERSION_SH
|
||||
Gfx *geo_intro_face_easter_egg(s32 state, struct GraphNode *node, UNUSED void *context);
|
||||
|
||||
Reference in New Issue
Block a user