Version 1.1.0 is a full rewrite of the script (thanks to OSTW) with many improvements!
-
Button creation and modification process has been reworked to emulate normal Workshop actions a bit more
- Details are listed in the guide above
- The new subroutines will use the new Log To Inspector feature to detail errors they encounter during execution (note that this is not particularly comprehensive yet - type errors are not logged, for example, mostly just ID or argument length errors)
-
Button count is no longer hard coded to 16 max
- You will likely still run into issues if you try to add that many visible buttons per player, but the process for creating invisible click areas should now be much simpler
- Colors are now available
-
Action ID system has been simplified
- Both primary and secondary Action IDs are logged to
currActionID
- Action ID queue has been removed. Rules should still trigger just fine if they check against
currActionID
-
Changes to in-world text and HUD text budget (heretofore referred to as "text budget") usage
- Max text budget use per button has been reduced from 2 to 1
- Buttons no longer contribute to the text budget while hidden
- A running total of current text budget use for the entire game is now tracked in the global variable
textBudget
- If someone attempts to open a menu and the text budget is exceeded, the Host Player will receive a warning notification
-
Various Workshop Settings have been added to aid usage
- Sliders for menu width and height in screen units
- Button click sounds (on by default): When enabled, players will hear a sound when they click a button
- Debug mode: When enabled, the menu will show a visualization of button click areas. Note that this will use a large amount of the text budget.
- Menu prompt hud (on by default): When enabled, players not in the menu will see a HUD at the top of their screen telling them to press interact to open the menu
- The default condition for opening/closing the menu - an Interact button press - can be changed in the
Toggle menu
rule conditions
- Loading hud (on by default): When enabled, the menu will use an extra hud to (attempt to) show the player that the menu is loading
- This is pretty scuffed so I might just remove it in a later update
- Menu disables game HUD (on by default): When enabled, opening the menu will hide all native HUD elements on the player's screen, and closing it will show them again
- Extra: Server load HUD (off by default): A HUD text displaying server load to the host player in the top right corner. Left this in since it might be quicker than making your own if you're starting work on a game mode. May add a text budget display to it in the future