Update Mario, Luigi and Wario's Models (#434)

Updated Luigi and Wario's models to their latest revision.
Mario, Luigi and Wario's sideburns now match the color of the rest of their hair with the player's palette.
Mario and Luigi's Logos were made into IA16 textures and are now shaded to look a bit better with the rest of the cap.
Cap inside was made a darker variant of the regular cap color across both the held and item caps.
Fixed an oversight with the cap wings, though mostly so that they're more consistent.
Removed Mario's unused model data since none of it is ever getting used as far as I'm aware.
This commit is contained in:
FluffaLuigi 2023-07-04 18:23:34 -05:00 committed by GitHub
parent b13d6fd3f1
commit 2a52b4af4e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
50 changed files with 7442 additions and 11691 deletions

View file

@ -165,6 +165,7 @@ extern const Gfx mario_cap_seg3_dl_03022E78[];
extern const Gfx mario_cap_seg3_dl_03022EA8[]; extern const Gfx mario_cap_seg3_dl_03022EA8[];
extern const Gfx mario_cap_seg3_dl_03022ED8[]; extern const Gfx mario_cap_seg3_dl_03022ED8[];
extern const Gfx mario_cap_seg3_dl_03022F20[]; extern const Gfx mario_cap_seg3_dl_03022F20[];
extern const Gfx mario_cap_m_logo_decal_dl[];
extern const Gfx mario_cap_seg3_dl_03022F48[]; extern const Gfx mario_cap_seg3_dl_03022F48[];
extern const Gfx mario_cap_seg3_dl_03022FF8[]; extern const Gfx mario_cap_seg3_dl_03022FF8[];
extern const Gfx mario_cap_seg3_dl_030230B0[]; extern const Gfx mario_cap_seg3_dl_030230B0[];

View file

@ -19,6 +19,7 @@ extern const Gfx luigi_cap_seg3_dl_03022E78[];
extern const Gfx luigi_cap_seg3_dl_03022EA8[]; extern const Gfx luigi_cap_seg3_dl_03022EA8[];
extern const Gfx luigi_cap_seg3_dl_03022ED8[]; extern const Gfx luigi_cap_seg3_dl_03022ED8[];
extern const Gfx luigi_cap_seg3_dl_03022F20[]; extern const Gfx luigi_cap_seg3_dl_03022F20[];
extern const Gfx luigi_cap_l_logo_decal_dl[];
extern const Gfx luigi_cap_seg3_dl_03022F48[]; extern const Gfx luigi_cap_seg3_dl_03022F48[];
extern const Gfx luigi_cap_seg3_dl_03022FF8[]; extern const Gfx luigi_cap_seg3_dl_03022FF8[];
extern const Gfx luigi_cap_seg3_dl_030230B0[]; extern const Gfx luigi_cap_seg3_dl_030230B0[];

View file

@ -21,50 +21,19 @@ extern const GeoLayout mario_geo_face_and_wings[];
extern const GeoLayout mario_geo_left_hand[]; extern const GeoLayout mario_geo_left_hand[];
extern const GeoLayout mario_geo_right_hand[]; extern const GeoLayout mario_geo_right_hand[];
extern const GeoLayout mario_geo_body[]; extern const GeoLayout mario_geo_body[];
extern const GeoLayout mario_geo_medium_poly_left_hand[];
extern const GeoLayout mario_geo_medium_poly_right_hand[];
extern const GeoLayout mario_geo_medium_poly_body[];
extern const GeoLayout mario_geo_low_poly_face_and_wings[];
extern const GeoLayout mario_geo_low_poly_left_hand[];
extern const GeoLayout mario_geo_low_poly_right_hand[];
extern const GeoLayout mario_geo_low_poly_body[];
extern const GeoLayout mario_vanish_geo_face_and_wings[]; extern const GeoLayout mario_vanish_geo_face_and_wings[];
extern const GeoLayout mario_vanish_geo_left_hand[]; extern const GeoLayout mario_vanish_geo_left_hand[];
extern const GeoLayout mario_vanish_geo_right_hand[]; extern const GeoLayout mario_vanish_geo_right_hand[];
extern const GeoLayout mario_vanish_geo_body[]; extern const GeoLayout mario_vanish_geo_body[];
extern const GeoLayout mario_vanish_geo_medium_poly_left_hand[];
extern const GeoLayout mario_vanish_geo_medium_poly_right_hand[];
extern const GeoLayout mario_vanish_geo_medium_poly_body[];
extern const GeoLayout mario_vanish_geo_low_poly_face_and_wings[];
extern const GeoLayout mario_vanish_geo_low_poly_left_hand[];
extern const GeoLayout mario_vanish_geo_low_poly_right_hand[];
extern const GeoLayout mario_vanish_geo_low_poly_body[];
extern const GeoLayout mario_metal_geo_face_and_wings[]; extern const GeoLayout mario_metal_geo_face_and_wings[];
extern const GeoLayout mario_metal_geo_left_hand[]; extern const GeoLayout mario_metal_geo_left_hand[];
extern const GeoLayout mario_metal_geo_right_hand[]; extern const GeoLayout mario_metal_geo_right_hand[];
extern const GeoLayout mario_metal_geo_body[]; extern const GeoLayout mario_metal_geo_body[];
extern const GeoLayout mario_metal_geo_medium_poly_left_hand[];
extern const GeoLayout mario_metal_geo_medium_poly_right_hand[];
extern const GeoLayout mario_metal_geo_medium_poly_body[];
extern const GeoLayout mario_metal_geo_low_poly_face_and_wings[];
extern const GeoLayout mario_metal_geo_low_poly_left_hand[];
extern const GeoLayout mario_metal_geo_low_poly_right_hand[];
extern const GeoLayout mario_metal_geo_low_poly_body[];
extern const GeoLayout mario_metal_vanish_geo_face_and_wings[]; extern const GeoLayout mario_metal_vanish_geo_face_and_wings[];
extern const GeoLayout mario_metal_vanish_geo_left_hand[]; extern const GeoLayout mario_metal_vanish_geo_left_hand[];
extern const GeoLayout mario_metal_vanish_geo_right_hand[]; extern const GeoLayout mario_metal_vanish_geo_right_hand[];
extern const GeoLayout mario_metal_vanish_geo_body[]; extern const GeoLayout mario_metal_vanish_geo_body[];
extern const GeoLayout mario_metal_vanish_geo_medium_poly_left_hand[];
extern const GeoLayout mario_metal_vanish_geo_medium_poly_right_hand[];
extern const GeoLayout mario_metal_vanish_geo_medium_poly_body[];
extern const GeoLayout mario_metal_vanish_geo_low_poly_face_and_wings[];
extern const GeoLayout mario_metal_vanish_geo_low_poly_left_hand[];
extern const GeoLayout mario_metal_vanish_geo_low_poly_right_hand[];
extern const GeoLayout mario_metal_vanish_geo_low_poly_body[];
extern const GeoLayout mario_geo_load_body[]; extern const GeoLayout mario_geo_load_body[];
extern const GeoLayout mario_geo_load_medium_poly_body[];
extern const GeoLayout mario_geo_load_low_poly_body[];
extern const GeoLayout mario_geo_render_body[];
extern const GeoLayout mario_geo[]; extern const GeoLayout mario_geo[];
extern const Gfx mario_butt_dl[]; extern const Gfx mario_butt_dl[];
extern const Gfx mario_butt[]; extern const Gfx mario_butt[];
@ -105,6 +74,8 @@ extern const Gfx mario_mustache_cap_on_dl[];
extern const Gfx mario_face_part_cap_on_dl[]; extern const Gfx mario_face_part_cap_on_dl[];
extern const Gfx mario_face_cap_dl[]; extern const Gfx mario_face_cap_dl[];
extern const Gfx mario_face_back_hair_cap_on_dl[]; extern const Gfx mario_face_back_hair_cap_on_dl[];
extern const Gfx mario_hair_sideburn_decal_cap_on_dl[];
extern const Gfx mario_m_logo_decal_dl[];
extern const Gfx mario_face_cap_on_dl[]; extern const Gfx mario_face_cap_on_dl[];
extern const Gfx mario_cap_on_eyes_front[]; extern const Gfx mario_cap_on_eyes_front[];
extern const Gfx mario_cap_on_eyes_half_closed[]; extern const Gfx mario_cap_on_eyes_half_closed[];
@ -120,6 +91,7 @@ extern const Gfx mario_mustache_cap_off_dl[];
extern const Gfx mario_hair_sideburn_cap_off_dl[]; extern const Gfx mario_hair_sideburn_cap_off_dl[];
extern const Gfx mario_face_part_cap_off_dl[]; extern const Gfx mario_face_part_cap_off_dl[];
extern const Gfx mario_face_hair_cap_off_dl[]; extern const Gfx mario_face_hair_cap_off_dl[];
extern const Gfx mario_hair_sideburn_decal_cap_off_dl[];
extern const Gfx mario_face_cap_off_dl[]; extern const Gfx mario_face_cap_off_dl[];
extern const Gfx mario_cap_off_eyes_front[]; extern const Gfx mario_cap_off_eyes_front[];
extern const Gfx mario_cap_off_eyes_half_closed[]; extern const Gfx mario_cap_off_eyes_half_closed[];
@ -130,100 +102,6 @@ extern const Gfx mario_cap_off_eyes_up[];
extern const Gfx mario_cap_off_eyes_down[]; extern const Gfx mario_cap_off_eyes_down[];
extern const Gfx mario_cap_off_eyes_dead[]; extern const Gfx mario_cap_off_eyes_dead[];
extern const Gfx mario_metal_cap_off_shared_dl[]; extern const Gfx mario_metal_cap_off_shared_dl[];
extern const Gfx mario_medium_poly_butt_dl[];
extern const Gfx mario_medium_poly_butt[];
extern const Gfx mario_metal_medium_poly_butt[];
extern const Gfx mario_medium_poly_left_arm_shared_dl[];
extern const Gfx mario_medium_poly_left_arm[];
extern const Gfx mario_medium_poly_left_forearm_shared_dl[];
extern const Gfx mario_medium_poly_left_hand_closed_shared_dl[];
extern const Gfx mario_medium_poly_left_hand_closed[];
extern const Gfx mario_medium_poly_right_arm_shared_dl[];
extern const Gfx mario_medium_poly_right_arm[];
extern const Gfx mario_medium_poly_right_forearm_shared_dl[];
extern const Gfx mario_medium_poly_right_hand_closed_dl[];
extern const Gfx mario_medium_poly_right_hand_closed[];
extern const Gfx mario_metal_medium_poly_right_hand_closed[];
extern const Gfx mario_medium_poly_left_thigh_dl[];
extern const Gfx mario_medium_poly_left_thigh[];
extern const Gfx mario_metal_medium_poly_left_thigh[];
extern const Gfx mario_medium_poly_left_leg_shared_dl[];
extern const Gfx mario_medium_poly_left_foot_shared_dl[];
extern const Gfx mario_medium_poly_left_foot[];
extern const Gfx mario_medium_poly_right_thigh_shared_dl[];
extern const Gfx mario_medium_poly_right_thigh[];
extern const Gfx mario_medium_poly_right_leg_shared_dl[];
extern const Gfx mario_medium_poly_right_foot_dl[];
extern const Gfx mario_medium_poly_right_foot[];
extern const Gfx mario_metal_medium_poly_right_foot[];
extern const Gfx mario_medium_poly_yellow_button_dl[];
extern const Gfx mario_medium_poly_pants_overalls_shared_dl[];
extern const Gfx mario_medium_poly_tshirt_shared_dl[];
extern const Gfx mario_medium_poly_torso_dl[];
extern const Gfx mario_medium_poly_torso[];
extern const Gfx mario_metal_medium_poly_torso[];
extern const Gfx mario_low_poly_butt_dl[];
extern const Gfx mario_low_poly_butt[];
extern const Gfx mario_metal_low_poly_butt[];
extern const Gfx mario_low_poly_left_arm_shared_dl[];
extern const Gfx mario_low_poly_left_arm[];
extern const Gfx mario_low_poly_left_forearm_shared_dl[];
extern const Gfx mario_low_poly_left_hand_closed_shared_dl[];
extern const Gfx mario_low_poly_left_hand_closed[];
extern const Gfx mario_low_poly_right_arm_shared_dl[];
extern const Gfx mario_low_poly_right_arm[];
extern const Gfx mario_low_poly_right_forearm_shared_dl[];
extern const Gfx mario_low_poly_right_hand_closed_dl[];
extern const Gfx mario_low_poly_right_hand_closed[];
extern const Gfx mario_metal_low_poly_right_hand_closed[];
extern const Gfx mario_low_poly_left_thigh_dl[];
extern const Gfx mario_low_poly_left_thigh[];
extern const Gfx mario_metal_low_poly_left_thigh[];
extern const Gfx mario_low_poly_left_leg_shared_dl[];
extern const Gfx mario_low_poly_left_foot_shared_dl[];
extern const Gfx mario_low_poly_left_foot[];
extern const Gfx mario_low_poly_right_thigh_shared_dl[];
extern const Gfx mario_low_poly_right_thigh[];
extern const Gfx mario_low_poly_right_leg_shared_dl[];
extern const Gfx mario_low_poly_right_foot_dl[];
extern const Gfx mario_low_poly_right_foot[];
extern const Gfx mario_metal_low_poly_right_foot[];
extern const Gfx mario_low_poly_yellow_button_dl[];
extern const Gfx mario_low_poly_pants_overalls_shared_dl[];
extern const Gfx mario_low_poly_tshirt_shared_dl[];
extern const Gfx mario_low_poly_torso_dl[];
extern const Gfx mario_low_poly_torso[];
extern const Gfx mario_metal_low_poly_torso[];
extern const Gfx mario_low_poly_mario_m_logo_dl[];
extern const Gfx mario_low_poly_eyes_cap_on_dl[];
extern const Gfx mario_low_poly_mustache_cap_on_dl[];
extern const Gfx mario_low_poly_face_part_cap_on_dl[];
extern const Gfx mario_low_poly_face_cap_dl[];
extern const Gfx mario_low_poly_face_back_hair_cap_on_dl[];
extern const Gfx mario_low_poly_face_cap_on_dl[];
extern const Gfx mario_low_poly_cap_on_eyes_front[];
extern const Gfx mario_low_poly_cap_on_eyes_half_closed[];
extern const Gfx mario_low_poly_cap_on_eyes_closed[];
extern const Gfx mario_low_poly_cap_on_eyes_right[];
extern const Gfx mario_low_poly_cap_on_eyes_left[];
extern const Gfx mario_low_poly_cap_on_eyes_up[];
extern const Gfx mario_low_poly_cap_on_eyes_down[];
extern const Gfx mario_low_poly_cap_on_eyes_dead[];
extern const Gfx mario_metal_low_poly_cap_on[];
extern const Gfx mario_low_poly_mario_eyes_cap_off_dl[];
extern const Gfx mario_low_poly_mustache_cap_off_dl[];
extern const Gfx mario_low_poly_face_part_cap_off_dl[];
extern const Gfx mario_low_poly_face_hair_cap_off_dl[];
extern const Gfx mario_low_poly_face_cap_off_dl[];
extern const Gfx mario_low_poly_cap_off_eyes_front[];
extern const Gfx mario_low_poly_cap_off_eyes_half_closed[];
extern const Gfx mario_low_poly_cap_off_eyes_closed[];
extern const Gfx mario_low_poly_cap_off_eyes_right[];
extern const Gfx mario_low_poly_cap_off_eyes_left[];
extern const Gfx mario_low_poly_cap_off_eyes_up[];
extern const Gfx mario_low_poly_cap_off_eyes_down[];
extern const Gfx mario_low_poly_cap_off_eyes_dead[];
extern const Gfx mario_metal_low_poly_cap_off[];
extern const Gfx mario_left_hand_open_shared_dl[]; extern const Gfx mario_left_hand_open_shared_dl[];
extern const Gfx mario_left_hand_open[]; extern const Gfx mario_left_hand_open[];
extern const Gfx mario_right_hand_open_dl[]; extern const Gfx mario_right_hand_open_dl[];
@ -233,29 +111,21 @@ extern const Gfx mario_right_hand_cap_m_logo_dl[];
extern const Gfx mario_right_hand_cap_top_dl[]; extern const Gfx mario_right_hand_cap_top_dl[];
extern const Gfx mario_right_hand_cap_hand_position_dl[]; extern const Gfx mario_right_hand_cap_hand_position_dl[];
extern const Gfx mario_right_hand_cap_bottom_dl[]; extern const Gfx mario_right_hand_cap_bottom_dl[];
extern const Gfx mario_right_hand_cap_decal_dl[];
extern const Gfx mario_right_hand_cap_dl[]; extern const Gfx mario_right_hand_cap_dl[];
extern const Gfx mario_right_hand_cap_wings_half_1_dl[]; extern const Gfx mario_right_hand_cap_wings_half_1_dl[];
extern const Gfx mario_right_hand_cap_wings_half_2_dl[]; extern const Gfx mario_right_hand_cap_wings_half_2_dl[];
extern const Gfx mario_right_hand_cap_wings_intial_dl[]; extern const Gfx mario_right_hand_cap_wings_intial_dl[];
extern const Gfx mario_right_hand_cap_wings_transparent_intial_dl[];
extern const Gfx mario_right_hand_cap_wings_end_dl[]; extern const Gfx mario_right_hand_cap_wings_end_dl[];
extern const Gfx mario_right_hand_cap[]; extern const Gfx mario_right_hand_cap[];
extern const Gfx mario_right_hand_cap_wings[]; extern const Gfx mario_right_hand_cap_wings[];
extern const Gfx mario_right_hand_cap_wings_transparent[];
extern const Gfx mario_metal_right_hand_cap_shared_dl[]; extern const Gfx mario_metal_right_hand_cap_shared_dl[];
extern const Gfx mario_metal_right_hand_cap_shared_dl_wings[]; extern const Gfx mario_metal_right_hand_cap_shared_dl_wings[];
extern const Gfx mario_metal_right_hand_cap_shared_dl_wings_transparent[];
extern const Gfx mario_right_hand_peace_shared_dl[]; extern const Gfx mario_right_hand_peace_shared_dl[];
extern const Gfx mario_right_hand_peace[]; extern const Gfx mario_right_hand_peace[];
extern const Gfx mario_cap_unused_m_logo_dl[];
extern const Gfx mario_cap_unused_base_top_dl[];
extern const Gfx mario_cap_unused_base_bottom_dl[];
extern const Gfx mario_cap_unused_base_dl[];
extern const Gfx mario_wings_half_1_unused_dl[];
extern const Gfx mario_wings_half_2_unused_dl[];
extern const Gfx mario_cap_wings_unused_intial_dl[];
extern const Gfx mario_cap_wings_unused_end_dl[];
extern const Gfx mario_cap_unused_dl[];
extern const Gfx mario_metal_cap_unused_dl[];
extern const Gfx mario_cap_wings_unused[];
extern const Gfx mario_metal_cap_wings_unused[];
extern const Gfx mario_wings_half_1_dl[]; extern const Gfx mario_wings_half_1_dl[];
extern const Gfx mario_wings_half_2_dl[]; extern const Gfx mario_wings_half_2_dl[];
extern const Gfx mario_cap_wings[]; extern const Gfx mario_cap_wings[];

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 933 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 B

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 604 B

After

Width:  |  Height:  |  Size: 630 B

View file

@ -6,30 +6,47 @@ const GeoLayout luigi_geo_face_and_wings[] = {
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_SWITCH_CASE(0, geo_switch_mario_cap_on_off), GEO_SWITCH_CASE(0, geo_switch_mario_cap_on_off),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_SWITCH_CASE(0, geo_switch_mario_eyes), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_front), GEO_ASM(2, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_half_closed), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_hair_sideburn_decal_cap_on_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_closed), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_right), // unused GEO_ASM(3, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_left), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_up), // unused GEO_SWITCH_CASE(0, geo_switch_mario_eyes),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_down), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_dead), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_front),
GEO_CLOSE_NODE(), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_half_closed),
GEO_SWITCH_CASE(0, geo_switch_mario_eyes), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_closed),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_right), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_left), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_up), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_down), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_on_eyes_dead),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_front), GEO_ASM(2, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_half_closed), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_hair_sideburn_decal_cap_off_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_closed), GEO_ASM(3, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_right), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_left), // unused GEO_SWITCH_CASE(0, geo_switch_mario_eyes),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_up), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_down), // unused GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_front),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_dead), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_half_closed),
GEO_CLOSE_NODE(), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_closed),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_right), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_left), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_up), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_down), // unused
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_off_eyes_dead),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, -109, 22, -40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, -110, 22, -40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_rotate_wing_cap_wings), GEO_ASM(0, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -37,7 +54,7 @@ const GeoLayout luigi_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_cap_wings), // left GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_cap_wings), // left
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, 109, -22, 40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, 110, -22, 40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_rotate_wing_cap_wings), GEO_ASM(1, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -52,7 +69,7 @@ const GeoLayout luigi_geo_face_and_wings[] = {
const GeoLayout luigi_geo_left_hand[] = { const GeoLayout luigi_geo_left_hand[] = {
GEO_SWITCH_CASE(1, geo_switch_mario_hand), GEO_SWITCH_CASE(1, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_hand_foot_scaler), GEO_ASM(1, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -60,10 +77,10 @@ const GeoLayout luigi_geo_left_hand[] = {
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_left_hand_closed), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_left_hand_closed),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_open), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_open),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
}; };
@ -71,7 +88,7 @@ const GeoLayout luigi_geo_left_hand[] = {
const GeoLayout luigi_geo_right_hand[] = { const GeoLayout luigi_geo_right_hand[] = {
GEO_SWITCH_CASE(0, geo_switch_mario_hand), GEO_SWITCH_CASE(0, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_hand_foot_scaler), GEO_ASM(0, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -80,14 +97,22 @@ const GeoLayout luigi_geo_right_hand[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_right_hand_open), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_right_hand_open),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_right_hand_peace), // here we go hand GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_right_hand_peace), // here we go hand
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_right_hand_cap), GEO_ANIMATED_PART(LAYER_OPAQUE, 60, 0, 0, luigi_right_hand_cap),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_right_hand_cap),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(2, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_right_hand_cap_decal_dl),
GEO_ASM(3, geo_mirror_mario_backface_culling),
GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 60, 0, 0, luigi_right_hand_cap),
GEO_OPEN_NODE(),
GEO_ASM(2, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_right_hand_cap_decal_dl),
GEO_ASM(3, geo_mirror_mario_backface_culling),
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_right_hand_cap_wings), GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_right_hand_cap_wings),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -99,33 +124,33 @@ const GeoLayout luigi_geo_right_hand[] = {
const GeoLayout luigi_geo_body[] = { const GeoLayout luigi_geo_body[] = {
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 22, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 22, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_butt), // starts sharing solid color with luigi_torso (blue) GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_butt), // starts sharing solid color with mario_torso (blue)
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_move_mario_part_from_parent), GEO_ASM(0, geo_move_mario_part_from_parent),
GEO_ASM(0, geo_mario_tilt_torso), GEO_ASM(0, geo_mario_tilt_torso),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, luigi_torso), GEO_ANIMATED_PART(LAYER_OPAQUE, 80, 0, 0, luigi_torso),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 90, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 91, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_geo_face_and_wings), // stops sharing because faces has its own dl GEO_BRANCH(1, luigi_geo_face_and_wings), // stops sharing because faces has its own dl
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 55, -10, 65, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 60, -10, 69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_arm), // starts sharing solid color with luigi_left_forearm_shared_dl (red) GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_arm), // starts sharing solid color with mario_left_forearm (red)
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, 0, luigi_left_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 70, 0, 0, luigi_left_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_geo_left_hand), // stops sharing because hand has its solid color (white) GEO_BRANCH(1, luigi_geo_left_hand), // stops sharing because hand has its solid color (white)
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 56, -10, -65, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 61, -10, -69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_arm), // starts sharing solid color of his dl with luigi_right_forearm_shared_dl (red) GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_arm), // starts sharing solid color of his dl with mario_right_forearm (red)
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, 0, luigi_right_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 70, 0, 0, luigi_right_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_geo_right_hand), // stops sharing because hand has its solid color (white) GEO_BRANCH(1, luigi_geo_right_hand), // stops sharing because hand has its solid color (white)
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -133,23 +158,23 @@ const GeoLayout luigi_geo_body[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 15, -9, 40, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 13, -8, 39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_thigh), // starts sharing solid color of his dl with luigi_left_leg_shared_dl (blue) GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_thigh), // starts sharing solid color of his dl with mario_left_leg (blue)
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 97, 0, 0, luigi_left_leg_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 98, 0, 0, luigi_left_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, luigi_left_foot), // stops sharing because foot has its solid color (brown) GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, luigi_left_foot), // stops sharing because foot has its solid color (brown)
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 15, -9, -40, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 13, -8, -39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_thigh), // starts sharing solid color of his dl with luigi_left_leg_shared_dl (blue) GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_thigh), // starts sharing solid color of his dl with mario_left_leg (blue)
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 97, 0, 0, luigi_right_leg_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 98, 0, 0, luigi_right_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(2, geo_mario_hand_foot_scaler), GEO_ASM(2, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -173,30 +198,43 @@ const GeoLayout luigi_vanish_geo_face_and_wings[] = {
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_SWITCH_CASE(0, geo_switch_mario_cap_on_off), GEO_SWITCH_CASE(0, geo_switch_mario_cap_on_off),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_SWITCH_CASE(0, geo_switch_mario_eyes), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_front), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_hair_sideburn_decal_cap_on_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_half_closed), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_closed), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_right), // unused GEO_SWITCH_CASE(0, geo_switch_mario_eyes),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_left), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_up), // unused GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_front),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_down), // unused GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_half_closed),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_dead), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_closed),
GEO_CLOSE_NODE(), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_right), // unused
GEO_SWITCH_CASE(0, geo_switch_mario_eyes), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_left), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_up), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_down), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_on_eyes_dead),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_front), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_hair_sideburn_decal_cap_off_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_half_closed), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_closed), GEO_SWITCH_CASE(0, geo_switch_mario_eyes),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_right), // unused GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_left), // unused GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_front),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_up), // unused GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_half_closed),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_down), // unused GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_closed),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_dead), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_right), // unused
GEO_CLOSE_NODE(), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_left), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_up), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_down), // unused
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_off_eyes_dead),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, -109, 22, -40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, -110, 22, -40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_rotate_wing_cap_wings), GEO_ASM(0, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -204,7 +242,7 @@ const GeoLayout luigi_vanish_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_wings_transparent), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_wings_transparent),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, 109, -22, 40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, 110, -22, 40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_rotate_wing_cap_wings), GEO_ASM(1, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -219,7 +257,7 @@ const GeoLayout luigi_vanish_geo_face_and_wings[] = {
const GeoLayout luigi_vanish_geo_left_hand[] = { const GeoLayout luigi_vanish_geo_left_hand[] = {
GEO_SWITCH_CASE(1, geo_switch_mario_hand), GEO_SWITCH_CASE(1, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_hand_foot_scaler), GEO_ASM(1, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -227,10 +265,10 @@ const GeoLayout luigi_vanish_geo_left_hand[] = {
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_left_hand_closed), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_left_hand_closed),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_open), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_open),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
}; };
@ -238,7 +276,7 @@ const GeoLayout luigi_vanish_geo_left_hand[] = {
const GeoLayout luigi_vanish_geo_right_hand[] = { const GeoLayout luigi_vanish_geo_right_hand[] = {
GEO_SWITCH_CASE(0, geo_switch_mario_hand), GEO_SWITCH_CASE(0, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_hand_foot_scaler), GEO_ASM(0, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -247,15 +285,19 @@ const GeoLayout luigi_vanish_geo_right_hand[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_right_hand_open), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_right_hand_open),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_right_hand_peace), // here we go hand GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_right_hand_peace), // here we go hand
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_right_hand_cap), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 60, 0, 0, luigi_right_hand_cap),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_right_hand_cap),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_right_hand_cap_wings), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_right_hand_cap_decal_dl),
GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 60, 0, 0, luigi_right_hand_cap),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_right_hand_cap_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_right_hand_cap_wings_transparent),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
@ -272,27 +314,27 @@ const GeoLayout luigi_vanish_geo_body[] = {
GEO_ASM(0, geo_mario_tilt_torso), GEO_ASM(0, geo_mario_tilt_torso),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, luigi_torso), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 80, 0, 0, luigi_torso),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 90, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 91, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_vanish_geo_face_and_wings), GEO_BRANCH(1, luigi_vanish_geo_face_and_wings),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 55, -10, 65, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 60, -10, 69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_arm), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_arm),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, 0, luigi_left_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 70, 0, 0, luigi_left_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_vanish_geo_left_hand), GEO_BRANCH(1, luigi_vanish_geo_left_hand),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 56, -10, -65, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 61, -10, -69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_arm), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_arm),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, 0, luigi_right_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 70, 0, 0, luigi_right_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_vanish_geo_right_hand), GEO_BRANCH(1, luigi_vanish_geo_right_hand),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -300,23 +342,23 @@ const GeoLayout luigi_vanish_geo_body[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 15, -9, 40, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 13, -8, 39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_thigh), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_thigh),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 97, 0, 0, luigi_left_leg_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 98, 0, 0, luigi_left_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, luigi_left_foot), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, luigi_left_foot),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 15, -9, -40, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 13, -8, -39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_thigh), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_thigh),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 97, 0, 0, luigi_right_leg_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 98, 0, 0, luigi_right_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(2, geo_mario_hand_foot_scaler), GEO_ASM(2, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -343,7 +385,7 @@ const GeoLayout luigi_metal_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_metal_cap_on_shared_dl), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_metal_cap_on_shared_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_metal_cap_off_shared_dl), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_metal_cap_off_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, -109, 22, -40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, -110, 22, -40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_rotate_wing_cap_wings), GEO_ASM(0, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -351,7 +393,7 @@ const GeoLayout luigi_metal_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_cap_wings), // left GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_cap_wings), // left
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, 109, -22, 40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, 110, -22, 40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_rotate_wing_cap_wings), GEO_ASM(1, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -366,7 +408,7 @@ const GeoLayout luigi_metal_geo_face_and_wings[] = {
const GeoLayout luigi_metal_geo_left_hand[] = { const GeoLayout luigi_metal_geo_left_hand[] = {
GEO_SWITCH_CASE(1, geo_switch_mario_hand), GEO_SWITCH_CASE(1, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_hand_foot_scaler), GEO_ASM(1, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -374,10 +416,10 @@ const GeoLayout luigi_metal_geo_left_hand[] = {
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_left_hand_closed_shared_dl), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_left_hand_closed_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_open_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_open_shared_dl),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
}; };
@ -385,7 +427,7 @@ const GeoLayout luigi_metal_geo_left_hand[] = {
const GeoLayout luigi_metal_geo_right_hand[] = { const GeoLayout luigi_metal_geo_right_hand[] = {
GEO_SWITCH_CASE(0, geo_switch_mario_hand), GEO_SWITCH_CASE(0, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_hand_foot_scaler), GEO_ASM(0, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -394,13 +436,13 @@ const GeoLayout luigi_metal_geo_right_hand[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_metal_right_hand_open), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_metal_right_hand_open),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_right_hand_peace_shared_dl), // here we go hand GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_right_hand_peace_shared_dl), // here we go hand
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_metal_right_hand_cap_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_metal_right_hand_cap_shared_dl),
GEO_ANIMATED_PART(LAYER_OPAQUE, 71, 0, 0, luigi_metal_right_hand_cap_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 65, 0, 0, luigi_metal_right_hand_cap_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_right_hand_cap_shared_dl_wings), GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_right_hand_cap_shared_dl_wings),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -419,27 +461,27 @@ const GeoLayout luigi_metal_geo_body[] = {
GEO_ASM(0, geo_mario_tilt_torso), GEO_ASM(0, geo_mario_tilt_torso),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, luigi_metal_torso_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 80, 0, 0, luigi_metal_torso_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 90, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 91, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_geo_face_and_wings), // unlike normal mario geo, these dls still share the metal texture GEO_BRANCH(1, luigi_metal_geo_face_and_wings), // unlike normal mario geo, these dls still share the metal texture
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 55, -10, 65, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 60, -10, 69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_arm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_left_arm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, 0, luigi_left_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 70, 0, 0, luigi_left_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_geo_left_hand), GEO_BRANCH(1, luigi_metal_geo_left_hand),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 56, -10, -65, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 61, -10, -69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_arm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_arm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 63, 0, 0, luigi_right_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 70, 0, 0, luigi_right_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_geo_right_hand), // stop sharing because the wing metal cap of it GEO_BRANCH(1, luigi_metal_geo_right_hand), // stop sharing because the wing metal cap of it
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -447,23 +489,23 @@ const GeoLayout luigi_metal_geo_body[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 15, -9, 40, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 13, -8, 39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_metal_left_thigh), // starts sharing metal texture with the dls below GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_metal_left_thigh), // starts sharing metal texture with the dls below
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 97, 0, 0, luigi_left_leg_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 98, 0, 0, luigi_left_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, luigi_left_foot_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, luigi_left_foot_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 15, -9, -40, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 13, -8, -39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_thigh_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, luigi_right_thigh_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 97, 0, 0, luigi_right_leg_shared_dl), GEO_ANIMATED_PART(LAYER_OPAQUE, 98, 0, 0, luigi_right_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_OPAQUE, 81, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_OPAQUE, 78, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(2, geo_mario_hand_foot_scaler), GEO_ASM(2, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -490,7 +532,7 @@ const GeoLayout luigi_metal_vanish_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_on_shared_dl), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_on_shared_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_off_shared_dl), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_off_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, -109, 22, -40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, -110, 22, -40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_rotate_wing_cap_wings), GEO_ASM(0, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -498,7 +540,7 @@ const GeoLayout luigi_metal_vanish_geo_face_and_wings[] = {
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_wings_transparent), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_metal_cap_wings_transparent),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_TRANSLATE_ROTATE(0, 140, -50, 109, -22, 40, -135), GEO_TRANSLATE_ROTATE(0, 140, -45, 110, -22, 40, -135),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_rotate_wing_cap_wings), GEO_ASM(1, geo_mario_rotate_wing_cap_wings),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
@ -513,7 +555,7 @@ const GeoLayout luigi_metal_vanish_geo_face_and_wings[] = {
const GeoLayout luigi_metal_vanish_geo_left_hand[] = { const GeoLayout luigi_metal_vanish_geo_left_hand[] = {
GEO_SWITCH_CASE(0, geo_switch_mario_hand), GEO_SWITCH_CASE(0, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_hand_foot_scaler), GEO_ASM(1, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -521,10 +563,10 @@ const GeoLayout luigi_metal_vanish_geo_left_hand[] = {
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_left_hand_closed_shared_dl), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_left_hand_closed_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_open_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_open_shared_dl),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_left_hand_closed_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_left_hand_closed_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
}; };
@ -532,7 +574,7 @@ const GeoLayout luigi_metal_vanish_geo_left_hand[] = {
const GeoLayout luigi_metal_vanish_geo_right_hand[] = { const GeoLayout luigi_metal_vanish_geo_right_hand[] = {
GEO_SWITCH_CASE(0, geo_switch_mario_hand), GEO_SWITCH_CASE(0, geo_switch_mario_hand),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_hand_foot_scaler), GEO_ASM(0, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -541,15 +583,15 @@ const GeoLayout luigi_metal_vanish_geo_right_hand[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_metal_right_hand_open), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_metal_right_hand_open),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos), GEO_HELD_OBJECT(0x00, 0, 0, 0, geo_switch_mario_hand_grab_pos),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_right_hand_peace_shared_dl), // here we go hand GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_right_hand_peace_shared_dl), // here we go hand
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_metal_right_hand_cap_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_metal_right_hand_cap_shared_dl),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 71, 0, 0, luigi_metal_right_hand_cap_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 65, 0, 0, luigi_metal_right_hand_cap_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_right_hand_cap_shared_dl_wings), GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_metal_right_hand_cap_shared_dl_wings_transparent),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_RETURN(), GEO_RETURN(),
@ -566,27 +608,27 @@ const GeoLayout luigi_metal_vanish_geo_body[] = {
GEO_ASM(0, geo_mario_tilt_torso), GEO_ASM(0, geo_mario_tilt_torso),
GEO_ROTATION_NODE(0x00, 0, 0, 0), GEO_ROTATION_NODE(0x00, 0, 0, 0),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, luigi_metal_torso_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 80, 0, 0, luigi_metal_torso_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 90, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 91, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_vanish_geo_face_and_wings), GEO_BRANCH(1, luigi_metal_vanish_geo_face_and_wings),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 55, -10, 65, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 60, -10, 69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_arm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_left_arm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, 0, luigi_left_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 70, 0, 0, luigi_left_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_vanish_geo_left_hand), GEO_BRANCH(1, luigi_metal_vanish_geo_left_hand),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 56, -10, -65, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 61, -10, -69, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_arm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_arm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 63, 0, 0, luigi_right_forearm_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 70, 0, 0, luigi_right_forearm_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_BRANCH(1, luigi_metal_vanish_geo_right_hand), GEO_BRANCH(1, luigi_metal_vanish_geo_right_hand),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -594,23 +636,23 @@ const GeoLayout luigi_metal_vanish_geo_body[] = {
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 15, -9, 40, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 13, -8, 39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_metal_left_thigh), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_metal_left_thigh),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 97, 0, 0, luigi_left_leg_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 98, 0, 0, luigi_left_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, luigi_left_foot_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, luigi_left_foot_shared_dl),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 15, -9, -40, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 13, -8, -39, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_thigh_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 0, 0, 0, luigi_right_thigh_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 97, 0, 0, luigi_right_leg_shared_dl), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 98, 0, 0, luigi_right_leg_shared_dl),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ANIMATED_PART(LAYER_TRANSPARENT, 81, 0, 0, NULL), GEO_ANIMATED_PART(LAYER_TRANSPARENT, 78, 0, 0, NULL),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(2, geo_mario_hand_foot_scaler), GEO_ASM(2, geo_mario_hand_foot_scaler),
GEO_SCALE(0x00, 65536), GEO_SCALE(0x00, 65536),
@ -647,6 +689,7 @@ const GeoLayout luigi_geo[] = {
GEO_SCALE(0x00, 16384), GEO_SCALE(0x00, 16384),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(0, geo_mario_set_player_colors), GEO_ASM(0, geo_mario_set_player_colors),
GEO_ASM(LAYER_TRANSPARENT + 3, geo_mario_set_player_colors),
GEO_ASM(0, geo_mirror_mario_backface_culling), GEO_ASM(0, geo_mirror_mario_backface_culling),
GEO_ASM(0, geo_mirror_mario_set_alpha), GEO_ASM(0, geo_mirror_mario_set_alpha),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),

View file

@ -55,6 +55,8 @@ extern const Gfx luigi_mustache_cap_on_dl[];
extern const Gfx luigi_face_part_cap_on_dl[]; extern const Gfx luigi_face_part_cap_on_dl[];
extern const Gfx luigi_face_cap_dl[]; extern const Gfx luigi_face_cap_dl[];
extern const Gfx luigi_face_back_hair_cap_on_dl[]; extern const Gfx luigi_face_back_hair_cap_on_dl[];
extern const Gfx luigi_hair_sideburn_decal_cap_on_dl[];
extern const Gfx luigi_l_logo_decal_dl[];
extern const Gfx luigi_face_cap_on_dl[]; extern const Gfx luigi_face_cap_on_dl[];
extern const Gfx luigi_cap_on_eyes_front[]; extern const Gfx luigi_cap_on_eyes_front[];
extern const Gfx luigi_cap_on_eyes_half_closed[]; extern const Gfx luigi_cap_on_eyes_half_closed[];
@ -70,6 +72,7 @@ extern const Gfx luigi_mustache_cap_off_dl[];
extern const Gfx luigi_hair_sideburn_cap_off_dl[]; extern const Gfx luigi_hair_sideburn_cap_off_dl[];
extern const Gfx luigi_face_part_cap_off_dl[]; extern const Gfx luigi_face_part_cap_off_dl[];
extern const Gfx luigi_face_hair_cap_off_dl[]; extern const Gfx luigi_face_hair_cap_off_dl[];
extern const Gfx luigi_hair_sideburn_decal_cap_off_dl[];
extern const Gfx luigi_face_cap_off_dl[]; extern const Gfx luigi_face_cap_off_dl[];
extern const Gfx luigi_cap_off_eyes_front[]; extern const Gfx luigi_cap_off_eyes_front[];
extern const Gfx luigi_cap_off_eyes_half_closed[]; extern const Gfx luigi_cap_off_eyes_half_closed[];
@ -89,15 +92,19 @@ extern const Gfx luigi_right_hand_cap_l_logo_dl[];
extern const Gfx luigi_right_hand_cap_top_dl[]; extern const Gfx luigi_right_hand_cap_top_dl[];
extern const Gfx luigi_right_hand_cap_hand_position_dl[]; extern const Gfx luigi_right_hand_cap_hand_position_dl[];
extern const Gfx luigi_right_hand_cap_bottom_dl[]; extern const Gfx luigi_right_hand_cap_bottom_dl[];
extern const Gfx luigi_right_hand_cap_decal_dl[];
extern const Gfx luigi_right_hand_cap_dl[]; extern const Gfx luigi_right_hand_cap_dl[];
extern const Gfx luigi_right_hand_cap_wings_half_1_dl[]; extern const Gfx luigi_right_hand_cap_wings_half_1_dl[];
extern const Gfx luigi_right_hand_cap_wings_half_2_dl[]; extern const Gfx luigi_right_hand_cap_wings_half_2_dl[];
extern const Gfx luigi_right_hand_cap_wings_intial_dl[]; extern const Gfx luigi_right_hand_cap_wings_intial_dl[];
extern const Gfx luigi_right_hand_cap_wings_transparent_intial_dl[];
extern const Gfx luigi_right_hand_cap_wings_end_dl[]; extern const Gfx luigi_right_hand_cap_wings_end_dl[];
extern const Gfx luigi_right_hand_cap[]; extern const Gfx luigi_right_hand_cap[];
extern const Gfx luigi_right_hand_cap_wings[]; extern const Gfx luigi_right_hand_cap_wings[];
extern const Gfx luigi_right_hand_cap_wings_transparent[];
extern const Gfx luigi_metal_right_hand_cap_shared_dl[]; extern const Gfx luigi_metal_right_hand_cap_shared_dl[];
extern const Gfx luigi_metal_right_hand_cap_shared_dl_wings[]; extern const Gfx luigi_metal_right_hand_cap_shared_dl_wings[];
extern const Gfx luigi_metal_right_hand_cap_shared_dl_wings_transparent[];
extern const Gfx luigi_right_hand_peace_shared_dl[]; extern const Gfx luigi_right_hand_peace_shared_dl[];
extern const Gfx luigi_right_hand_peace[]; extern const Gfx luigi_right_hand_peace[];
extern const Gfx luigi_wings_half_1_dl[]; extern const Gfx luigi_wings_half_1_dl[];

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 313 B

View file

@ -8,8 +8,16 @@ const GeoLayout luigis_cap_geo[] = {
GEO_ASM(10, geo_update_layer_transparency), GEO_ASM(10, geo_update_layer_transparency),
GEO_SWITCH_CASE(2, geo_switch_anim_state), GEO_SWITCH_CASE(2, geo_switch_anim_state),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_seg3_dl_03022F48), GEO_NODE_START(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_seg3_dl_03022F48), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_seg3_dl_03022F48),
GEO_CLOSE_NODE(),
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_seg3_dl_03022F48),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -22,6 +30,7 @@ const GeoLayout luigis_metal_cap_geo[] = {
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_SCALE(0x00, 16384), GEO_SCALE(0x00, 16384),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_ASM(1, geo_mario_set_player_colors),
GEO_ASM(10, geo_update_layer_transparency), GEO_ASM(10, geo_update_layer_transparency),
GEO_SWITCH_CASE(2, geo_switch_anim_state), GEO_SWITCH_CASE(2, geo_switch_anim_state),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
@ -45,11 +54,13 @@ const GeoLayout luigis_wing_cap_geo[] = {
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_NODE_START(), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_seg3_dl_03022F48), GEO_DISPLAY_LIST(LAYER_OPAQUE, luigi_cap_seg3_dl_03022F48),
GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_cap_seg3_dl_030230B0), GEO_DISPLAY_LIST(LAYER_ALPHA, luigi_cap_seg3_dl_030230B0),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_NODE_START(), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_l_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_seg3_dl_03023160), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, luigi_cap_seg3_dl_03023160),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),

View file

@ -2,25 +2,20 @@
// 0x0301CF08 // 0x0301CF08
static const Lights1 luigi_cap_seg3_lights_0301CF08 = gdSPDefLights1( static const Lights1 luigi_cap_seg3_lights_0301CF08 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x39, 0x03, 0x00,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0x73, 0x06, 0x00, 0x28, 0x28, 0x28
); );
// 0x0301CF20 // 0x0301CF20
static const Lights1 luigi_cap_seg3_lights_0301CF20 = gdSPDefLights1( static const Lights1 luigi_cap_seg3_lights_0301CF20 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x7f, 0x7f, 0x7f,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0xff, 0xff, 0xff, 0x28, 0x28, 0x28
); );
// 0x0301CF38 // 0x0301CF38
static const Lights1 luigi_cap_seg3_lights_0301CF38 = gdSPDefLights1( static const Lights1 luigi_cap_seg3_lights_0301CF38 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x00, 0x7f, 0x00,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0x00, 0xff, 0x00, 0x28, 0x28, 0x28
);
static const Lights1 luigi_cap_seg3_lights_white = gdSPDefLights1(
0x7f, 0x7f, 0x7f,
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
); );
#include "actors/mario_cap/mario_cap_externs.h" #include "actors/mario_cap/mario_cap_externs.h"
@ -29,10 +24,11 @@ static const Lights1 luigi_cap_seg3_lights_white = gdSPDefLights1(
#define luigi_cap_seg3_texture_0301F750 mario_cap_seg3_texture_0301F750 #define luigi_cap_seg3_texture_0301F750 mario_cap_seg3_texture_0301F750
#define luigi_cap_seg3_texture_03020750 mario_cap_seg3_texture_03020750 #define luigi_cap_seg3_texture_03020750 mario_cap_seg3_texture_03020750
#define luigi_cap_seg3_texture_03021750 mario_cap_seg3_texture_03021750 #define luigi_cap_seg3_texture_03021750 mario_cap_seg3_texture_03021750
#define luigi_cap_texture_cap_inside mario_cap_texture_cap_inside
// 0x0301DF50 // 0x0301DF50
ALIGNED8 const Texture luigi_cap_seg3_texture_0301DF50[] = { ALIGNED8 const Texture luigi_cap_seg3_texture_0301DF50[] = {
#include "actors/luigi_cap/custom_luigi_cap_logo.rgba16.inc.c" #include "actors/luigi_cap/custom_luigi_cap_logo.ia16.inc.c"
}; };
// 0x03022750 // 0x03022750
@ -167,8 +163,20 @@ const Gfx luigi_cap_seg3_dl_03022CC8[] = {
// 0x03022D10 - 0x03022D38 // 0x03022D10 - 0x03022D38
const Gfx luigi_cap_seg3_dl_03022D10[] = { const Gfx luigi_cap_seg3_dl_03022D10[] = {
gsSPDisplayList(luigi_cap_seg3_dl_03022B68), gsSPDisplayList(luigi_cap_seg3_dl_03022B68),
gsDPSetCombineMode(G_CC_MODULATERGBFADEA, G_CC_MODULATERGBFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (8 - 1) << G_TEXTURE_IMAGE_FRAC, (8 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, luigi_cap_texture_cap_inside),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 8 * 8 - 1, CALC_DXT(8, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF08.a, 2), gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF08.a, 2),
gsSPDisplayList(luigi_cap_seg3_dl_03022CC8), gsSPDisplayList(luigi_cap_seg3_dl_03022CC8),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };
@ -238,23 +246,32 @@ const Gfx luigi_cap_seg3_dl_03022F20[] = {
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };
// 0x03022F48 - 0x03022FF8 const Gfx luigi_cap_l_logo_decal_dl[] = {
const Gfx luigi_cap_seg3_dl_03022F48[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_BLENDRGBFADEA, G_CC_BLENDRGBFADEA), gsDPSetCombineMode(G_CC_MODULATERGBFADEA, G_CC_MODULATERGBFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(), gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, luigi_cap_seg3_texture_0301DF50), gsDPSetTextureImage(G_IM_FMT_IA, G_IM_SIZ_16b, 1, luigi_cap_seg3_texture_0301DF50),
gsDPLoadSync(), gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)), gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF38.a, 2), gsSPLight(&luigi_cap_seg3_lights_0301CF20.l, 1),
gsSPLight(&luigi_cap_seg3_lights_0301CF20.a, 2),
gsSPDisplayList(luigi_cap_seg3_dl_03022B30), gsSPDisplayList(luigi_cap_seg3_dl_03022B30),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF), gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(),
};
// 0x03022F48 - 0x03022FF8
const Gfx luigi_cap_seg3_dl_03022F48[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA), gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF38.a, 2),
gsSPDisplayList(luigi_cap_seg3_dl_03022B30),
gsSPDisplayList(luigi_cap_seg3_dl_03022D10), gsSPDisplayList(luigi_cap_seg3_dl_03022D10),
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE), gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
@ -270,7 +287,7 @@ const Gfx luigi_cap_seg3_dl_03022FF8[] = {
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPLoadTextureBlock(luigi_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD), gsDPLoadTextureBlock(luigi_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), gsSPCopyLightsPlayerPart(METAL),
gsSPDisplayList(luigi_cap_seg3_dl_03022B30), gsSPDisplayList(luigi_cap_seg3_dl_03022B30),
gsSPDisplayList(luigi_cap_seg3_dl_03022B68), gsSPDisplayList(luigi_cap_seg3_dl_03022B68),
gsSPDisplayList(luigi_cap_seg3_dl_03022CC8), gsSPDisplayList(luigi_cap_seg3_dl_03022CC8),
@ -316,20 +333,9 @@ const Gfx luigi_cap_seg3_dl_03023108[] = {
// 0x03023160 - 0x03023298 // 0x03023160 - 0x03023298
const Gfx luigi_cap_seg3_dl_03023160[] = { const Gfx luigi_cap_seg3_dl_03023160[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_BLENDRGBFADEA, G_CC_BLENDRGBFADEA), gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, luigi_cap_seg3_texture_0301DF50),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF38.a, 2), gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&luigi_cap_seg3_lights_0301CF38.a, 2),
gsSPDisplayList(luigi_cap_seg3_dl_03022B30), gsSPDisplayList(luigi_cap_seg3_dl_03022B30),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsSPDisplayList(luigi_cap_seg3_dl_03022D10), gsSPDisplayList(luigi_cap_seg3_dl_03022D10),
gsDPPipeSync(), gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK), gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
@ -368,7 +374,7 @@ const Gfx luigi_cap_seg3_dl_03023298[] = {
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), gsSPCopyLightsPlayerPart(METAL), //gsSPLight(&luigi_cap_seg3_lights_0301CF20.a, 2),
gsSPDisplayList(luigi_cap_seg3_dl_03022B30), gsSPDisplayList(luigi_cap_seg3_dl_03022B30),
gsSPDisplayList(luigi_cap_seg3_dl_03022B68), gsSPDisplayList(luigi_cap_seg3_dl_03022B68),
gsSPDisplayList(luigi_cap_seg3_dl_03022CC8), gsSPDisplayList(luigi_cap_seg3_dl_03022CC8),

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 B

File diff suppressed because it is too large Load diff

View file

@ -17,3 +17,4 @@ extern ALIGNED8 const Texture mario_texture_wings_half_1[];
extern ALIGNED8 const Texture mario_texture_wings_half_2[]; extern ALIGNED8 const Texture mario_texture_wings_half_2[];
extern ALIGNED8 const Texture mario_texture_metal_wings_half_1[]; extern ALIGNED8 const Texture mario_texture_metal_wings_half_1[];
extern ALIGNED8 const Texture mario_texture_metal_wings_half_2[]; extern ALIGNED8 const Texture mario_texture_metal_wings_half_2[];
extern ALIGNED8 const Texture mario_texture_cap_inside[];

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -8,8 +8,16 @@ const GeoLayout marios_cap_geo[] = {
GEO_ASM(10, geo_update_layer_transparency), GEO_ASM(10, geo_update_layer_transparency),
GEO_SWITCH_CASE(2, geo_switch_anim_state), GEO_SWITCH_CASE(2, geo_switch_anim_state),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022F48), GEO_NODE_START(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_seg3_dl_03022F48), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_m_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022F48),
GEO_CLOSE_NODE(),
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_m_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_seg3_dl_03022F48),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
@ -46,11 +54,13 @@ const GeoLayout marios_wing_cap_geo[] = {
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_NODE_START(), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_m_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022F48), GEO_DISPLAY_LIST(LAYER_OPAQUE, mario_cap_seg3_dl_03022F48),
GEO_DISPLAY_LIST(LAYER_ALPHA, mario_cap_seg3_dl_030230B0), GEO_DISPLAY_LIST(LAYER_ALPHA, mario_cap_seg3_dl_030230B0),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_NODE_START(), GEO_NODE_START(),
GEO_OPEN_NODE(), GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_m_logo_decal_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_seg3_dl_03023160), GEO_DISPLAY_LIST(LAYER_TRANSPARENT, mario_cap_seg3_dl_03023160),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(), GEO_CLOSE_NODE(),

View file

@ -4,3 +4,4 @@ extern ALIGNED8 const Texture mario_cap_seg3_texture_0301E750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_0301F750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_0301F750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_03020750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_03020750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_03021750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_03021750[];
extern ALIGNED8 const Texture mario_cap_texture_cap_inside[];

View file

@ -25,7 +25,7 @@ ALIGNED8 const Texture mario_cap_seg3_texture_0301CF50[] = {
// 0x0301DF50 // 0x0301DF50
ALIGNED8 const Texture mario_cap_seg3_texture_0301DF50[] = { ALIGNED8 const Texture mario_cap_seg3_texture_0301DF50[] = {
#include "actors/mario_cap/custom_mario_cap_logo.rgba16.inc.c" #include "actors/mario_cap/custom_mario_cap_logo.ia16.inc.c"
}; };
// 0x0301E750 // 0x0301E750
@ -48,6 +48,10 @@ ALIGNED8 const Texture mario_cap_seg3_texture_03021750[] = {
#include "actors/mario_cap/mario_cap_metal_wing_tip_unused.rgba16.inc.c" #include "actors/mario_cap/mario_cap_metal_wing_tip_unused.rgba16.inc.c"
}; };
ALIGNED8 const Texture mario_cap_texture_cap_inside[] = {
#include "actors/mario_cap/custom_mario_cap_inside.rgba16.inc.c"
};
// 0x03022750 // 0x03022750
static const Vtx mario_cap_seg3_vertex_03022750[] = { static const Vtx mario_cap_seg3_vertex_03022750[] = {
{{{ 33, 35, 118}, 0, { 728, 758}, {0x30, 0x26, 0x6e, 0xff}}}, {{{ 33, 35, 118}, 0, { 728, 758}, {0x30, 0x26, 0x6e, 0xff}}},
@ -180,8 +184,20 @@ const Gfx mario_cap_seg3_dl_03022CC8[] = {
// 0x03022D10 - 0x03022D38 // 0x03022D10 - 0x03022D38
const Gfx mario_cap_seg3_dl_03022D10[] = { const Gfx mario_cap_seg3_dl_03022D10[] = {
gsSPDisplayList(mario_cap_seg3_dl_03022B68), gsSPDisplayList(mario_cap_seg3_dl_03022B68),
gsDPSetCombineMode(G_CC_MODULATERGBFADEA, G_CC_MODULATERGBFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (8 - 1) << G_TEXTURE_IMAGE_FRAC, (8 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, mario_cap_texture_cap_inside),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 8 * 8 - 1, CALC_DXT(8, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF08.a, 2), gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF08.a, 2),
gsSPDisplayList(mario_cap_seg3_dl_03022CC8), gsSPDisplayList(mario_cap_seg3_dl_03022CC8),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };
@ -251,23 +267,32 @@ const Gfx mario_cap_seg3_dl_03022F20[] = {
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };
// 0x03022F48 - 0x03022FF8 const Gfx mario_cap_m_logo_decal_dl[] = {
const Gfx mario_cap_seg3_dl_03022F48[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_BLENDRGBFADEA, G_CC_BLENDRGBFADEA), gsDPSetCombineMode(G_CC_MODULATERGBFADEA, G_CC_MODULATERGBFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(), gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, mario_cap_seg3_texture_0301DF50), gsDPSetTextureImage(G_IM_FMT_IA, G_IM_SIZ_16b, 1, mario_cap_seg3_texture_0301DF50),
gsDPLoadSync(), gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)), gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF38.a, 2), gsSPLight(&mario_cap_seg3_lights_0301CF20.l, 1),
gsSPLight(&mario_cap_seg3_lights_0301CF20.a, 2),
gsSPDisplayList(mario_cap_seg3_dl_03022B30), gsSPDisplayList(mario_cap_seg3_dl_03022B30),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF), gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(),
};
// 0x03022F48 - 0x03022FF8
const Gfx mario_cap_seg3_dl_03022F48[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA), gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF38.a, 2),
gsSPDisplayList(mario_cap_seg3_dl_03022B30),
gsSPDisplayList(mario_cap_seg3_dl_03022D10), gsSPDisplayList(mario_cap_seg3_dl_03022D10),
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE), gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
@ -283,7 +308,7 @@ const Gfx mario_cap_seg3_dl_03022FF8[] = {
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPLoadTextureBlock(mario_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD), gsDPLoadTextureBlock(mario_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), gsSPCopyLightsPlayerPart(METAL),
gsSPDisplayList(mario_cap_seg3_dl_03022B30), gsSPDisplayList(mario_cap_seg3_dl_03022B30),
gsSPDisplayList(mario_cap_seg3_dl_03022B68), gsSPDisplayList(mario_cap_seg3_dl_03022B68),
gsSPDisplayList(mario_cap_seg3_dl_03022CC8), gsSPDisplayList(mario_cap_seg3_dl_03022CC8),
@ -329,20 +354,9 @@ const Gfx mario_cap_seg3_dl_03023108[] = {
// 0x03023160 - 0x03023298 // 0x03023160 - 0x03023298
const Gfx mario_cap_seg3_dl_03023160[] = { const Gfx mario_cap_seg3_dl_03023160[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineMode(G_CC_BLENDRGBFADEA, G_CC_BLENDRGBFADEA), gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, mario_cap_seg3_texture_0301DF50),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF38.a, 2), gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF38.a, 2),
gsSPDisplayList(mario_cap_seg3_dl_03022B30), gsSPDisplayList(mario_cap_seg3_dl_03022B30),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADEFADEA, G_CC_SHADEFADEA),
gsSPDisplayList(mario_cap_seg3_dl_03022D10), gsSPDisplayList(mario_cap_seg3_dl_03022D10),
gsDPPipeSync(), gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK), gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
@ -381,7 +395,7 @@ const Gfx mario_cap_seg3_dl_03023298[] = {
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&mario_cap_seg3_lights_0301CF20.a, 2), gsSPCopyLightsPlayerPart(METAL), //gsSPLight(&mario_cap_seg3_lights_0301CF20.a, 2),
gsSPDisplayList(mario_cap_seg3_dl_03022B30), gsSPDisplayList(mario_cap_seg3_dl_03022B30),
gsSPDisplayList(mario_cap_seg3_dl_03022B68), gsSPDisplayList(mario_cap_seg3_dl_03022B68),
gsSPDisplayList(mario_cap_seg3_dl_03022CC8), gsSPDisplayList(mario_cap_seg3_dl_03022CC8),

View file

@ -4803,7 +4803,7 @@ Gfx mat_waluigi_nose[] = {
gsDPPipeSync(), gsDPPipeSync(),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT), gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
gsSPTexture(65535, 65535, 0, 0, 1), gsSPTexture(65535, 65535, 0, 0, 1),
gsSPCopyLightsPlayerPart(NOSE), gsSPSetLights1(waluigi_nose_lights),
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 997 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 845 B

After

Width:  |  Height:  |  Size: 733 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 1,001 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,017 B

After

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 965 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 991 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 993 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 985 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 B

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 620 B

After

Width:  |  Height:  |  Size: 930 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 801 B

After

Width:  |  Height:  |  Size: 605 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 784 B

After

Width:  |  Height:  |  Size: 671 B

File diff suppressed because it is too large Load diff

View file

@ -1,237 +1,119 @@
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt1[]; extern const GeoLayout wario_geo_face_and_wings[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt2[]; extern const GeoLayout wario_geo_left_hand[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt3[]; extern const GeoLayout wario_geo_right_hand[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt4[]; extern const GeoLayout wario_geo_body[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt5[]; extern const GeoLayout wario_vanish_geo_face_and_wings[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt6[]; extern const GeoLayout wario_vanish_geo_left_hand[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt1_000_switch_001_opt7[]; extern const GeoLayout wario_vanish_geo_right_hand[];
extern const GeoLayout wario_head_capless[]; extern const GeoLayout wario_vanish_geo_body[];
extern const GeoLayout wario_left_hand_open[]; extern const GeoLayout wario_metal_geo_face_and_wings[];
extern const GeoLayout wario_right_hand_open[]; extern const GeoLayout wario_metal_geo_left_hand[];
extern const GeoLayout wario_right_hand_peace[]; extern const GeoLayout wario_metal_geo_right_hand[];
extern const GeoLayout wario_right_hand_cap[]; extern const GeoLayout wario_metal_geo_body[];
extern const GeoLayout wario_right_hand_wing_cap[]; extern const GeoLayout wario_metal_vanish_geo_face_and_wings[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt1[]; extern const GeoLayout wario_metal_vanish_geo_left_hand[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt2[]; extern const GeoLayout wario_metal_vanish_geo_right_hand[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt3[]; extern const GeoLayout wario_metal_vanish_geo_body[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt4[]; extern const GeoLayout wario_geo_load_body[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt5[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt6[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt1_000_switch_001_opt7[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_head_capless[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_left_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_right_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_right_hand_peace[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_right_hand_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_jump_wario_right_hand_wing_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt1[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt2[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt3[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt4[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt5[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt6[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1_000_switch_opt0_000_switch_001_opt7[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt1[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_head_capless[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_left_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_right_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_right_hand_peace[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_right_hand_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2_jump_wario_right_hand_wing_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt2[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_head_capless[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_left_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_right_hand_open[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_right_hand_peace[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_right_hand_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3_jump_wario_right_hand_wing_cap[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt3[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt1[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt2[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt3[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt4[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt5[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt6[];
extern const GeoLayout wario_002_switch_opt0_001_switch_opt0_000_switch_opt0_000_switch_001_opt7[];
extern const GeoLayout wario_geo[]; extern const GeoLayout wario_geo[];
extern Vtx wario_000_offset_pelvis_mesh_layer_1_vtx_0[76]; extern const Gfx wario_butt_dl[];
extern Gfx wario_000_offset_pelvis_mesh_layer_1_tri_0[]; extern const Gfx wario_butt[];
extern Vtx wario_000_offset_chest_mesh_layer_1_vtx_0[94]; extern const Gfx wario_metal_butt[];
extern Gfx wario_000_offset_chest_mesh_layer_1_tri_0[]; extern const Gfx wario_left_arm_shared_dl[];
extern Vtx wario_000_offset_chest_mesh_layer_1_vtx_1[31]; extern const Gfx wario_left_arm[];
extern Gfx wario_000_offset_chest_mesh_layer_1_tri_1[]; extern const Gfx wario_left_forearm_shared_dl[];
extern Vtx wario_000_offset_chest_mesh_layer_1_vtx_2[14]; extern const Gfx wario_left_hand_closed_shared_dl[];
extern Gfx wario_000_offset_chest_mesh_layer_1_tri_2[]; extern const Gfx wario_left_hand_closed[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_0[7]; extern const Gfx wario_right_arm_shared_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_0[]; extern const Gfx wario_right_arm[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_1[47]; extern const Gfx wario_right_forearm_shared_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_1[]; extern const Gfx wario_right_hand_closed_dl[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_2[24]; extern const Gfx wario_right_hand_closed[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_2[]; extern const Gfx wario_metal_right_hand_closed[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_3[9]; extern const Gfx wario_left_thigh_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_3[]; extern const Gfx wario_left_thigh[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_4[12]; extern const Gfx wario_metal_left_thigh[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_4[]; extern const Gfx wario_left_leg_shared_dl[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_5[63]; extern const Gfx wario_left_foot_shared_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_5[]; extern const Gfx wario_left_foot[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_6[26]; extern const Gfx wario_right_thigh_shared_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_6[]; extern const Gfx wario_right_thigh[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_7[40]; extern const Gfx wario_right_leg_shared_dl[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_7[]; extern const Gfx wario_right_foot_dl[];
extern Vtx wario_000_displaylist_head_cap_mesh_layer_1_vtx_8[10]; extern const Gfx wario_right_foot[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_tri_8[]; extern const Gfx wario_metal_right_foot[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_0[9]; extern const Gfx wario_white_button_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_0[]; extern const Gfx wario_pants_overalls_shared_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_1[12]; extern const Gfx wario_tshirt_shared_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_1[]; extern const Gfx wario_torso_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_2[100]; extern const Gfx wario_torso[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_2[]; extern const Gfx wario_metal_torso_shared_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_3[63]; extern const Gfx wario_w_logo_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_3[]; extern const Gfx wario_eyes_cap_on_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_4[26]; extern const Gfx wario_hair_sideburn_cap_on_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_4[]; extern const Gfx wario_mouth_cap_on_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_5[40]; extern const Gfx wario_face_part_cap_on_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_5[]; extern const Gfx wario_face_cap_dl[];
extern Vtx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_vtx_6[10]; extern const Gfx wario_face_back_hair_cap_on_dl[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_tri_6[]; extern const Gfx wario_nose_cap_on_dl[];
extern Vtx wario_000_offset_left_upper_arm_mesh_layer_1_vtx_0[31]; extern const Gfx wario_mustache_cap_on_dl[];
extern Gfx wario_000_offset_left_upper_arm_mesh_layer_1_tri_0[]; extern const Gfx wario_mustache_cap_on_dead_dl[];
extern Vtx wario_000_offset_left_lower_arm_mesh_layer_1_vtx_0[16]; extern const Gfx wario_hair_sideburn_decal_cap_on_dl[];
extern Gfx wario_000_offset_left_lower_arm_mesh_layer_1_tri_0[]; extern const Gfx wario_face_cap_on_dl[];
extern Vtx wario_000_displaylist_left_hand_fist_mesh_layer_1_vtx_0[45]; extern const Gfx wario_cap_on_eyes_front[];
extern Gfx wario_000_displaylist_left_hand_fist_mesh_layer_1_tri_0[]; extern const Gfx wario_cap_on_eyes_half_closed[];
extern Vtx wario_001_switch_000_offset_left_hand_open_mesh_layer_1_vtx_0[56]; extern const Gfx wario_cap_on_eyes_closed[];
extern Gfx wario_001_switch_000_offset_left_hand_open_mesh_layer_1_tri_0[]; extern const Gfx wario_cap_on_eyes_right[];
extern Vtx wario_000_offset_right_upper_arm_mesh_layer_1_vtx_0[28]; extern const Gfx wario_cap_on_eyes_left[];
extern Gfx wario_000_offset_right_upper_arm_mesh_layer_1_tri_0[]; extern const Gfx wario_cap_on_eyes_up[];
extern Vtx wario_000_offset_right_lower_arm_mesh_layer_1_vtx_0[16]; extern const Gfx wario_cap_on_eyes_down[];
extern Gfx wario_000_offset_right_lower_arm_mesh_layer_1_tri_0[]; extern const Gfx wario_cap_on_eyes_dead[];
extern Vtx wario_000_displaylist_right_hand_fist_mesh_layer_1_vtx_0[41]; extern const Gfx wario_metal_cap_on_shared_dl[];
extern Gfx wario_000_displaylist_right_hand_fist_mesh_layer_1_tri_0[]; extern const Gfx wario_eyes_cap_off_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_open_mesh_layer_1_vtx_0[60]; extern const Gfx wario_mouth_cap_off_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_open_mesh_layer_1_tri_0[]; extern const Gfx wario_hair_sideburn_cap_off_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_peace_mesh_layer_1_vtx_0[87]; extern const Gfx wario_face_part_cap_off_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_peace_mesh_layer_1_tri_0[]; extern const Gfx wario_face_hair_cap_off_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_vtx_0[46]; extern const Gfx wario_nose_cap_off_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_tri_0[]; extern const Gfx wario_mustache_cap_off_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_vtx_1[5]; extern const Gfx wario_mustache_cap_off_dead_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_tri_1[]; extern const Gfx wario_hair_sideburn_decal_cap_off_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_vtx_2[41]; extern const Gfx wario_face_cap_off_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_tri_2[]; extern const Gfx wario_cap_off_eyes_front[];
extern Vtx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_vtx_3[10]; extern const Gfx wario_cap_off_eyes_half_closed[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_tri_3[]; extern const Gfx wario_cap_off_eyes_closed[];
extern Vtx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_vtx_0[46]; extern const Gfx wario_cap_off_eyes_right[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_tri_0[]; extern const Gfx wario_cap_off_eyes_left[];
extern Vtx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_vtx_1[5]; extern const Gfx wario_cap_off_eyes_up[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_tri_1[]; extern const Gfx wario_cap_off_eyes_down[];
extern Vtx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_vtx_2[41]; extern const Gfx wario_cap_off_eyes_dead[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_tri_2[]; extern const Gfx wario_metal_cap_off_shared_dl[];
extern Vtx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_vtx_3[10]; extern const Gfx wario_left_hand_open_shared_dl[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_tri_3[]; extern const Gfx wario_left_hand_open[];
extern Vtx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4_vtx_0[8]; extern const Gfx wario_right_hand_open_dl[];
extern Gfx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4_tri_0[]; extern const Gfx wario_right_hand_open[];
extern Vtx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4_vtx_1[8]; extern const Gfx wario_metal_right_hand_open[];
extern Gfx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4_tri_1[]; extern const Gfx wario_right_hand_cap_w_logo_dl[];
extern Vtx wario_000_offset_left_upper_leg_mesh_layer_1_vtx_0[22]; extern const Gfx wario_right_hand_cap_top_dl[];
extern Gfx wario_000_offset_left_upper_leg_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap_hand_position_dl[];
extern Vtx wario_000_offset_left_lower_leg_mesh_layer_1_vtx_0[12]; extern const Gfx wario_right_hand_cap_bottom_dl[];
extern Gfx wario_000_offset_left_lower_leg_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap_dl[];
extern Vtx wario_000_offset_left_foot_mesh_layer_1_vtx_0[37]; extern const Gfx wario_right_hand_cap_wings_half_1_dl[];
extern Gfx wario_000_offset_left_foot_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap_wings_half_2_dl[];
extern Vtx wario_000_offset_right_upper_leg_mesh_layer_1_vtx_0[22]; extern const Gfx wario_right_hand_cap_wings_intial_dl[];
extern Gfx wario_000_offset_right_upper_leg_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap_wings_transparent_intial_dl[];
extern Vtx wario_000_offset_right_lower_leg_mesh_layer_1_vtx_0[22]; extern const Gfx wario_right_hand_cap_wings_end_dl[];
extern Gfx wario_000_offset_right_lower_leg_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap[];
extern Vtx wario_000_displaylist_right_foot_mesh_layer_1_vtx_0[38]; extern const Gfx wario_right_hand_cap_wings[];
extern Gfx wario_000_displaylist_right_foot_mesh_layer_1_tri_0[]; extern const Gfx wario_right_hand_cap_wings_transparent[];
extern Gfx mat_wario_overalls[]; extern const Gfx wario_metal_right_hand_cap_shared_dl[];
extern Gfx mat_wario_metal[]; extern const Gfx wario_metal_right_hand_cap_shared_dl_wings[];
extern Gfx mat_revert_wario_metal[]; extern const Gfx wario_metal_right_hand_cap_shared_dl_wings_transparent[];
extern Gfx mat_wario_cap[]; extern const Gfx wario_right_hand_peace_shared_dl[];
extern Gfx mat_wario_button[]; extern const Gfx wario_right_hand_peace[];
extern Gfx mat_wario_logo[];
extern Gfx mat_wario_hair[];
extern Gfx mat_wario_eyes_center[];
extern Gfx mat_wario_sideburn[];
extern Gfx mat_wario_face[];
extern Gfx mat_wario_mustache[];
extern Gfx mat_wario_nose[];
extern Gfx mat_wario_mouth[];
extern Gfx mat_wario_eyes_half_closed[];
extern Gfx mat_wario_eyes_closed[];
extern Gfx mat_wario_eyes_right[];
extern Gfx mat_wario_eyes_left[];
extern Gfx mat_wario_eyes_up[];
extern Gfx mat_wario_eyes_down[];
extern Gfx mat_wario_eyes_dead[];
extern Gfx mat_wario_gloves[];
extern Gfx mat_wario_wings_half_1[];
extern Gfx mat_revert_wario_wings_half_1[];
extern Gfx mat_wario_wings_half_2[];
extern Gfx mat_revert_wario_wings_half_2[];
extern Gfx mat_wario_shoes[];
extern Gfx wario_000_offset_pelvis_mesh_layer_1[];
extern Gfx wario_000_offset_pelvis_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_chest_mesh_layer_1[];
extern Gfx wario_000_offset_chest_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_half_closed_1[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_closed_2[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_right_3[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_left_4[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_up_5[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_down_6[];
extern Gfx wario_000_displaylist_head_cap_mesh_layer_1_mat_override_eyes_dead_7[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_half_closed_1[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_closed_2[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_right_3[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_left_4[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_up_5[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_down_6[];
extern Gfx wario_000_switch_000_displaylist_head_capless_mesh_layer_1_mat_override_eyes_dead_7[];
extern Gfx wario_000_offset_left_upper_arm_mesh_layer_1[];
extern Gfx wario_000_offset_left_upper_arm_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_left_lower_arm_mesh_layer_1[];
extern Gfx wario_000_offset_left_lower_arm_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_displaylist_left_hand_fist_mesh_layer_1[];
extern Gfx wario_000_displaylist_left_hand_fist_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_offset_left_hand_open_mesh_layer_1[];
extern Gfx wario_001_switch_000_offset_left_hand_open_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_right_upper_arm_mesh_layer_1[];
extern Gfx wario_000_offset_right_upper_arm_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_right_lower_arm_mesh_layer_1[];
extern Gfx wario_000_offset_right_lower_arm_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_displaylist_right_hand_fist_mesh_layer_1[];
extern Gfx wario_000_displaylist_right_hand_fist_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_offset_right_hand_open_mesh_layer_1[];
extern Gfx wario_001_switch_000_offset_right_hand_open_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_offset_right_hand_peace_mesh_layer_1[];
extern Gfx wario_001_switch_000_offset_right_hand_peace_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1[];
extern Gfx wario_001_switch_000_offset_right_hand_cap_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1[];
extern Gfx wario_001_switch_000_offset_right_hand_wing_cap_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4[];
extern Gfx wario_001_switch_000_displaylist_right_hand_cap_wings_mesh_layer_4_mat_override_metal_0[];
extern Gfx wario_000_offset_left_upper_leg_mesh_layer_1[];
extern Gfx wario_000_offset_left_upper_leg_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_left_lower_leg_mesh_layer_1[];
extern Gfx wario_000_offset_left_lower_leg_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_left_foot_mesh_layer_1[];
extern Gfx wario_000_offset_left_foot_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_right_upper_leg_mesh_layer_1[];
extern Gfx wario_000_offset_right_upper_leg_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_offset_right_lower_leg_mesh_layer_1[];
extern Gfx wario_000_offset_right_lower_leg_mesh_layer_1_mat_override_metal_0[];
extern Gfx wario_000_displaylist_right_foot_mesh_layer_1[];
extern Gfx wario_000_displaylist_right_foot_mesh_layer_1_mat_override_metal_0[];
extern const Gfx wario_wings_half_1_dl[]; extern const Gfx wario_wings_half_1_dl[];
extern const Gfx wario_wings_half_2_dl[]; extern const Gfx wario_wings_half_2_dl[];
extern const Gfx wario_cap_wings[]; extern const Gfx wario_cap_wings[];
extern const Gfx wario_cap_wings_transparent[]; extern const Gfx wario_cap_wings_transparent[];
extern const Gfx wario_metal_cap_wings[]; extern const Gfx wario_metal_cap_wings[];
extern const Gfx wario_metal_cap_wings_transparent[]; extern const Gfx wario_metal_cap_wings_transparent[];
extern Gfx wario_material_revert_render_settings[];

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 B

After

Width:  |  Height:  |  Size: 547 B

View file

@ -2,25 +2,20 @@
// 0x0301CF08 // 0x0301CF08
static const Lights1 wario_cap_seg3_lights_0301CF08 = gdSPDefLights1( static const Lights1 wario_cap_seg3_lights_0301CF08 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x39, 0x03, 0x00,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0x73, 0x06, 0x00, 0x28, 0x28, 0x28
); );
// 0x0301CF20 // 0x0301CF20
static const Lights1 wario_cap_seg3_lights_0301CF20 = gdSPDefLights1( static const Lights1 wario_cap_seg3_lights_0301CF20 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x7f, 0x7f, 0x7f,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0xff, 0xff, 0xff, 0x28, 0x28, 0x28
); );
// 0x0301CF38 // 0x0301CF38
static const Lights1 wario_cap_seg3_lights_0301CF38 = gdSPDefLights1( static const Lights1 wario_cap_seg3_lights_0301CF38 = gdSPDefLights1(
0x00, 0x46, 0x00, 0x7f, 0x5e, 0x00,
0x00, 0x8C, 0x00, 0x28, 0x28, 0x28 0xff, 0xbd, 0x00, 0x28, 0x28, 0x28
);
static const Lights1 wario_cap_seg3_lights_white = gdSPDefLights1(
0x7f, 0x7f, 0x7f,
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
); );
#include "actors/mario_cap/mario_cap_externs.h" #include "actors/mario_cap/mario_cap_externs.h"
@ -29,6 +24,7 @@ static const Lights1 wario_cap_seg3_lights_white = gdSPDefLights1(
#define wario_cap_seg3_texture_0301F750 mario_cap_seg3_texture_0301F750 #define wario_cap_seg3_texture_0301F750 mario_cap_seg3_texture_0301F750
#define wario_cap_seg3_texture_03020750 mario_cap_seg3_texture_03020750 #define wario_cap_seg3_texture_03020750 mario_cap_seg3_texture_03020750
#define wario_cap_seg3_texture_03021750 mario_cap_seg3_texture_03021750 #define wario_cap_seg3_texture_03021750 mario_cap_seg3_texture_03021750
#define wario_cap_texture_cap_inside mario_cap_texture_cap_inside
// 0x0301DF50 // 0x0301DF50
ALIGNED8 const Texture wario_cap_seg3_texture_0301DF50[] = { ALIGNED8 const Texture wario_cap_seg3_texture_0301DF50[] = {
@ -167,8 +163,20 @@ const Gfx wario_cap_seg3_dl_03022CC8[] = {
// 0x03022D10 - 0x03022D38 // 0x03022D10 - 0x03022D38
const Gfx wario_cap_seg3_dl_03022D10[] = { const Gfx wario_cap_seg3_dl_03022D10[] = {
gsSPDisplayList(wario_cap_seg3_dl_03022B68), gsSPDisplayList(wario_cap_seg3_dl_03022B68),
gsDPSetCombineMode(G_CC_MODULATERGBFADEA, G_CC_MODULATERGBFADEA),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (8 - 1) << G_TEXTURE_IMAGE_FRAC, (8 - 1) << G_TEXTURE_IMAGE_FRAC),
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, wario_cap_texture_cap_inside),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 8 * 8 - 1, CALC_DXT(8, G_IM_SIZ_16b_BYTES)),
gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&wario_cap_seg3_lights_0301CF08.a, 2), gsSPCopyLightsPlayerPart(CAP), //gsSPLight(&wario_cap_seg3_lights_0301CF08.a, 2),
gsSPDisplayList(wario_cap_seg3_dl_03022CC8), gsSPDisplayList(wario_cap_seg3_dl_03022CC8),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(), gsSPEndDisplayList(),
}; };
@ -270,7 +278,7 @@ const Gfx wario_cap_seg3_dl_03022FF8[] = {
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT), gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPLoadTextureBlock(wario_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD), gsDPLoadTextureBlock(wario_cap_seg3_texture_0301CF50, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 6, 5, G_TX_NOLOD, G_TX_NOLOD),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), gsSPCopyLightsPlayerPart(METAL),
gsSPDisplayList(wario_cap_seg3_dl_03022B30), gsSPDisplayList(wario_cap_seg3_dl_03022B30),
gsSPDisplayList(wario_cap_seg3_dl_03022B68), gsSPDisplayList(wario_cap_seg3_dl_03022B68),
gsSPDisplayList(wario_cap_seg3_dl_03022CC8), gsSPDisplayList(wario_cap_seg3_dl_03022CC8),
@ -368,7 +376,7 @@ const Gfx wario_cap_seg3_dl_03023298[] = {
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD), gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 6, G_TX_NOLOD),
gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC), gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON), gsSPTexture(0x0F80, 0x07C0, 0, G_TX_RENDERTILE, G_ON),
gsSPCopyLightsPlayerPart(CAP), gsSPCopyLightsPlayerPart(METAL),
gsSPDisplayList(wario_cap_seg3_dl_03022B30), gsSPDisplayList(wario_cap_seg3_dl_03022B30),
gsSPDisplayList(wario_cap_seg3_dl_03022B68), gsSPDisplayList(wario_cap_seg3_dl_03022B68),
gsSPDisplayList(wario_cap_seg3_dl_03022CC8), gsSPDisplayList(wario_cap_seg3_dl_03022CC8),

View file

@ -1625,8 +1625,6 @@ extern ALIGNED8 const Texture mario_texture_mustache[];
extern ALIGNED8 const Texture mario_texture_eyes_front[]; extern ALIGNED8 const Texture mario_texture_eyes_front[];
extern ALIGNED8 const Texture mario_texture_eyes_half_closed[]; extern ALIGNED8 const Texture mario_texture_eyes_half_closed[];
extern ALIGNED8 const Texture mario_texture_eyes_closed[]; extern ALIGNED8 const Texture mario_texture_eyes_closed[];
extern ALIGNED8 const Texture mario_texture_eyes_closed_unused1[];
extern ALIGNED8 const Texture mario_texture_eyes_closed_unused2[];
extern ALIGNED8 const Texture mario_texture_eyes_right[]; extern ALIGNED8 const Texture mario_texture_eyes_right[];
extern ALIGNED8 const Texture mario_texture_eyes_left[]; extern ALIGNED8 const Texture mario_texture_eyes_left[];
extern ALIGNED8 const Texture mario_texture_eyes_up[]; extern ALIGNED8 const Texture mario_texture_eyes_up[];
@ -1636,12 +1634,14 @@ extern ALIGNED8 const Texture mario_texture_wings_half_1[];
extern ALIGNED8 const Texture mario_texture_wings_half_2[]; extern ALIGNED8 const Texture mario_texture_wings_half_2[];
extern ALIGNED8 const Texture mario_texture_metal_wings_half_1[]; extern ALIGNED8 const Texture mario_texture_metal_wings_half_1[];
extern ALIGNED8 const Texture mario_texture_metal_wings_half_2[]; extern ALIGNED8 const Texture mario_texture_metal_wings_half_2[];
extern ALIGNED8 const Texture mario_texture_cap_inside[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_0301CF50[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_0301CF50[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_0301DF50[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_0301DF50[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_0301E750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_0301E750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_0301F750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_0301F750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_03020750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_03020750[];
extern ALIGNED8 const Texture mario_cap_seg3_texture_03021750[]; extern ALIGNED8 const Texture mario_cap_seg3_texture_03021750[];
extern ALIGNED8 const Texture mario_cap_texture_cap_inside[];
extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605AA28[]; extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605AA28[];
extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605CA28[]; extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605CA28[];
extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605EA28[]; extern ALIGNED8 const Texture impact_smoke_seg6_texture_0605EA28[];
@ -1649,9 +1649,6 @@ extern ALIGNED8 const Texture impact_smoke_seg6_texture_06060A28[];
extern ALIGNED8 const Texture luigi_texture_l_logo[]; extern ALIGNED8 const Texture luigi_texture_l_logo[];
extern ALIGNED8 const Texture luigi_texture_hair_sideburn[]; extern ALIGNED8 const Texture luigi_texture_hair_sideburn[];
extern ALIGNED8 const Texture luigi_texture_mustache[]; extern ALIGNED8 const Texture luigi_texture_mustache[];
extern ALIGNED8 const Texture luigi_texture_eyes_front[];
extern ALIGNED8 const Texture luigi_texture_eyes_half_closed[];
extern ALIGNED8 const Texture luigi_texture_eyes_closed[];
extern ALIGNED8 const Texture luigi_cap_seg3_texture_0301DF50[]; extern ALIGNED8 const Texture luigi_cap_seg3_texture_0301DF50[];
extern ALIGNED8 const Texture toad_player_texture_face[]; extern ALIGNED8 const Texture toad_player_texture_face[];
extern ALIGNED8 const Texture toad_player_texture_eyes_closed[]; extern ALIGNED8 const Texture toad_player_texture_eyes_closed[];
@ -1663,6 +1660,7 @@ extern ALIGNED8 const Texture wario_texture_white_button[];
extern ALIGNED8 const Texture wario_texture_w_logo[]; extern ALIGNED8 const Texture wario_texture_w_logo[];
extern ALIGNED8 const Texture wario_texture_hair_sideburn[]; extern ALIGNED8 const Texture wario_texture_hair_sideburn[];
extern ALIGNED8 const Texture wario_texture_mouth[]; extern ALIGNED8 const Texture wario_texture_mouth[];
extern ALIGNED8 const Texture wario_texture_mouth_dead[];
extern ALIGNED8 const Texture wario_texture_eyes_front[]; extern ALIGNED8 const Texture wario_texture_eyes_front[];
extern ALIGNED8 const Texture wario_texture_eyes_half_closed[]; extern ALIGNED8 const Texture wario_texture_eyes_half_closed[];
extern ALIGNED8 const Texture wario_texture_eyes_closed[]; extern ALIGNED8 const Texture wario_texture_eyes_closed[];

View file

@ -1057,8 +1057,6 @@ static const struct BuiltinTexInfo sDynosBuiltinTexs[] = {
define_builtin_tex(mario_texture_eyes_front, "actors/mario/mario_eyes_center.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_front, "actors/mario/mario_eyes_center.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_half_closed, "actors/mario/mario_eyes_half_closed.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_half_closed, "actors/mario/mario_eyes_half_closed.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_closed, "actors/mario/mario_eyes_closed.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_closed, "actors/mario/mario_eyes_closed.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_closed_unused1, "actors/mario/mario_eyes_closed_unused_0.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_closed_unused2, "actors/mario/mario_eyes_closed_unused_1.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_right, "actors/mario/mario_eyes_left_unused.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_right, "actors/mario/mario_eyes_left_unused.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_left, "actors/mario/mario_eyes_right_unused.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_left, "actors/mario/mario_eyes_right_unused.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_texture_eyes_up, "actors/mario/mario_eyes_up_unused.rgba16.png", 32, 32, 16), define_builtin_tex(mario_texture_eyes_up, "actors/mario/mario_eyes_up_unused.rgba16.png", 32, 32, 16),
@ -1068,12 +1066,14 @@ static const struct BuiltinTexInfo sDynosBuiltinTexs[] = {
define_builtin_tex(mario_texture_wings_half_2, "actors/mario/mario_wing_tip.rgba16.png", 32, 64, 16), define_builtin_tex(mario_texture_wings_half_2, "actors/mario/mario_wing_tip.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_texture_metal_wings_half_1, "actors/mario/mario_metal_wing_unused.rgba16.png", 32, 64, 16), define_builtin_tex(mario_texture_metal_wings_half_1, "actors/mario/mario_metal_wing_unused.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_texture_metal_wings_half_2, "actors/mario/mario_metal_wing_tip_unused.rgba16.png", 32, 64, 16), define_builtin_tex(mario_texture_metal_wings_half_2, "actors/mario/mario_metal_wing_tip_unused.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_texture_cap_inside, "actors/mario/custom_mario_cap_inside.rgba16.png", 8, 8, 16),
define_builtin_tex(mario_cap_seg3_texture_0301CF50, "actors/mario_cap/mario_cap_metal.rgba16.png", 64, 32, 16), define_builtin_tex(mario_cap_seg3_texture_0301CF50, "actors/mario_cap/mario_cap_metal.rgba16.png", 64, 32, 16),
define_builtin_tex(mario_cap_seg3_texture_0301DF50, "actors/mario_cap/custom_mario_cap_logo.rgba16.png", 32, 32, 16), define_builtin_tex(mario_cap_seg3_texture_0301DF50, "actors/mario_cap/custom_mario_cap_logo.rgba16.png", 32, 32, 16),
define_builtin_tex(mario_cap_seg3_texture_0301E750, "actors/mario_cap/mario_cap_wing.rgba16.png", 32, 64, 16), define_builtin_tex(mario_cap_seg3_texture_0301E750, "actors/mario_cap/mario_cap_wing.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_cap_seg3_texture_0301F750, "actors/mario_cap/mario_cap_wing_tip.rgba16.png", 32, 64, 16), define_builtin_tex(mario_cap_seg3_texture_0301F750, "actors/mario_cap/mario_cap_wing_tip.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_cap_seg3_texture_03020750, "actors/mario_cap/mario_cap_metal_wing_unused.rgba16.png", 32, 64, 16), define_builtin_tex(mario_cap_seg3_texture_03020750, "actors/mario_cap/mario_cap_metal_wing_unused.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_cap_seg3_texture_03021750, "actors/mario_cap/mario_cap_metal_wing_tip_unused.rgba16.png", 32, 64, 16), define_builtin_tex(mario_cap_seg3_texture_03021750, "actors/mario_cap/mario_cap_metal_wing_tip_unused.rgba16.png", 32, 64, 16),
define_builtin_tex(mario_cap_texture_cap_inside, "actors/mario_cap/custom_mario_cap_inside.rgba16.png", 8, 8, 16),
define_builtin_tex(impact_smoke_seg6_texture_0605AA28, "actors/impact_smoke/impact_smoke_0.ia16.png", 64, 64, 16), define_builtin_tex(impact_smoke_seg6_texture_0605AA28, "actors/impact_smoke/impact_smoke_0.ia16.png", 64, 64, 16),
define_builtin_tex(impact_smoke_seg6_texture_0605CA28, "actors/impact_smoke/impact_smoke_1.ia16.png", 64, 64, 16), define_builtin_tex(impact_smoke_seg6_texture_0605CA28, "actors/impact_smoke/impact_smoke_1.ia16.png", 64, 64, 16),
define_builtin_tex(impact_smoke_seg6_texture_0605EA28, "actors/impact_smoke/impact_smoke_2.ia16.png", 64, 64, 16), define_builtin_tex(impact_smoke_seg6_texture_0605EA28, "actors/impact_smoke/impact_smoke_2.ia16.png", 64, 64, 16),
@ -1081,9 +1081,6 @@ static const struct BuiltinTexInfo sDynosBuiltinTexs[] = {
define_builtin_tex(luigi_texture_l_logo, "actors/luigi/custom_luigi_logo.rgba16.png", 32, 32, 16), define_builtin_tex(luigi_texture_l_logo, "actors/luigi/custom_luigi_logo.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_texture_hair_sideburn, "actors/luigi/custom_luigi_sideburn.rgba16.png", 32, 32, 16), define_builtin_tex(luigi_texture_hair_sideburn, "actors/luigi/custom_luigi_sideburn.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_texture_mustache, "actors/luigi/custom_luigi_mustache.rgba16.png", 32, 32, 16), define_builtin_tex(luigi_texture_mustache, "actors/luigi/custom_luigi_mustache.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_texture_eyes_front, "actors/luigi/custom_luigi_eyes_center.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_texture_eyes_half_closed, "actors/luigi/custom_luigi_eyes_half_closed.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_texture_eyes_closed, "actors/luigi/custom_luigi_eyes_closed.rgba16.png", 32, 32, 16),
define_builtin_tex(luigi_cap_seg3_texture_0301DF50, "actors/luigi_cap/custom_luigi_cap_logo.rgba16.png", 32, 32, 16), define_builtin_tex(luigi_cap_seg3_texture_0301DF50, "actors/luigi_cap/custom_luigi_cap_logo.rgba16.png", 32, 32, 16),
define_builtin_tex(toad_player_texture_face, "actors/toad_player/custom_toad_face.rgba16.png", 32, 32, 16), define_builtin_tex(toad_player_texture_face, "actors/toad_player/custom_toad_face.rgba16.png", 32, 32, 16),
define_builtin_tex(toad_player_texture_eyes_closed, "actors/toad_player/custom_toad_eyes_closed.rgba16.png", 32, 32, 16), define_builtin_tex(toad_player_texture_eyes_closed, "actors/toad_player/custom_toad_eyes_closed.rgba16.png", 32, 32, 16),
@ -1095,6 +1092,7 @@ static const struct BuiltinTexInfo sDynosBuiltinTexs[] = {
define_builtin_tex(wario_texture_w_logo, "actors/wario/custom_wario_logo.rgba16.png", 32, 32, 16), define_builtin_tex(wario_texture_w_logo, "actors/wario/custom_wario_logo.rgba16.png", 32, 32, 16),
define_builtin_tex(wario_texture_hair_sideburn, "actors/wario/custom_wario_sideburn.rgba16.png", 32, 32, 16), define_builtin_tex(wario_texture_hair_sideburn, "actors/wario/custom_wario_sideburn.rgba16.png", 32, 32, 16),
define_builtin_tex(wario_texture_mouth, "actors/wario/custom_wario_mouth.rgba16.png", 64, 32, 16), define_builtin_tex(wario_texture_mouth, "actors/wario/custom_wario_mouth.rgba16.png", 64, 32, 16),
define_builtin_tex(wario_texture_mouth_dead, "actors/wario/custom_wario_mouth_dead.rgba16.png", 64, 32, 16),
define_builtin_tex(wario_texture_eyes_front, "actors/wario/custom_wario_eyes_center.rgba16.png", 64, 32, 16), define_builtin_tex(wario_texture_eyes_front, "actors/wario/custom_wario_eyes_center.rgba16.png", 64, 32, 16),
define_builtin_tex(wario_texture_eyes_half_closed, "actors/wario/custom_wario_eyes_half_closed.rgba16.png", 64, 32, 16), define_builtin_tex(wario_texture_eyes_half_closed, "actors/wario/custom_wario_eyes_half_closed.rgba16.png", 64, 32, 16),
define_builtin_tex(wario_texture_eyes_closed, "actors/wario/custom_wario_eyes_closed.rgba16.png", 64, 32, 16), define_builtin_tex(wario_texture_eyes_closed, "actors/wario/custom_wario_eyes_closed.rgba16.png", 64, 32, 16),

View file

@ -14,7 +14,9 @@
#include "pc/lua/smlua.h" #include "pc/lua/smlua.h"
extern Gfx mario_cap_seg3_dl_03022F48[]; extern Gfx mario_cap_seg3_dl_03022F48[];
extern Gfx mario_cap_m_logo_decal_dl[];
extern Gfx luigi_cap_seg3_dl_03022F48[]; extern Gfx luigi_cap_seg3_dl_03022F48[];
extern Gfx luigi_cap_l_logo_decal_dl[];
extern Gfx toad_player_dl_cap[]; extern Gfx toad_player_dl_cap[];
extern Gfx toad_player_dl_cap_decal[]; extern Gfx toad_player_dl_cap_decal[];
extern Gfx waluigi_cap_seg3_dl_03022F48[]; extern Gfx waluigi_cap_seg3_dl_03022F48[];
@ -38,9 +40,9 @@ struct Character gCharacters[CT_MAX] = {
.capMetalModelId = MODEL_MARIOS_METAL_CAP, .capMetalModelId = MODEL_MARIOS_METAL_CAP,
.capWingModelId = MODEL_MARIOS_WING_CAP, .capWingModelId = MODEL_MARIOS_WING_CAP,
.capMetalWingModelId = MODEL_MARIOS_WINGED_METAL_CAP, .capMetalWingModelId = MODEL_MARIOS_WINGED_METAL_CAP,
.capEnemyLayer = LAYER_OPAQUE, .capEnemyLayer = LAYER_TRANSPARENT,
.capEnemyGfx = mario_cap_seg3_dl_03022F48, .capEnemyGfx = mario_cap_seg3_dl_03022F48,
.capEnemyDecalGfx = NULL, .capEnemyDecalGfx = mario_cap_m_logo_decal_dl,
.torsoRotMult = 1.0f, .torsoRotMult = 1.0f,
// anim // anim
.animOffsetEnabled = false, .animOffsetEnabled = false,
@ -103,9 +105,9 @@ struct Character gCharacters[CT_MAX] = {
.capMetalModelId = MODEL_LUIGIS_METAL_CAP, .capMetalModelId = MODEL_LUIGIS_METAL_CAP,
.capWingModelId = MODEL_LUIGIS_WING_CAP, .capWingModelId = MODEL_LUIGIS_WING_CAP,
.capMetalWingModelId = MODEL_LUIGIS_WINGED_METAL_CAP, .capMetalWingModelId = MODEL_LUIGIS_WINGED_METAL_CAP,
.capEnemyLayer = LAYER_OPAQUE, .capEnemyLayer = LAYER_TRANSPARENT,
.capEnemyGfx = luigi_cap_seg3_dl_03022F48, .capEnemyGfx = luigi_cap_seg3_dl_03022F48,
.capEnemyDecalGfx = NULL, .capEnemyDecalGfx = luigi_cap_l_logo_decal_dl,
.torsoRotMult = 1.0f, .torsoRotMult = 1.0f,
// anim // anim
.animOffsetEnabled = false, .animOffsetEnabled = false,
@ -362,7 +364,7 @@ const struct PlayerPalette DEFAULT_MARIO_PALETTE =
const struct PlayerPalette gPalettePresets[PALETTE_PRESET_MAX] = { const struct PlayerPalette gPalettePresets[PALETTE_PRESET_MAX] = {
/* ---- PANTS ----- ---- SHIRT ----- ---- GLOVES ---- ---- SHOES ----- ----- HAIR ----- ----- SKIN ----- ----- CAP ------ */ /* ---- PANTS ----- ---- SHIRT ----- ---- GLOVES ---- ---- SHOES ----- ----- HAIR ----- ----- SKIN ----- ----- CAP ------ */
{{{ 0x00, 0x00, 0xff }, { 0xff, 0x00, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xff, 0x00, 0x00 }}}, // Mario {{{ 0x00, 0x00, 0xff }, { 0xff, 0x00, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xff, 0x00, 0x00 }}}, // Mario
{{{ 0x00, 0x00, 0xfe }, { 0x00, 0x98, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x00, 0x98, 0x00 }}}, // Luigi {{{ 0x00, 0x00, 0xff }, { 0x00, 0x98, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x00, 0x98, 0x00 }}}, // Luigi
{{{ 0x16, 0x16, 0x27 }, { 0x61, 0x26, 0xb0 }, { 0xff, 0xff, 0xff }, { 0xfe, 0x76, 0x00 }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x61, 0x26, 0xb0 }}}, // Waluigi {{{ 0x16, 0x16, 0x27 }, { 0x61, 0x26, 0xb0 }, { 0xff, 0xff, 0xff }, { 0xfe, 0x76, 0x00 }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x61, 0x26, 0xb0 }}}, // Waluigi
{{{ 0x7f, 0x20, 0x7a }, { 0xe3, 0xa9, 0x01 }, { 0xff, 0xff, 0xff }, { 0x0e, 0x72, 0x1c }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe3, 0xa9, 0x01 }}}, // Wario {{{ 0x7f, 0x20, 0x7a }, { 0xe3, 0xa9, 0x01 }, { 0xff, 0xff, 0xff }, { 0x0e, 0x72, 0x1c }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe3, 0xa9, 0x01 }}}, // Wario
{{{ 0xff, 0x00, 0x00 }, { 0x7b, 0x00, 0xde }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x7b, 0x00, 0xde }}}, // Chuckya {{{ 0xff, 0x00, 0x00 }, { 0x7b, 0x00, 0xde }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x7b, 0x00, 0xde }}}, // Chuckya
@ -381,10 +383,10 @@ const struct PlayerPalette gPalettePresets[PALETTE_PRESET_MAX] = {
{{{ 0xe6, 0xe3, 0xff }, { 0x37, 0x32, 0x42 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x37, 0x32, 0x42 }}}, // Eggplant {{{ 0xe6, 0xe3, 0xff }, { 0x37, 0x32, 0x42 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x37, 0x32, 0x42 }}}, // Eggplant
{{{ 0x00, 0x51, 0x10 }, { 0xff, 0x8a, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xff, 0x8a, 0x00 }}}, // Orange {{{ 0x00, 0x51, 0x10 }, { 0xff, 0x8a, 0x00 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xff, 0x8a, 0x00 }}}, // Orange
{{{ 0x4c, 0x1e, 0x3f }, { 0x65, 0xfa, 0xff }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x65, 0xfa, 0xff }}}, // Arctic {{{ 0x4c, 0x1e, 0x3f }, { 0x65, 0xfa, 0xff }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x65, 0xfa, 0xff }}}, // Arctic
{{{ 0xb2, 0x28, 0x18 }, { 0xe6, 0xe6, 0xe6 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe6, 0xe6, 0xe6 }}}, // Fire Mario {{{ 0xbf, 0x00, 0x00 }, { 0xef, 0xef, 0x9f }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xef, 0xef, 0x9f }}}, // Fire Mario
{{{ 0x00, 0x98, 0x00 }, { 0xe6, 0xe6, 0xe6 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe6, 0xe6, 0xe6 }}}, // Fire Luigi {{{ 0x00, 0x98, 0x00 }, { 0xef, 0xef, 0x9f }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xef, 0xef, 0x9f }}}, // Fire Luigi
{{{ 0x61, 0x26, 0xb0 }, { 0xe6, 0xe6, 0xe6 }, { 0xff, 0xff, 0xff }, { 0xfe, 0x76, 0x00 }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe6, 0xe6, 0xe6 }}}, // Fire Waluigi {{{ 0x61, 0x26, 0xb0 }, { 0xef, 0xef, 0x9f }, { 0xff, 0xff, 0xff }, { 0xfe, 0x76, 0x00 }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xef, 0xef, 0x9f }}}, // Fire Waluigi
{{{ 0xe3, 0xa9, 0x01 }, { 0xe6, 0xe6, 0xe6 }, { 0xff, 0xff, 0xff }, { 0x0e, 0x72, 0x1c }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe6, 0xe6, 0xe6 }}}, // Fire Wario {{{ 0xe3, 0xa9, 0x01 }, { 0xef, 0xef, 0x9f }, { 0xff, 0xff, 0xff }, { 0x0e, 0x72, 0x1c }, { 0x73, 0x53, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xef, 0xef, 0x9f }}}, // Fire Wario
{{{ 0x17, 0x18, 0x15 }, { 0xe7, 0xe7, 0x21 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe7, 0xe7, 0x21 }}}, // Busy Bee {{{ 0x17, 0x18, 0x15 }, { 0xe7, 0xe7, 0x21 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xe7, 0xe7, 0x21 }}}, // Busy Bee
{{{ 0xf7, 0x9a, 0x47 }, { 0xaa, 0x27, 0x31 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xaa, 0x27, 0x31 }}}, // Fortress {{{ 0xf7, 0x9a, 0x47 }, { 0xaa, 0x27, 0x31 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0xaa, 0x27, 0x31 }}}, // Fortress
{{{ 0xf7, 0xc2, 0x45 }, { 0x55, 0x92, 0xb2 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x55, 0x92, 0xb2 }}}, // Battlements {{{ 0xf7, 0xc2, 0x45 }, { 0x55, 0x92, 0xb2 }, { 0xff, 0xff, 0xff }, { 0x72, 0x1c, 0x0e }, { 0x73, 0x06, 0x00 }, { 0xfe, 0xc1, 0x79 }, { 0x55, 0x92, 0xb2 }}}, // Battlements