Split luigi/custom character models into custom and zcustom

This commit is contained in:
MysterD 2021-08-08 19:14:45 -07:00
parent efd22a81ab
commit 1b5ceda89d
19 changed files with 104 additions and 33 deletions

View File

@ -29,7 +29,9 @@ ACTOR_GROUPS := \
group16 \
group17 \
common0 \
common1
common1 \
custom0 \
zcustom0
LEVEL_FILES := $(addsuffix leveldata,$(LEVEL_DIRS))
MIO0_FILES := $(addprefix $(MIO0_DIR)/,$(addsuffix .mio0,$(SEGMENTS))) $(addprefix $(BUILD_DIR)/actors/,$(addsuffix .mio0,$(ACTOR_GROUPS))) $(addprefix $(BUILD_DIR)/levels/,$(addsuffix .mio0,$(LEVEL_FILES)))
@ -66,10 +68,11 @@ BOWSER_DIRS := bowser_flame impact_ring yellow_sphere bowser bomb impact_sm
MARIO_DIRS := mario bubble walk_smoke burn_smoke stomp_smoke water_wave sparkle water_splash white_particle_small sparkle_animation
# Add Luigi
COINS_DIRS += luigi_cap
MARIO_DIRS += luigi
CUSTOM_DIRS := luigi_cap
ZCUSTOM_DIRS := luigi
# Actor Files
CUSTOM_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CUSTOM_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
AMP_CHUCKYA_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(AMP_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
BOBOMBS_BUBBLE_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(KING_BOBOMB_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
BOO_BOOKEND_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(BOO_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
@ -90,6 +93,7 @@ PEACH_TOADSTOOL_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(PEACH_
SEA_CREATURES_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SEA_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
SKEETER_FISH_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SKEETER_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
SPINDRIFT_PENGUIN_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(SPINDRIFT_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
ZCUSTOM_FILES := $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(ZCUSTOM_DIRS)),$(patsubst %.png,%.inc.c,$(wildcard $(dir)/*.png)))
# Actor dependencies
$(BUILD_DIR)/actors/group0.o: $(addprefix $(BUILD_DIR)/,$(MARIO_WATER_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MARIO_DIRS)),$(wildcard $(dir)/*.c))
@ -112,6 +116,8 @@ $(BUILD_DIR)/actors/group16.o: $(addprefix $(BUILD_DIR)/,$(CHILLYCHIEF_FILES)) $
$(BUILD_DIR)/actors/group17.o: $(addprefix $(BUILD_DIR)/,$(MR_I_SWOOP_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(MR_I_DIRS)),$(wildcard $(dir)/*.c))
$(BUILD_DIR)/actors/common0.o: $(addprefix $(BUILD_DIR)/,$(AMP_CHUCKYA_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(AMP_DIRS)),$(wildcard $(dir)/*.c))
$(BUILD_DIR)/actors/common1.o: $(addprefix $(BUILD_DIR)/,$(COINS_PIPE_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(COINS_DIRS)),$(wildcard $(dir)/*.c))
$(BUILD_DIR)/actors/custom0.o: $(addprefix $(BUILD_DIR)/,$(CUSTOM_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(CUSTOM_DIRS)),$(wildcard $(dir)/*.c))
$(BUILD_DIR)/actors/zcustom0.o: $(addprefix $(BUILD_DIR)/,$(ZCUSTOM_FILES)) $(foreach dir,$(addprefix $(ACTOR_DIR)/,$(ZCUSTOM_DIRS)),$(wildcard $(dir)/*.c))
# Actor Elf Files
$(BUILD_DIR)/actors/group0.elf: SEGMENT_ADDRESS := 0x04000000
@ -134,6 +140,8 @@ $(BUILD_DIR)/actors/group16.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/actors/group17.elf: SEGMENT_ADDRESS := 0x06000000
$(BUILD_DIR)/actors/common0.elf: SEGMENT_ADDRESS := 0x08000000
$(BUILD_DIR)/actors/common1.elf: SEGMENT_ADDRESS := 0x03000000
$(BUILD_DIR)/actors/custom0.elf: SEGMENT_ADDRESS := 0x04000000
$(BUILD_DIR)/actors/zcustom0.elf: SEGMENT_ADDRESS := 0x04000000
# --------------------------------------
# Level Rules

View File

@ -54,9 +54,6 @@ UNUSED static const u64 binid_11 = 11;
#include "mario_cap/model.inc.c"
UNUSED static const u64 binid_12 = 12;
// luigi_cap
#include "luigi_cap/model.inc.c"
#include "power_meter/model.inc.c"
UNUSED static const u64 binid_13 = 13;

View File

@ -172,27 +172,6 @@ extern const Gfx mario_cap_seg3_dl_03023108[];
extern const Gfx mario_cap_seg3_dl_03023160[];
extern const Gfx mario_cap_seg3_dl_03023298[];
// luigi_cap
extern const GeoLayout luigis_cap_geo[];
//extern const GeoLayout luigis_metal_cap_geo[];
//extern const GeoLayout luigis_wing_cap_geo[];
//extern const GeoLayout luigis_winged_metal_cap_geo[];
extern const Gfx luigi_cap_seg3_dl_03022B30[];
extern const Gfx luigi_cap_seg3_dl_03022B68[];
extern const Gfx luigi_cap_seg3_dl_03022CC8[];
extern const Gfx luigi_cap_seg3_dl_03022D10[];
extern const Gfx luigi_cap_seg3_dl_03022E78[];
extern const Gfx luigi_cap_seg3_dl_03022EA8[];
extern const Gfx luigi_cap_seg3_dl_03022ED8[];
extern const Gfx luigi_cap_seg3_dl_03022F20[];
extern const Gfx luigi_cap_seg3_dl_03022F48[];
extern const Gfx luigi_cap_seg3_dl_03022FF8[];
extern const Gfx luigi_cap_seg3_dl_030230B0[];
extern const Gfx luigi_cap_seg3_dl_03023108[];
extern const Gfx luigi_cap_seg3_dl_03023160[];
extern const Gfx luigi_cap_seg3_dl_03023298[];
// mist
extern const GeoLayout mist_geo[];
extern const GeoLayout white_puff_geo[];

View File

@ -17,7 +17,6 @@
#include "blue_fish/geo.inc.c"
#include "leaves/geo.inc.c"
#include "mario_cap/geo.inc.c"
#include "luigi_cap/geo.inc.c" // custom luigi_cap
#include "number/geo.inc.c"
#include "mushroom_1up/geo.inc.c"
#include "star/geo.inc.c"

8
actors/custom0.c Normal file
View File

@ -0,0 +1,8 @@
#include <ultra64.h>
#include "sm64.h"
#include "surface_terrains.h"
#include "geo_commands.h"
#include "make_const_nonconst.h"
// luigi_cap
#include "luigi_cap/model.inc.c"

23
actors/custom0.h Normal file
View File

@ -0,0 +1,23 @@
#ifndef CUSTOM0_H
#define CUSTOM0_H
#include "types.h"
// luigi_cap
extern const GeoLayout luigis_cap_geo[];
extern const Gfx luigi_cap_seg3_dl_03022B30[];
extern const Gfx luigi_cap_seg3_dl_03022B68[];
extern const Gfx luigi_cap_seg3_dl_03022CC8[];
extern const Gfx luigi_cap_seg3_dl_03022D10[];
extern const Gfx luigi_cap_seg3_dl_03022E78[];
extern const Gfx luigi_cap_seg3_dl_03022EA8[];
extern const Gfx luigi_cap_seg3_dl_03022ED8[];
extern const Gfx luigi_cap_seg3_dl_03022F20[];
extern const Gfx luigi_cap_seg3_dl_03022F48[];
extern const Gfx luigi_cap_seg3_dl_03022FF8[];
extern const Gfx luigi_cap_seg3_dl_030230B0[];
extern const Gfx luigi_cap_seg3_dl_03023108[];
extern const Gfx luigi_cap_seg3_dl_03023160[];
extern const Gfx luigi_cap_seg3_dl_03023298[];
#endif

7
actors/custom0_geo.c Normal file
View File

@ -0,0 +1,7 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "make_const_nonconst.h"
#include "custom0.h"
#include "luigi_cap/geo.inc.c" // custom luigi_cap

View File

@ -7,7 +7,6 @@
// Note: This bin does not use bin IDs, unlike the other segmented bins.
#include "mario/model.inc.c"
#include "luigi/model.inc.c"
#include "bubble/model.inc.c"

View File

@ -263,9 +263,6 @@ extern const Gfx mario_cap_wings_transparent[];
extern const Gfx mario_metal_cap_wings[];
extern const Gfx mario_metal_cap_wings_transparent[];
// luigi
#include "actors/luigi/geo_header.h"
// sparkle
extern const GeoLayout sparkles_geo[];
extern const Gfx sparkles_seg4_dl_0402A490[];

View File

@ -16,4 +16,3 @@
#include "water_splash/geo.inc.c"
#include "sparkle_animation/geo.inc.c"
#include "mario/geo.inc.c"
#include "luigi/geo.inc.c"

View File

@ -5,6 +5,7 @@
#include "make_const_nonconst.h"
#include "common1.h"
#include "custom0.h"
#include "group5.h"
#include "klepto/geo.inc.c"

View File

@ -5,6 +5,7 @@
#include "make_const_nonconst.h"
#include "common1.h"
#include "custom0.h"
#include "group6.h"
#include "monty_mole/geo.inc.c"

8
actors/zcustom0.c Normal file
View File

@ -0,0 +1,8 @@
#include <ultra64.h>
#include "sm64.h"
#include "surface_terrains.h"
#include "geo_commands.h"
#include "make_const_nonconst.h"
// luigi model
#include "luigi/model.inc.c"

9
actors/zcustom0.h Normal file
View File

@ -0,0 +1,9 @@
#ifndef ZCUSTOM0_H
#define ZCUSTOM0_H
#include "types.h"
// luigi
#include "actors/luigi/geo_header.h"
#endif

7
actors/zcustom0_geo.c Normal file
View File

@ -0,0 +1,7 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "make_const_nonconst.h"
#include "zcustom0.h"
#include "luigi/geo.inc.c"

View File

@ -314,6 +314,8 @@
<ClCompile Include="..\actors\common0_geo.c" />
<ClCompile Include="..\actors\common1.c" />
<ClCompile Include="..\actors\common1_geo.c" />
<ClCompile Include="..\actors\custom0.c" />
<ClCompile Include="..\actors\custom0_geo.c" />
<ClCompile Include="..\actors\cyan_fish\anims\anim_0600E24C.inc.c" />
<ClCompile Include="..\actors\cyan_fish\anims\data.inc.c" />
<ClCompile Include="..\actors\cyan_fish\anims\table.inc.c" />
@ -785,6 +787,8 @@
<ClCompile Include="..\actors\yoshi\model.inc.c" />
<ClCompile Include="..\actors\yoshi_egg\geo.inc.c" />
<ClCompile Include="..\actors\yoshi_egg\model.inc.c" />
<ClCompile Include="..\actors\zcustom0.c" />
<ClCompile Include="..\actors\zcustom0_geo.c" />
<ClCompile Include="..\assets\anims\anim_00.inc.c" />
<ClCompile Include="..\assets\anims\anim_01_02.inc.c" />
<ClCompile Include="..\assets\anims\anim_03.inc.c" />
@ -4383,6 +4387,8 @@
<ClCompile Include="..\tools\utils.h" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\actors\custom0.h" />
<ClInclude Include="..\actors\zcustom0.h" />
<ClInclude Include="..\include\behavior_table.h" />
<ClInclude Include="..\include\luigi_audio_defines.h" />
<ClInclude Include="..\src\game\characters.h" />

View File

@ -15273,6 +15273,18 @@
<ClCompile Include="..\src\pc\djui\djui_panel_player.c">
<Filter>Source Files\src\pc\djui\panel</Filter>
</ClCompile>
<ClCompile Include="..\actors\zcustom0.c">
<Filter>Source Files\actors</Filter>
</ClCompile>
<ClCompile Include="..\actors\zcustom0_geo.c">
<Filter>Source Files\actors</Filter>
</ClCompile>
<ClCompile Include="..\actors\custom0.c">
<Filter>Source Files\actors</Filter>
</ClCompile>
<ClCompile Include="..\actors\custom0_geo.c">
<Filter>Source Files\actors</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\actors\common0.h">
@ -16366,5 +16378,11 @@
<ClInclude Include="..\src\pc\djui\djui_panel_player.h">
<Filter>Source Files\src\pc\djui\panel</Filter>
</ClInclude>
<ClInclude Include="..\actors\zcustom0.h">
<Filter>Header Files\actors</Filter>
</ClInclude>
<ClInclude Include="..\actors\custom0.h">
<Filter>Header Files\actors</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -15,6 +15,7 @@
#include "actors/common0.h"
#include "actors/common1.h"
#include "actors/custom0.h"
#include "actors/group1.h"
#include "actors/group2.h"
#include "actors/group3.h"
@ -32,6 +33,8 @@
#include "actors/group15.h"
#include "actors/group16.h"
#include "actors/group17.h"
#include "actors/zcustom0.h"
#include "levels/bbh/header.h"
#include "levels/castle_inside/header.h"
#include "levels/hmc/header.h"

View File

@ -10,6 +10,7 @@
#include "actors/common0.h"
#include "actors/common1.h"
#include "actors/custom0.h"
#include "actors/group0.h"
#include "actors/group1.h"
#include "actors/group2.h"
@ -28,6 +29,7 @@
#include "actors/group15.h"
#include "actors/group16.h"
#include "actors/group17.h"
#include "actors/zcustom0.h"
#include "levels/menu/header.h"
#include "levels/intro/header.h"