Skip to content

Releases: APickledWalrus/skript-gui

Release 1.4.0

Choose a tag to compare

@APickledWalrus APickledWalrus released this 20 Jul 15:54
61fae83

skript-gui 1.4.0

Important

skript-gui now requires Skript 2.14.3 or newer.

Well, it's been a while (over a year in fact), but I'm quite excited to share that skript-gui 1.4.0 is here! This release includes a bunch of bug fixes, better support for modern versions of Skript, and some other exciting new features. Thanks for your patience as I (slowly) worked on this update!

If you encounter any issues, please be sure to report them over in the issues tab: https://github.com/APickledWalrus/skript-gui/issues

I recommend reading over the wiki, which has been rewritten from the ground up for this update.

Happy skript-gui-ing!

Breaking Changes

  • For better compatibility with Skript and other inventory types, the 'gui size' expression now returns the number of slots rather than the number of rows. Additionally, gui rows is no longer available. Simply use size of <gui>.
  • It is no longer possible to obtain all global GUIs using only guis. You must include the keyword global: global guis.

Changelog

Additions

  • Properly integrated name and size of a GUI with Skript's default syntax. This should resolve any syntax collision issues.
  • Added proper component support for creating virtual inventories.
  • Added support for Folia (for forks of Skript that enable this).
  • Added experimental support for creating GUIs using real inventories. For example, this enables the creation of working Anvil GUIs for obtaining input. Please see Menu GUIs for more information on using these.
  • Added a new slot change section which executes when a slot is interacted with or changes in some way. Please see GUI Slot Change for more information on using this section.

Changes

  • Made significant internal improvements to improve plugin stability and maintainability.
  • Deprecated the lock status expression in favor of a condition and effect.
  • GUI slots with an action can now have their items taken if explicitly marked as removable.

Bug Fixes

  • Fixed an issue where GUI properties did not correctly modify the specified GUI
  • Fixed an issue where modifying the lock status of a GUI was backwards (e.g. setting the lock status to true unlocked the GUI)
  • Unformatting the next gui slot now starts at the end of the layout, not the beginning.

Release 1.3.2

Choose a tag to compare

@APickledWalrus APickledWalrus released this 10 Jul 19:50
b33b7cc

skript-gui 1.3.2

skript-gui 1.3.2 is here with some minor compatibility fixes for Skript 2.12.

This release only includes support for newer versions of Skript. Development is underway on the next major version of skript-gui, which includes bug fixes, new features, and other significant changes.

Please review the changelog below, as this release includes breaking changes.

Thanks for your continued support, and Happy skript-gui-ing!

Important

The addon requires Skript 2.10.2 or newer, meaning only Minecraft versions 1.19.4 and newer are supported.

Changelog

Bug Fixes

  • Fixed conflicts with Skript's 'name' and 'size' expressions. Note that the syntax for the gui name and gui size properties has changed. Specifically, gui is now a required keyword:
[skript-]gui name[s] of %guis%
[skript-]gui size[s] of %guis%

Click here to view the full list of commits since 1.3.1

Release 1.3.1

Choose a tag to compare

@APickledWalrus APickledWalrus released this 14 May 19:06
251acd8

skript-gui 1.3.1

At long last, skript-gui 1.3.1 is here with proper support for Skript 2.10 and newer!

This release only includes support for newer versions of Skript. Development is underway on the next major version of skript-gui, which includes bug fixes, new features, and other significant changes.

Thanks for your continued support, and Happy skript-gui-ing!

Important

The addon now requires Skript 2.10.2 or newer, meaning only Minecraft versions 1.19.4 and newer are supported.

Changelog

Additions

  • Added support for Skript 2.10 and newer.

Click here to view the full list of commits since 1.3

1.3 is here!

Choose a tag to compare

@APickledWalrus APickledWalrus released this 11 Aug 19:10
e8f3446

After a very long time, 1.3 is finally ready for a full release!

This update contains so many fixes and improvements, I highly recommend that ALL users update.

Important

THIS BUILD IS INTENDED FOR SKRIPT VERSIONS 2.6.3 OR NEWER

Fixes and Improvements (since beta2)

  • Allow players in spectator mode to trigger GUI click events (#122, thanks @Obliviated)
  • Fixed an issue where updating the shape of a GUI could cause an exception if some slots were unexpectedly not set (closes #133)
  • Fixed an issue where a redundant check for the gui clicked item expression caused an internal error within Skript (closes #132)

There are still some cases where an exception may occur. In those cases, it is likely to be the fault of Skript. Please feel free to report them though.

  • Fixed an issue where the "gui creation inception" checks would incorrectly update the current GUI (closes #131)
  • Fixed an issue where stealable items did not work as expected (closes #126)

I want to make sure it is clear that for a GUI item to be marked as stealable, you do NOT need to make the entire GUI as having stealable items.

For the full list of changes. please refer to the changelogs of previous pre-releases.

Syntax Changes / Breaking Changes Since 1.2.2

  • gui size now returns the number of slots instead of rows (this was a bug)

If you depended on this returning the number of slots, you will have to rework your code! Sorry for any trouble this causes

  • The GUI properties expression has been completely rewritten, and the syntax has changed. It is now a property expression so that it may be used outside of editing sections. This was done to improve the syntax and usability.

New Syntax:
[the] [skript-gui] name[s] of %guis% OR %guis%'[s] [skript-gui] name[s] - RECOMMENDED TO USE skript-gui name DUE TO SYNTAX CONFLICTS WITH SKRIPT
[the] (size[s]|rows) of %guis% OR %guis%'[s] (size[s]|rows)
[the] shape[s] of %guis% OR %guis%'[s] shape[s]
[the] lock status[es] of %guis% OR %guis%'[s] lock status[es]

  • Reworked the syntax for the GUI values expression. This was done to improve syntax flow and usability.

New Syntax:
[the] gui slot
[the] gui raw slot
[the] gui hotbar slot
[the] gui inventory
[the] gui inventory action
[the] gui click (type|action)
[the] gui cursor [item]
[the] gui [clicked|current] item
[the] gui slot type
[the] gui player
[the] gui (viewer|player)s
[the] gui slot id
[the] gui

  • The open gui effect was removed. Therefore, open gui is no longer valid syntax. You can use open the last gui to the player to open a GUI.

Final Notes

Please feel free to report ANY issues you encounter. You can do so at https://github.com/APickledWalrus/skript-gui/issues
If you have any questions or need help, you can also do so there on the issues tab. Support is also provided through the Skript Chat Discord guild. Join at https://discord.com/invite/aSTrApthYg

I am happy to answer ANY questions you might have!! You can check out our documentation at https://github.com/APickledWalrus/skript-gui/#examples-and-documentation

The wiki should be updated. If you notice any inaccuracies or mistakes, PLEASE report them!!!

Beta 2

Beta 2 Pre-release
Pre-release

Choose a tag to compare

@APickledWalrus APickledWalrus released this 04 Jun 06:35
3c5bf59

Hey all! I know it's been a while but expect more consistent updates in the future. Thank you again for your continued support!!

This release is the second beta build of skript-gui 1.3. It's been a while since the last release, but further bug fixes and improvements have been made. I am expecting the full release of 1.3 to come very soon. This build should be very stable.

If you encounter any errors, please report them in the issues tab: https://github.com/APickledWalrus/skript-gui/issues
Continuing with this release, skript-gui ONLY supports the latest version of Skript (2.6.2 at this time)

Fixes and Improvements

  • Fixed an issue where next gui slot wouldn't always work properly (closes #103)
  • Fixed various issues with changing GUI properties (closes #101)
  • Fixed an exception that could occur within the GUI values expression
  • Improved internal handling of GUI values
  • Improvements to GUI handling / modifications when a GUI creation section is placed within another GUI creation section (closes #117)

Beta 1

Beta 1 Pre-release
Pre-release

Choose a tag to compare

@APickledWalrus APickledWalrus released this 01 Nov 23:40

NOTICE: Following the past releases, skript-gui ONLY supports the latest version of Skript. Critical fixes may be backported for older versions if needed.

This is the first beta build of skript-gui 1.3. I believe 1.3 has become stable enough to move into beta phases. If no additional betas/changes are needed, 1.3 will be released.

As usual, if anyone has any issues or questions, please feel free to share them at https://github.com/APickledWalrus/skript-gui/issues.
There is no official documentation for 1.3 yet, but it should be coming soon.

Additions

  • Added next gui slot expression (closes #77)

Full syntax:
%guiinventorys%'[s] next gui slot[s]
[the] next gui slot[s] of %guiinventorys%
[the] next gui slot

Fixes

  • Fixed several issues with modifying GUI properties (closes #65)

Please note that when changing the name of a GUI you will want to use the expression: skript-gui name. This is only needed because of a syntax conflict with Skript. You may encounter unintended behavior when using the native name expression from Skript.
Example: set the skript-gui name of the gui to "new name"

  • Fixed several issues with the GUI values expression (closes #66)
  • Fixed an issue where global GUIs were not properly removed when a new global GUI with the same ID was created (closes #72)
  • Added the api-version value to the plugin.yml

Alpha 3

Alpha 3 Pre-release
Pre-release

Choose a tag to compare

@APickledWalrus APickledWalrus released this 31 Aug 00:10

NOTICE: Following the past releases, skript-gui ONLY supports the latest version of Skript. Critical fixes may be backported for older versions if needed.

It has been a while since the last alpha, but there has been a lot of progress made since. Many bugs have been fixed, syntax has changed, and performance has hopefully improved. Please review the change log for details. However, there may have been some things I missed! Please feel free to ask questions here on GitHub and on Discord. You can join the official skript-gui support channel on Discord at https://discord.com/invite/aSTrApthYg

As always, please share your feedback and issues. It is invaluable to the addon's development :)
Issues can be opened at https://github.com/APickledWalrus/skript-gui/issues

Please note that you must be running Skript 2.6-beta3 for this alpha to work.

Additions

  • GUIs may now be used as an inventory in Skript syntax (closes #17)
  • Added an expression to get and change the ID of a GUI (closes #18)

Examples: send id of player's gui to player, set id of player's gui to "new id"

  • Writing inventory is no longer required in some cases when creating a GUI inventory (closes #22)

The following inventories do not require you to add inventory onto the end:
crafting table/workbench, chest, anvil, hopper, dropper, and dispenser

  • Added a GUI section to run code when the GUI is opened (closes #40)

Syntax:
run (when|while) open[ing] [[the] gui]
run (when|while) [the] gui opens
run on gui open[ing]

The backend of the addon has been completely rewritten. This should make it less sensitive to Skript updates (meaning it shouldn't break) and improve performance.

Fixes

  • Blocked usage of some "illegal" inventories (closes #31)
  • Fixed an issue where attempting to unformat a GUI slot caused an error (closes #32)
  • Fixed a duplication glitch related to the recipe book (closes #33)

Please note that for the fix for #33 you MUST be running a Paper server. Just like Skript, skript-gui works best with Paper. You can download Paper at https://papermc.io/downloads

  • Fixed an issue where skript-gui blocked Skript inventory events (closes #34)
  • Fixed an issue where running code when a GUI item is clicked caused an error if no local variables were set (closes #35)
  • Fixed an issue where unformatting GUI slots wouldn't work in some cases (closes #41)
  • Fixed an error that could occur during GUI item clicks (closes #48)
  • Fixed possible issues with changing the size of a GUI
  • Block invalid usage of expressions where possible by using native Skript API features (e.g. using arguments in a GUI click section)

BREAKING CHANGES 🌟

  • Fixed an issue where gui size returned the number of slots instead of rows (closes #44)

If you depended on this returning the number of slots, you will have to rework your code! Sorry for any trouble this causes

  • The GUI properties expression has been completely rewritten, and the syntax has changed. It is now a property expression so that it may be used outside of editing sections. This was done to improve the syntax and usability.

New Syntax:
[the] (name[s]|(size[s]|rows)|shape[s]|lock status[es]) of %guis%
%guis%'[s] (name[s]|(size[s]|rows)|shape[s]|lock status[es]) of %guis%

  • Reworked the syntax for the GUI values expression. This was done to improve syntax flow and usability.

New Syntax:
[the] gui slot
[the] gui raw slot
[the] gui hotbar slot
[the] gui inventory
[the] gui inventory action
[the] gui click (type|action)
[the] gui cursor [item]
[the] gui [(clicked|current)] item
[the] gui slot type
[the] gui player
[the] gui (viewer|player)s
[the] gui slot id
[the] gui

  • The open gui effect was removed. Therefore, open gui is no longer valid syntax. You can use open the last gui to the player to open a GUI.

Support for Skript 2.6-alpha1

Pre-release

Choose a tag to compare

@APickledWalrus APickledWalrus released this 24 May 00:16

This release adds support for the latest version of Skript. Please note that BOTH of these versions are experimental and may have issues.

I believe this addon is working okay now, but there may be issues I did not get. Please open an issue report if you encounter any errors.

NOTICE: Starting this release, skript-gui will ONLY support the latest version of Skript. Critical fixes may be backported for older versions if needed.

Small Fixes

Choose a tag to compare

@APickledWalrus APickledWalrus released this 07 Mar 23:12
  • Fixed #13
  • Fixed startup warnings about missing lang entries.

Small Fix

Small Fix Pre-release
Pre-release

Choose a tag to compare

@APickledWalrus APickledWalrus released this 11 Jun 23:03

This release fixes #23. This version is designed to run on Skript 2.6.

Thank you all for your support! New features should be coming in the near future :)