The conditional statement in the event parsing logic was incorrect, causing all events to be parsed regardless of the ignore flag. This change corrects the logic to ensure that only non-ignored events are parsed.
Checks if it's installed and its version before trying to install/update it. Current behaviour reinstalls the tool on each rebuild. Reduces build time from 53s to 17s in testing.
* Refactor PromptClientInput to accept string array for prompt
Updated the `PromptClientInput` method to accept a string array instead of a single string. This change ensures that multiple prompts can be handled, improving input flexibility and client communication. Additionally, modified related method calls to maintain consistency with the new input type.
* Refactor PromptClientInput to support parsed result and errors
Updated PromptClientInput to handle parsed input results and return error messages instead of raw strings. Introduced ParsedInputResult<TResult> class to encapsulate parsing results and errors, enhancing client validation and feedback mechanism.
Update tooltip text generation in MetaRegistration
The tooltip text generation in MetaRegistration.cs is updated to use Humanizer's 'HumanizeForCurrentCulture' method with 'TimeUnit.Hour' as maxUnit. This change leverages the Humanizer library to provide more precise and localized time formatting.
A using statement was added to ensure proper disposal of the CancellationTokenSource. Additional error handling was also included to catch an OperationCanceledException and prevent it from causing unintended side effects. The client response is now properly disposed in the finally block.
A new utility method named 'PromptClientInput' has been added in the Utilities.cs file. This method accepts client, prompt, and validator as inputs and allows taking action based on client responses. Included subscription and unsubscription to the 'ClientMessaged' game event, and handling of cancellation token to control the execution flow.