- Added block saves more below.
Code:
block save[s] of %blocks
%blocks%'[s] block save
- Added automatic github actions, so you can now grab nightly builds at
https://github.com/TheLimeGlass/Skellett/actions
- Fixed collidable condition not being proper grammar.
- Removed item frame syntaxes, they're going to be going into Khoryl.
- Removed spawner synatxes, they're going to be going into Khoryl.
- Removed Jukebox syntaxes, they're going to be going into Khoryl.
- Removed LLama syntaxes, they're going to be going into Khoryl.
- Removed Repeater syntaxes, they're going to be going into Khoryl.
- Removed slime size syntaxes, they're going to be going into Khoryl.
For those of you that wish to use the Java 11 version of 2.0.1, you can grab it from here by clicking on any latest build and downloading the nightly jar
https://github.com/TheLimeGlass/Skellett/actions
Finally a better way of handling blocks and their types/data! Skellett has a utility expression called block saves, what this does is the return type will be a custom object, that's also serializable yay! That can be saved to a variable. So you can save a block save to a variable and set the block to the exact block save later, example script used to save and load areas:
code_language.skript:
command /pos1:
trigger:
if target block is set:
set {pos::%player%::1} to location of target block
else:
set {pos::%player%::1} to location of player
message "pos1 set to %{pos::%player%::1}%"
command /pos2:
trigger:
if target block is set:
set {pos::%player%::2} to location of target block
else:
set {pos::%player%::2} to location of player
message "pos2 set to %{pos::%player%::2}%"
command /save <string>:
trigger:
{pos::%player%::2} is set
{pos::%player%::1} is set
set {saves::%player%::%argument%::*} to block saves of blocks within {pos::%player%::2} to {pos::%player%::1}
clear {pos::%player%::1} and {pos::%player%::2}
message "Saved blocks to save %argument%"
command /load <string>:
trigger:
{saves::%player%::%argument%::*} is set
loop {saves::%player%::%argument%::*}:
set block at loop-value to loop-value
message "Loaded blocks from save %argument%"
command /delete [<string>]:
trigger:
if argument is set:
delete {saves::%player%::%argument%::*}
message "Deleted save %argument%"
stop
delete {saves::%player%::*}
message "Deleted all saves"
command /listSaves:
trigger:
message indexes of {saves::%player%::*}
on quit:
delete {pos::%player%::*}
on script unload:
delete {pos::*}