A few QoL tweaks added

This commit is contained in:
Colton Rushton 2021-02-21 23:36:02 -04:00
parent 899490a8fd
commit 56f60f4719
6 changed files with 53 additions and 8 deletions

View File

@ -183,6 +183,10 @@ endif
GRUCODE_CFLAGS := -D$(GRUCODE_DEF)
GRUCODE_ASFLAGS := $(GRUCODE_ASFLAGS) --defsym $(GRUCODE_DEF)=1
ifeq ($(USE_UNUSED_PLAY_STATE),1)
TARGET := $(TARGET).unused_play_state_enabled
endif
# Default build is for PC now
VERSION_CFLAGS := $(VERSION_CFLAGS) -DNON_MATCHING -DAVOID_UB
@ -459,8 +463,8 @@ ifeq ($(WINDOWS_BUILD),1) # fixes compilation in MXE on Linux and WSL
OBJDUMP := $(CROSS)objdump
else ifeq ($(OSX_BUILD),1)
CPP := cpp-9 -P
OBJDUMP := i686-w64-mingw32-objdump
OBJCOPY := i686-w64-mingw32-objcopy
OBJDUMP := i686-w64-mingw32-objdump
else # Linux & other builds
CPP := $(CROSS)cpp -P
OBJCOPY := $(CROSS)objcopy
@ -954,7 +958,7 @@ else
# acpp, which needs -Wp,-+ to handle C++-style comments.
$(BUILD_DIR)/src/audio/effects.o: OPT_FLAGS := -O2 -Wo,-loopunroll,0 -sopt,-inline=sequence_channel_process_sound,-scalaroptimize=1 -Wp,-+
$(BUILD_DIR)/src/audio/synthesis.o: OPT_FLAGS := -O2 -sopt,-scalaroptimize=1 -Wp,-+
#$(BUILD_DIR)/src/audio/seqplayer.o: OPT_FLAGS := -O2 -sopt,-inline_manual,-scalaroptimize=1 -Wp,-+ #-Wo,-v,-bb,-l,seqplayer_list.txt
$(BUILD_DIR)/src/audio/seqplayer.o: OPT_FLAGS := -O2 -sopt,-inline_manual,-scalaroptimize=1 -Wp,-+,-Wo,-v,-bb,-l,seqplayer_list.txt
# Add a target for build/eu/src/audio/*.copt to make it easier to see debug
$(BUILD_DIR)/src/audio/%.acpp: src/audio/%.c

View File

@ -32,7 +32,7 @@
// --| Shindou Version Nintendo Bug Fixes
/// Fixes bug where bully could still be interacted with while he dies
#define BUGFIX_BULLY_NO_INTERACT_DEATH (0 || VERSION_SH || QOL_FIXES)
/// Fixes bug where standing on a controllable platform in HMC be invisible while it blinks
/// Fixes bug where standing on a controllable platform in HMC makes Mario invisible while it blinks
#define BUGFIX_HMC_VISIBLE_CONTROL_PLATFORM (0 || VERSION_SH || QOL_FIXES)
/// Fixes bug where the angle speed isn't preserved while in a pole
#define BUGFIX_PRESERVE_VEL_POLE (0 || VERSION_SH || QOL_FIXES)
@ -42,7 +42,6 @@
/// Reenables the unused play state
#define TWEAK_USE_UNUSED_PLAY_STATE (0 || USE_UNUSED_PLAY_STATE)
// Screen Size Defines
#define SCREEN_WIDTH 320
#define SCREEN_HEIGHT 240

View File

@ -337,6 +337,10 @@
// English, "R" text is different
#define TEXT_CAMERA_ANGLE_R _("SET CAMERA ANGLE WITH [R]")
// French
#ifdef QOL_FIXES
#define TEXT_CATCH_FR _("CAPTURE")
#define TEXT_CLEAR_FR _("DÉGAGER")
#endif
#define TEXT_COURSE_FR _("NIVEAU")
#define TEXT_MY_SCORE_FR _("MON SCORE")
#define TEXT_CONTINUE_FR _("CONTINUER")
@ -344,6 +348,10 @@
#define TEXT_EXIT_GAME_FR _("QUITTER JEU")
#define TEXT_CAMERA_ANGLE_R_FR _("RÉGLAGE CAMÉRA AVEC [R]")
// German
#ifdef QOL_FIXES
#define TEXT_CATCH_DE _("FANG")
#define TEXT_CLEAR_DE _("KLAR")
#endif
#define TEXT_COURSE_DE _("KURS")
#define TEXT_MY_SCORE_DE _("LEISTUNG")
#define TEXT_CONTINUE_DE _("WEITER")

View File

@ -3379,7 +3379,11 @@ void init_camera(struct Camera *c) {
gLakituState.posHSpeed = 0.3f;
gLakituState.posVSpeed = 0.3f;
gLakituState.focHSpeed = 0.8f;
#ifndef QOL_FIXES
gLakituState.focHSpeed = 0.3f; // @bug set focHSpeed back-to-back
#else
gLakituState.focVSpeed = 0.3f;
#endif
gLakituState.roll = 0;
gLakituState.keyDanceRoll = 0;
gLakituState.unused = 0;

View File

@ -2220,6 +2220,20 @@ u8 gTextCourseArr[][7] = {
};
#endif
#if defined(VERSION_EU) && defined(QOL_FIXES)
u8 gTextCatchArr[][7] {
{ TEXT_CATCH },
{ TEXT_CATCH_FR },
{ TEXT_CATCH_DE }
};
u8 gTextClearArr[][7] {
{ TEXT_CLEAR },
{ TEXT_CLEAR_FR },
{ TEXT_CLEAR_DE }
};
#endif
#if defined(VERSION_JP) || defined(VERSION_SH)
#define CRS_NUM_X1 93
#else
@ -2871,15 +2885,25 @@ void render_course_complete_lvl_info_and_hud_str(void) {
u8 textCourse[] = { TEXT_COURSE };
u8 textCatch[] = { TEXT_CATCH };
u8 textClear[] = { TEXT_CLEAR };
#elif defined(VERSION_EU)
#elif defined(VERSION_EU) && !defined(QOL_FIXES)
UNUSED u8 textCatch[] = { TEXT_CATCH }; // unused in EU
u8 textSymStar[] = { GLYPH_STAR, GLYPH_SPACE };
#define textCourse gTextCourseArr[gInGameLanguage]
#else
#elif defined(VERSION_US) && !defined(QOL_FIXES)
u8 textCourse[] = { TEXT_COURSE };
UNUSED u8 textCatch[] = { TEXT_CATCH }; // unused in US
UNUSED u8 textClear[] = { TEXT_CLEAR };
u8 textSymStar[] = { GLYPH_STAR, GLYPH_SPACE };
#elif defined(VERSION_EU) && defined(QOL_FIXES)
u8 textSymStar[] = { GLYPH_STAR, GLYPH_SPACE };
#define textCatch gTextCatchArr[gInGameLanguage]
#define textCourse gTextCourseArr[gInGameLanguage]
#define textClear gTextClearArr[gInGameLanguage]
#else
u8 textCourse[] = { TEXT_COURSE };
u8 textCatch[] = { TEXT_CATCH };
u8 textClear[] = { TEXT_CLEAR };
u8 textSymStar[] = { GLYPH_STAR, GLYPH_SPACE };
#endif
void **actNameTbl;
@ -2938,11 +2962,15 @@ void render_course_complete_lvl_info_and_hud_str(void) {
print_generic_string(TXT_NAME_X1, 130, name);
#ifndef VERSION_EU
print_generic_string(TXT_CLEAR_X1, 130, textClear);
#elif QOL_FIXES
print_generic_string(TXT_CLEAR_X1, 130, textClear);
#endif
gDPSetEnvColor(gDisplayListHead++, 255, 255, 255, gDialogTextAlpha);
print_generic_string(TXT_NAME_X2, 132, name);
#ifndef VERSION_EU
print_generic_string(TXT_CLEAR_X2, 132, textClear);
#elif QOL_FIXES
print_generic_string(TXT_CLEAR_X2, 132, textClear);
#endif
gSPDisplayList(gDisplayListHead++, dl_ia_text_end);
print_hud_course_complete_string(HUD_PRINT_CONGRATULATIONS);
@ -2962,12 +2990,12 @@ void render_course_complete_lvl_info_and_hud_str(void) {
gSPDisplayList(gDisplayListHead++, dl_ia_text_begin);
gDPSetEnvColor(gDisplayListHead++, 0, 0, 0, gDialogTextAlpha);
print_generic_string(76, 145, name);
#if defined(VERSION_JP) || defined(VERSION_SH)
#if defined(VERSION_JP) || defined(VERSION_SH) || defined(QOL_FIXES)
print_generic_string(220, 145, textCatch);
#endif
gDPSetEnvColor(gDisplayListHead++, 255, 255, 255, gDialogTextAlpha);
print_generic_string(74, 147, name);
#if defined(VERSION_JP) || defined(VERSION_SH)
#if defined(VERSION_JP) || defined(VERSION_SH) || defined(QOL_FIXES)
print_generic_string(218, 147, textCatch);
#endif
gSPDisplayList(gDisplayListHead++, dl_ia_text_end);

View File

@ -457,9 +457,11 @@ void draw_face(struct ObjFace *face) {
}
}
}
#ifndef QOL_FIXES
if (FALSE) {
}
#endif
}
check_tri_display(face->vtxCount);