The validator used to clear the sealed flag and the children in the validator. But it did not clear the count down latch. This led to a situation where we would throw an IOException from fillChildren because we did have the latch, but it was zero, and the sealed flag was cleared. This simply resets the node every time, which I think is the safest solution as setting the childrenProgress to null in the validator might end poorly if someone was waiting on it. Another solution was to just remove the throw inside fillChildren. This felt like the cleanest solution.
* Add ON_MOVE Entity Event for Scarpet
* Update src/main/java/carpet/script/EntityEventsGroup.java
* Add on_move to Entities.md
* Switch to ValueConversions
* Update docs/scarpet/api/Entities.md
Co-authored-by: gnembon <41132274+gnembon@users.noreply.github.com>
* Fix#1126
* undo last commit cause it was on the wrong branch
Co-authored-by: gnembon <41132274+gnembon@users.noreply.github.com>
* Added screen handler value
* Added screen handler constructor and function to show to player
* Made inventory_* functions work with screen handlers
* Event callbacks and some refactoring
* Exception if screen has no inventory
* Fixed NPE
* Close screen when null
* Added screen_property
* UNKNOWN_SCREEN throwable
* Fix error when not specifying click callback
* Access to non-container screen handler slots via the inventory_* functions
* Change lectern page
* Added button event
* Added 'close' event and refactoring callback
* Beacon and Brewing screens
* Cartography table screen
* Crafting screen
* Enchantment screen
* Grindstone
* Loom
* Merchant
* Shulkerbox
* Smithing table
* Stonecutter
* Use strings as screen type instead of ScreenHandlerType
* Remove support for multiple players
* Combining create_screen and open_screen and refactoring
* Allow modifying cursor stack
* Cleanup
* Docs
* Added multiple screen examples
* Rename to screen
* Added smoker and blast furnace
* Serialize screen content
* Store host name instead of context
* Add button value special cases to docs
* Spelling and grammar fixes by @James103
* Optimize screen inventory access
* Use -1 for slot click outside the screen
* As boolean, ScreenValue equals isOpen
* Revert "Use -1 for slot click outside the screen"
This reverts commit 68c113e71bb653191cedf4cc356ab7705838dc25.
* Rework of callback function
* Improve screen functionality with drop_item
* Editor keywords
* Only check syncId
* slot_update event callback
* Screem typo
* Mistake
* toTag returns "null" NBT for closed screen
* Use null for slot index of -999
Co-authored-by: replaceitem <replaceitem.mc@gmail.com>