-
Notifications
You must be signed in to change notification settings - Fork 466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ADD: Time Saver --> Time Travel with the Song of Time #2575
ADD: Time Saver --> Time Travel with the Song of Time #2575
Conversation
Co-Authored-By: aMannus <4244591+aMannus@users.noreply.github.com> Co-Authored-By: David Chavez <david@dcvz.io>
Without a yes/no prompt, it becomes very easy for your blue potato to send you to a different time when you actually intended to move a Time Block, but didn't realize you weren't in range. |
There's a 300 units check between you and the block, which should be larger than their initial trigger zone, don't be shy of them :D |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good! Couple of small comments from me.
I also feel like we could have a raw GI action for the age switching and unify that with the cheat doing the same, but that doesn't have to neccesarily happen in this PR imo.
soh/soh/Enhancements/mods.cpp
Outdated
#include "functions.h" | ||
#include "variables.h" | ||
extern SaveContext gSaveContext; | ||
extern PlayState* gPlayState; | ||
extern void Play_PerformSave(PlayState* play); | ||
extern s32 Health_ChangeBy(PlayState* play, s16 healthChange); | ||
extern void Rupees_ChangeBy(s16 rupeeChange); | ||
extern void Inventory_ChangeEquipment(s16 equipment, u16 value); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you're already including the functions.h header here, you shouldn't need the seperate extern functions anymore.
soh/soh/GameMenuBar.cpp
Outdated
UIWidgets::Tooltip("Allows Link to freely change age by playing the Song of Time.\n" | ||
"Time Blocks can still be used properly.\n\n" | ||
"Requirements:\n" | ||
"- Obtained the Ocarina of Time\n" | ||
"- Obtained the Song of Time\n" | ||
"- Obtained the Master Sword\n" | ||
"- Not within range of Time Block"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm assuming some of the other checks got introduced later, but this also doesn't go through when you're next to an ocarina or scarecrow spot right? Might be good to mention that in the tooltip as well.
Ran into three issues with the current build of the enhancement. Made sure I was on the latest version by downloading the current build today to double check these issues.
Videos contain demonstrations of each issue. Though I suspect the third one is already known. But since it wasn't reported in here it, it serves both as a "incase you didn't know" and to let others know the issue exists currently. |
added the "do not merge" label, i'll remove it once the issues mentioned here #2575 (comment) are addressed |
These are most likely due to the fact that I didn't updated the branch to latest because the AgeChange cheat was broken when it was changed to an hook which has been resolved for a while but I didn't had the time to touch code for a while I'll resolve the merge conflict here, and once it's compiled, I'll give it a try |
Co-Authored-By: aMannus <4244591+aMannus@users.noreply.github.com> Co-Authored-By: David Chavez <david@dcvz.io>
Co-Authored-By: aMannus <4244591+aMannus@users.noreply.github.com> Co-Authored-By: David Chavez <david@dcvz.io>
This time saver can be a cool feature for Rando players! Imagine the Blue Potato (Ocarina of Time) being actually usefull and allowing the player to change Link's Age by playing the Song of Time.
(Thanks @aMannus and @dcvz for the help!)
SoTBluePotato.mp4
Build Artifacts