-
Notifications
You must be signed in to change notification settings - Fork 10
Add visualization features with support to MSCC data resetting #32
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
base: master
Are you sure you want to change the base?
Conversation
They include: - visualizing clone connections to (x,32) as "INVALID / MSCC Data Res. (<reason>)" in the Advanced Mechanics panel, to show that they may be made on purpose to trigger data resetting on MSCC - Possibility to view the clone buttons/clone machines numbers (in a similar way as it was possible with the monster list); they will be reported with red numbers, while the monster list entries have been modified to use blue numbers - Possibility to view the trap buttons/traps numbers; they will be reported with brown numbers - Possibility to enable the display of button and teleport connections when the mouse hovers over a button, trap, clone machine or teleport - A few advanced options, valid for MSCC only and grouped under "View" -> "Advanced (MSCC Only)", including (1) marking clone buttons with connections to (x,32) as data resetting buttons, showing a small icon with the corresponding effect (e.g., resetting the Chip X-coordinate), (2) marking tiles with tanks that may trigger the Multiple Tank Glitch in MSCC I also updated the year reported in the copyright notice.
zrax
left a comment
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.
There's a lot to look through here, and I may not be able to get to it (except my basic first pass comments) for a while... The feature sounds like a useful addition though!
src/CCEdit/CCEdit.cpp
Outdated
|
|
||
| // Search starting from the build directory when using CLion | ||
| path.setPath(QApplication::applicationDirPath()); | ||
| for(int i = 0; i < 3; ++i) { | ||
| path.cdUp(); | ||
| } | ||
| path.cd(QStringLiteral("share/cctools")); | ||
| for (const QString& file : path.entryList(tilesetGlob, QDir::Files | QDir::Readable, QDir::Name)) | ||
| tilesets << path.absoluteFilePath(file); |
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.
This doesn't really belong here... Personally, I just copy the necessary files into the build dir to make it happy for debugging.
.gitignore
Outdated
| cmake-build-debug | ||
| cmake-build-optimized |
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.
| cmake-build-debug | |
| cmake-build-optimized | |
| /cmake-build-* |
src/CCEdit/AdvancedMechanics.cpp
Outdated
| QTreeWidgetItem* AdvancedMechanicsDialog::addCloneItem(const ccl::Clone& clone) { | ||
| QTreeWidgetItem *item = new QTreeWidgetItem(m_cloneList); |
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.
Please avoid trivial formatting changes on otherwise unchanged lines...
src/CCEdit/EditorWidget.cpp
Outdated
| // This if() is here just for an additional sanity check, but can be potentially removed, since | ||
| // num_img is never expected to assume a value < 0 or > 16 |
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.
You can use a Q_ASSERT for that
.gitignore
Outdated
| /bin/Debug | ||
| /build | ||
| /res/*.tis | ||
| .idea |
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.
| .idea | |
| /.idea |
|
@zrax Thank you very much for your feedback and for your first pass on the pull request. Unfortunately in these days I'm a bit busy with my work, but I'm going to tackle all the first pass comments as soon as I'm able to! |
This commit improves the code for the visualization features with support to MSCC data resetting, based on the first pull request comments.
|
Unfortunately it took me a bit of time, but I was finally able to work on it today, and I should have tackled the first PR comments with the last commit. Thank you for the comments! |
This commit fixes the text that was previously shown when the mouse hovers a possibly invalid connection to a (32,y) location. Previously, the text "←?" was displayed. However, while this was properly rendered under Linux, it was under Windows. Thus, the text has been modified to "32,y".
This pull request proposes a set of enhancements/additional features to CCEdit, in the hope that they may be useful for the next version of the editor.
They include, but are not limited to, a couple of advanced options to show clone buttons that may be related to data resetting in MSCC. Indeed, currently all clone button connections outside the range [0,31] are marked as invalid. However, in few cases, connections to (x,32) may be made on purpose to trigger data resetting.
A more exhaustive list of the enhancements is the following:
INVALID / MSCC Data Res. (<reason>)" in the Advanced Mechanics panel, to show that they may be made on purpose to trigger data resetting on MSCCI also updated the year reported in the copyright notice, as I noticed that it was still reporting "2020".