-
Notifications
You must be signed in to change notification settings - Fork 0
ai help me fix my code pls #3
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
Conversation
…left-clicking it still registers the button press
## Changelog ## Fixes - Fixes major bug when hovering over button. closing the inventory and left-clicking it still registers the button press ## Code Changes - Added debug option to config for developers to log more information. - Changed the name of the parsed files to be formatted as `<serverIp>_<timestamp>.txt` for easier identification. - Changed logger from main to client - Fixed 1.21.1 build error
## Summary Modrinth is currently unavailable; downloads and some services may be temporarily affected. ## Fixes - Fixed a bug where hovering over a button, closing the inventory, and then left-clicking still registered the button press. ## Code Changes - Added a `debug` option to the config to enable more detailed developer logging. - Renamed parsed files to the format `<serverIp>_<timestamp>.txt` for easier identification. - Switched logger context from `main` to `client`. - Resolved build error for Minecraft `1.21.1`.
## Features
- Added shadow parsing (e.g., `<shadow:hex:alpha>`) to allow for custom shadow colors in text
## Bug Fixes
- Fixed duplicate text rendering issue where text was being appended twice:
- The TextHandler was appending text via `ComponentValueRegistry.process(obj)` on line 28
- The same text was being appended again via `obj.get("text")?.asString` on line 32
- Removed the redundant append to prevent text duplication
# Code changes
- I see the problem! On line 32, it appends obj.get("text")?.asString again, but the TextHandler already appended the text in line 28 via ComponentValueRegistry.process(obj). This causes the text to appear twice.
## Features
- Added shadow parsing (e.g., `<shadow:hex:alpha>`) to allow for custom shadow colors in text
- Added the ability to toggle the parsing options for all options on by default
- Added the option to include raw nbt data in the file
## Bug Fixes
- Fixed duplicate text rendering issue where text was being appended twice:
- The TextHandler was appending text via `ComponentValueRegistry.process(obj)` on line 28
- The same text was being appended again via `obj.get("text")?.asString` on line 32
- Removed the redundant append to prevent text duplication
# Code changes
- I see the problem! On line 32, it appends obj.get("text")?.asString again, but the TextHandler already appended the text in line 28 via ComponentValueRegistry.process(obj). This causes the text to appear twice.``
## Features
- Added shadow parsing (e.g., `<shadow:hex:alpha>`) to allow for custom shadow colors in text
- Added the ability to toggle the parsing options for all options on by default
- Added the option to include raw nbt data in the file
## Bug Fixes
- Fixed duplicate text rendering issue where text was being appended twice:
- The TextHandler was appending text via `ComponentValueRegistry.process(obj)` on line 28
- The same text was being appended again via `obj.get("text")?.asString` on line 32
- Removed the redundant append to prevent text duplication
# Code changes
- I see the problem! On line 32, it appends obj.get("text")?.asString again, but the TextHandler already appended the text in line 28 via ComponentValueRegistry.process(obj). This causes the text to appear twice.``
## Features
- Added shadow parsing (e.g., `<shadow:hex:alpha>`) to allow for custom shadow colors in text
- Added the ability to toggle the parsing options for all options on by default
- Added the option to include raw nbt data in the file
## Bug Fixes
- Fixed duplicate text rendering issue where text was being appended twice:
- The TextHandler was appending text via `ComponentValueRegistry.process(obj)` on line 28
- The same text was being appended again via `obj.get("text")?.asString` on line 32
- Removed the redundant append to prevent text duplication
# Code changes
- I see the problem! On line 32, it appends obj.get("text")?.asString again, but the TextHandler already appended the text in line 28 via ComponentValueRegistry.process(obj). This causes the text to appear twice.``
## Features - Added /yoinkgui debug command where u can copy latest log along with mod info for easier bug reporting - Added the ability to move the parse buttons around the screen by dragging them. Press M to toggle the menu - Removed scale from config and made it a scrollable option in the menu (press M to open) ## Fixes - Ensure the parse button hover state won't accidentally trigger when the inventory (or other screens) are closed. - Prevent failures when sending formatted chat notifications (wraps chat sends and records errors instead of crashing). ## Code changed - Added devauth for development stuff idk
## Features - Added /yoinkgui debug command where u can copy latest log along with mod info for easier bug reporting - Added the ability to move the parse buttons around the screen by dragging them. Press M to toggle the menu - Removed scale from config and made it a scrollable option in the menu (press M to open) ## Fixes - Ensure the parse button hover state won't accidentally trigger when the inventory (or other screens) are closed. - Prevent failures when sending formatted chat notifications (wraps chat sends and records errors instead of crashing). ## Code changed - Added devauth for development stuff idk
### Released December 27, 2025 ### In-Game Changelog Viewer You can now view changelogs directly in-game! No more alt-tabbing to check what's new. - Use /yoinkguiclient changelog to view this changelog ### GUI Repositioning Menu - Use /yoinkguiclient menu to open the repositioning screen - Drag the button to your preferred location ## Bug Fixes - Fixed the move button appearing on non-inventory screens - The move button now only shows up when you're viewing your inventory ## Technical Improvements - Enhanced stability with null safety checks for changelog loading - Improved error handling to prevent crashes when viewing changelogs - Better resource management for markdown parsing - Debug command now includes class name instead of stacktrace. But stacktrace is copied. - Added `Utils#toClickCommand` method. ## Commands Summary - /yoinkguiclient changelog - View version history - /yoinkguiclient menu - Reposition GUI button
### Released December 27, 2025 ### In-Game Changelog Viewer - You can now view changelogs directly in-game! - Use /yoinkguiclient changelog to view this changelog ### GUI Repositioning Menu - Use /yoinkguiclient menu to open the repositioning screen - Drag the button to your preferred location ## Bug Fixes - Fixed the move button appearing on non-inventory screens - The move button now only shows up when you're viewing your inventory ## Technical Improvements - Enhanced stability with null safety checks for changelog loading - Improved error handling to prevent crashes when viewing changelogs - Better resource management for markdown parsing - Debug command now includes class name instead of stacktrace. But stacktrace is copied. - Added `Utils#toClickCommand` method. ## Commands Summary - /yoinkguiclient changelog - View version history - /yoinkguiclient menu - Reposition GUI button
Summary of ChangesHello @ThatOneDevil, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces a significant update to the YoinkGUI mod, focusing on user experience, NBT parsing flexibility, and developer tooling. It empowers users with greater control over the in-game UI, offers advanced NBT formatting options, and provides robust debugging features. The changes aim to make the mod more customizable, stable, and user-friendly, while also streamlining development and support processes. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
|
/gemini review |
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.
Code Review
This is an impressive pull request with a substantial number of features, bug fixes, and refactorings. The introduction of a configurable button position screen, an in-game changelog viewer, a debug command, and more granular NBT parsing options are all excellent additions that significantly improve the mod's usability and maintainability. The code quality is high, and the architectural changes, like the dynamic NBT parser registration and improved error logging, are well-implemented. I've found a couple of minor issues that I've detailed in the comments, but overall, this is a fantastic update.
Added branches-ignore to prevent builds on beta branch.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
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.
Code Review
This pull request introduces significant updates to the YoinkGUI mod, focusing on enhanced configurability, improved NBT parsing, and better user experience. Key changes include updating the mod version to 1.7.2, refactoring Gradle build configurations to add a new Maven repository for DevAuth, and updating the changelog path. The readme.md was updated to reflect new features like a configuration menu and shadow parsing, along with updated images. The mod now includes a dedicated ButtonPositionScreen accessible via the 'M' key (or /yoinkguiclient menu command) for dragging and scaling the NBT parsing button, replacing the previous config option. The NBT parser was improved to handle minecraft:item_name, simplify text component parsing, and allow configurable inclusion of raw NBT data in output files, which are now named based on the server IP and timestamp. Error handling was enhanced with a new LatestErrorLog utility and a /yoinkguiclient debug command for easier bug reporting. Additionally, a new /yoinkguiclient changelog command allows in-game viewing of release notes. The configuration system was extended to allow toggling of individual NBT formatting options (color, style, shadow, gradient) and switching between MiniMessage and Legacy formatting, with a fix for an italic parsing issue. The ScreenMixin was updated to restrict the NBT button's visibility to specific inventory screens, preventing accidental triggers. Review comments highlighted several areas for improvement: correcting the default value for formatOption to use .name instead of .displayName.toString(), removing a leading space in the DevAuth Maven repository URL, simplifying the instanceof checks in ScreenMixin by using a Set of allowed screen types, avoiding redundant calls to debugMessage in DebugCommand, fixing a typo in a user-facing string ('formating' to 'formatting'), and using a mod-specific keybinding category for the new button positioning keybind.
No description provided.