diff options
| author | Garrett Cox <garrettjcox@gmail.com> | 2023-06-13 07:46:15 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-13 08:46:15 -0400 |
| commit | 7a41bd3878f5da1be202631e32a1e296bf511cc6 (patch) | |
| tree | 8ff37b6a99efa6b452c7cb2a28b80c17d83e3364 /soh/src/code/z_player_lib.c | |
| parent | 90d45d4397b638e68d55a56be48f1de097fed806 (diff) | |
Mirrored world enhancement (#1569)
* Mirrored world PoC
* invert culling for health meter and A button action
* A few more fixes
* Fix for item equip animations
* Fix for pause triforce
* Mirror scenes with static backgrounds
* mirror minimap for mirror world
* mirror dungeon maps and icons on the pause menu
* mirror overworld map and icons on the pause menu
* mirror debug world movement
* mirror shops cursor and movement
* use flip flag
* Reverse crouch stab x axis for mirror mode
* use invert culling command and clean up culling logic
* Move mirror mode handler to mods and support random modes
* Small cvar tweaks
* mirror billboard score numbers and fix gyro horse mirrored inputs
---------
Co-authored-by: Adam Bird <archez39@me.com>
Diffstat (limited to 'soh/src/code/z_player_lib.c')
| -rw-r--r-- | soh/src/code/z_player_lib.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/soh/src/code/z_player_lib.c b/soh/src/code/z_player_lib.c index cb856b870..8048a6097 100644 --- a/soh/src/code/z_player_lib.c +++ b/soh/src/code/z_player_lib.c @@ -1776,7 +1776,7 @@ void func_80091A24(PlayState* play, void* seg04, void* seg06, SkelAnime* skelAni Matrix_SetTranslateRotateYXZ(pos->x - ((CVarGetInteger("gPauseLiveLink", 0) && LINK_AGE_IN_YEARS == YEARS_ADULT) ? 25 : 0), pos->y - (CVarGetInteger("gPauseTriforce", 0) ? 16 : 0), pos->z, rot); - Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); + Matrix_Scale(scale * (CVarGetInteger("gMirroredWorld", 0) ? -1 : 1), scale, scale, MTXMODE_APPLY); gSPSegment(POLY_OPA_DISP++, 0x04, seg04); gSPSegment(POLY_OPA_DISP++, 0x06, seg06); @@ -1798,7 +1798,7 @@ void func_80091A24(PlayState* play, void* seg04, void* seg06, SkelAnime* skelAni Matrix_SetTranslateRotateYXZ(pos->x - (LINK_AGE_IN_YEARS == YEARS_ADULT ? 25 : 0), pos->y + 280 + (LINK_AGE_IN_YEARS == YEARS_ADULT ? 48 : 0), pos->z, rot); - Matrix_Scale(scale * 1, scale * 1, scale * 1, MTXMODE_APPLY); + Matrix_Scale(scale * (CVarGetInteger("gMirroredWorld", 0) ? -1 : 1), scale * 1, scale * 1, MTXMODE_APPLY); Gfx* ohNo = POLY_XLU_DISP; POLY_XLU_DISP = POLY_OPA_DISP; |
