-
-
Notifications
You must be signed in to change notification settings - Fork 312
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
Customizable name plate/name overhead options #1524
base: main
Are you sure you want to change the base?
Conversation
} | ||
|
||
Options.Clear(); | ||
XmlDocument doc = new(); |
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.
new XmlDocument()
would be better to keep in line with the old net472
|
||
string path = Path.Combine(ProfileManager.ProfilePath, "nameoverhead.xml"); | ||
|
||
using XmlTextWriter xml = new(path, Encoding.UTF8) |
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.
No new()
for net472
public static bool IsTemporarilyShowing { get; private set; } | ||
public static bool IsShowing => IsPermaToggled || IsTemporarilyShowing || Keyboard.Ctrl && Keyboard.Shift; | ||
|
||
private static List<NameOverheadOption> Options { get; set; } = new(); |
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.
No new()
for net472
internal class NameOverheadAssignControl : Control | ||
{ | ||
private readonly HotkeyBox _hotkeyBox; | ||
private readonly Dictionary<NameOverheadOptions, Checkbox> checkboxDict = new(); |
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.
No new()
for net472
@@ -44,6 +45,9 @@ internal class NameOverHeadHandlerGump : Gump | |||
|
|||
public override GumpType GumpType => GumpType.NameOverHeadHandler; | |||
|
|||
private readonly List<RadioButton> _overheadButtons = new(); |
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.
No new()
for net472
I think there are too many options. Not sure why there should be special settings for gold, stackables, or different types of corpses. I'd say "own corpse" is going too far, if it can even be done without a hack. I'm not so sure about having a bunch of game scene input related stuff in the name overhead classes. I don't think we've used this pattern of notifying other objects about keypresses to have their own handling. Would feel better to assign slots and have them in the existing macro system. About the planned features, I would say hold off on them because the arrows thing doesn't fit with the currently hardcoded arrow key movement, and for the health stuff we already have healthbars AND HP lines AND HP% texts (and quite frankly too many implementations of healthbar handling which could use a good refactor). The one I would think about is "Add button on the overhead handler gump to allow it to stay up (similar to the macro toggle)". I assume you mean if you press ctrl+shift, that you get the option to keep the names showing when you let go? It will look strange if it was enabled from the macro but it sounds like an idea. This is all just opinion, at the end of the day it's Karasho who makes the decisions. |
Update Version for dev karasho. Implement 3 features ClassicUO/ClassicUO#1524 ClassicUO/ClassicUO#1536 (comment) https://github.com/PoodyCZ/ClassicUO/tree/MultiJournal
This PR is meant to give players the ability to fine tune how they use the name overhead stuff by giving them more detailed options.
THIS PR IS STILL A DRAFT because implementation is not finished and it's not fully tested, but please feel free to give feedback regardless!
Main Features
Planned additional features
Options
The available options are currently as follows:
How will this change affect players (if they don't like it?)
When the PR is accepted, a default config will be created that mirrors the current functionality and options exactly. This way, players who don't like the new options are not forced to adapt and can simply use the name overhead functionality as they always have.
Demo