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
Skylanders Portal Menu Navigational Improvements #11694
Skylanders Portal Menu Navigational Improvements #11694
Conversation
|
Thank you for submitting the pull request, but creating a new one and closing the old one each time you make changes to it is a bit disruptive. Could you describe the tool/process you're using to submit the requests so we can guide you on how to update them? |
|
Sorry about that, I won't do that anymore. I switched repositories because the first one wasn't organized properly. I created the pull request from the GitHub website. |
80657a7
to
38a3438
Compare
|
I don't know how easy or useful this would be, but it would make sense for both lists to be comboboxes, with a button to select or deselect every option. Then again maybe it doesn't make sense to filter out (for instance) all water, magic and tech from all games |
|
That's not a bad idea, it would certainly add functionality. The reason element selection uses radio buttons right now is for the reason you said- I couldn't think of a situation when multiple elements would need to be selected. My guess is checkboxes would get annoying to uncheck, but I can definitely test it out. |
|
Why wouldn't you store the game/element within list_skylanders? enum SkyGame { G_SPYROS_ADV, G_GIANTS, G_SWAP_FORCE, G_TRAP_TEAM, G_SUPERCHARGERS };
enum SkyElement { E_MAGIC, E_WATER, E_TECH, E_FIRE, E_EARTH, E_LIFE, E_AIR, E_UNDEAD, E_OTHER };
struct SkyCharacter { const char* name; const SkyGame game; const SkyElement element; };
const std::map<const std::pair<const u16, const u16>, const SkyCharacter> list_skylanders = {
{{16, 0x0000}, {"Spyro", G_SPYROS_ADV, E_MAGIC}},
{{104, 0x0000}, {"Hot Head", G_GIANTS, E_FIRE}},
{{473, 0x0000}, {"Tread Head", G_TRAP_TEAM, E_TECH}},
...
}; |
|
That's way better, I should've done that originally. I'll make the change. |
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.
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
|
Also, just as some feedback based on my experience with my first commits: Always run clang formatting on files you have changed before committing, when you need to squash commits, I recommend Github Desktop. Made my life 10x easier. And also, make sure to rebase from the upstream branch whenever there are changes. Every so often, running git pull --rebase master. If you need/want help, feel free to reach out! |
035ed68
to
db2b9a4
Compare
|
Awesome, thanks for the help. I'm getting to work on it. |
4387b48
to
9e34801
Compare
|
Hey @deReeperJosh, I think I've fixed the issues you found except the ones relating to Mac. I found access to a Mac at a library nearby and I'm trying to build Dolphin so I can test. However I'm running into a problem when running CMake. I don't have admin on this computer so that might be part of the problem, but I'll attach the command line output if it helps. What do you recommend? |
|
@jnaidu360 looks like you just need to run the command that it mentions, git submodule update --init --recursive rather than just git submodule update --init |
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
|
@deReeperJosh Thanks for the fast response. Now I get a message that "FindQt.cmake" isn't in CMAKE_MODULE_PATH. I'm looking in Dolphin's CMake folder and there's no FindQt.cmake file. Do I have to create it myself? |
|
@jnaidu360 yeah you will need to install the package manager with admin rights for this step, I am assuming you haven't installed homebrew? |
|
Correct. Let me figure out a way to get a Mac with admin and I'll get back to you. |
|
I'm happy to try to make any changes you're after on my machine, and can contribute to your repo if that's easier? |
|
I'm not at all opposed to that but I'd like to try on my own first if that's ok. I see it as a learning experience 😋 |
|
@deReeperJosh OK, I finally have access to a Mac. What is it specifically I need to do? I have the same exact problem as before. CMake is installed properly, I updated submodules, but it doesn't see Qt? Edit: I have Homebrew as well. |
|
Cool, as long as you install homebrew and then the necessary packages using homebrew you should be fine, just need to use the same commands specified in the build instructions on the readme. Run brew install qt git cmake before you configure and build 😃 |
|
@deReeperJosh I feel like I'm almost there. Running "cmake .." finishes fine, but when I run the final command, "make -j $(sysctl -n hw.logicalcpu)", I get this output with an error partway through: |
|
Not sure, doesn't look like that output shows any errors. Was there anything further up in the output log? |
|
If it's easier, we can discuss this via discord (Grim_de#3727) so we don't crowd up the conversation here |
|
Got it. FR sent. |
9e34801
to
8c22c5c
Compare
|
I just fixed the issues. For Mac, I'm still thinking of a way to make the ingame button work, so in the meantime I disabled it for that OS. The Skylanders list is missing a bunch of characters right now, but everything else should be functional, I'm going to work on cleaning up the code and adding the missing characters. |
9a7d444
to
77e317e
Compare
a663267
to
3be9bb2
Compare
|
@mbc07 Thanks for checking. Just pushed the fixes. |
3be9bb2
to
dc06394
Compare
|
Looks like you just need to include QVBoxLayout in the Window Header file |
dc06394
to
c2cd284
Compare
|
@mbc07 @deReeperJosh Done and done. Check the new changes when you're free. |
dd9b2f7
to
2d7c109
Compare
|
Got it. Let's see if this works. |
|
Thanks for your help 😄 |
|
Just did a quick little run through here and everything seems okay. Didn't really push it too hard, just wanted to make sure the functionality I use was still working. |
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
2d7c109
to
9ed692c
Compare
|
@AdmiralCurtiss Haha had to break out the Python to automate that enum class change. All fixed now. Thanks! |
9ed692c
to
06ac282
Compare
|
Should build now. |
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp
Outdated
Show resolved
Hide resolved
|
Also noticed you didn't fix the code that Admiral showed you on line 873. |
06ac282
to
b2f927d
Compare
There is actually an if statement to validate the input above the line, but I cleaned up the code anyways. |
|
@noahpistilli OK, should be all fixed. |
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.
Only skimmed the current version but I didn't notice any obvious issues. Untested.
|
Thank you both for the reviews :) |
Adds features to improve navigation of Skylanders portal menu, includes: -List of Skylanders and filters for searching -Improved buttons for faster loading options -Added default user folder for storing .sky files
b2f927d
to
66f4902
Compare



Status
Ready to merge.
Description
The current portal menu seems to break immersion. I'm trying to overhaul the portal menu to help preserve immersion during gameplay. Mainly, the goal is to make navigation easier while preserving existing functionality. I added several features:
In-game button to open portal menu, to prevent having to switch tabs during gameplay(using hotkeys instead)Notes
Upon opening, the portal window now requests the creation of directory named "Skylanders" within the user directory, if one does not exist. This directory is used as the default path for Skylanders collection, where .sky files are created, saved, and loaded.
The filters for the search window were sorted manually. The
SkylanderFiltersclass is scalable in case more filters should be added.