• Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Although not a huge amount was added, this is probably the first release that I'm pretty confident is stable.
I also streamlined how the merchant/villager syntax is handled. Instead of registering merchants and villagers separately, they're now able to be used in the same patterns.
There's not actually a noticeable difference there, but it cut down the file size by a bit and it's a much better practice.
From now on, I'm going to do proper change-logs as well.

So, here we go!

Fixes:
  • All syntax that accepted %integer% now works properly
  • Fixed a conflict with skript-mirror 2.0's type
  • Fixed a types conflict between lootable objects and entities
  • Fixed several issues in the "disable" and "remove" effects
  • Fixed a few minor pathfinder issues
Additions:
  • Guardian beams now have a higher range limit (in theory)
  • Recipe properties now have some new handlers (see docs)
  • You no longer have to specify whether an object is a merchant or a villager, but you can if you want
  • New villager syntax: change profession, type (appearance), level and experience
  • Added a stop pathfinding effect
  • Price multiplier, uses and max uses syntax
  • You can now clear trades rather than using an empty list, but both do the same thing
Plans:
  • I've added a lot of new entity-handling stuff, some new pathfinder goals thingies
  • I'd expect another week or so before I can get the old SkStuff syntax working properly

I'd recommend you update ASAP. There were a lot of minor fixes. I also refactored things about five times between 0.3.5 and this, as well as cleaning up my code a bit.

As usual, any bugs -> discord me, or message me here. :emoji_slight_smile:
In this update, I introduce the first test of Guardian Lasers into Skript! These are notoriously hard to do, and I had to get a little help from SkytAsul and his amazing library! :emoji_slight_smile:

As well as this, I also laid the foundations for some cool entity syntax and conditions that might make life easier for people.

As vanilla Skript can't use NMS methods (due to licence issues) there are many other methods available to addon-makers.

Guardian Laser:
Code:
draw (guardian beam|laser) from %location% to %location% [[and] keep] for %integer% second[s]

Entity Conditions:
Code:
fire[ ]proof[ed]
# Checks whether an entity can be damaged by fire.
# Nether entities and things with fire resistance can't be.
# This only counts default Minecraft behaviour.
# If you have some strange plugin or system, it might miss it!

interactable
# I'm not 100% sure what this means.
# It seems to be whether you can interact with the entity in some way.
# Such as feeding it, or equipping it.

in water
# Checks whether an entity is in water.
# This includes waterlogged blocks, and partially submerged.

wet
# See above, but also if they are in rain.
# Useful to check if players can use their riptide/channelling enchantments!

[a] passenger
# Checks whether an entity is a passenger.

[a] vehicle
# Checks whether an entity is a legal vehicle.

swimming
# Checks whether an entity is swimming.
# I presume this refers to the 1.13+ swimming style

Entity Effects:
Code:
mount %entities% on %entity%
# Forces an illegal mounting.
# Use this to stack multiple passengers on a single entity.
# Use with CAUTION!

make %entities% invisible
make %entities% visible
# Toggles the visibility of an entity.
# Works like armour stand visibility.

move %entities% to %location%
# This forces an illegal in-world move.
# It's not a teleport, so entity passengers won't be dismounted.
# It also won't cause player screens to flicker.
# Use with CAUTION!

set [the] silent state of %entities% to %boolean%
# Toggle the noise of entities.
# True = silent
# False = noisy

set [the] swimming state of %entities% to %boolean%
# Toggles the swimming state of entities.
# True = swimming
# False = not swimming

I would like to add my syntax to the main docs sites, but I got a lot of push-back from other addon developers.
I'll keep asking, though. :emoji_slight_smile:

As usual, let me know of any issues/suggestions.
My discord is Moderocky#0001
  • Like
Reactions: Western Mine
Had to fix something to make this compatible with the latest Paper -42 build.
No idea why, but apparently it didn't like my merchant expression.

Normal Spigot users should have been unaffected, but I'd advise you to update anyway! :emoji_slight_smile:
In this update, I've added the first of basic entity pathfinding and navigation.
Soon I will add the old SkStuff goals.

As well as this, I've also added all the new 1.14 inventory types to use as GUIs in Skript, as well as some other old ones (though might be unstable).

Some of these don't actually function (such as smokers and lecterns) and are entirely visual. Perhaps you will find a use for them!

New Syntax:
Code:
make %entities% walk to %location% [at speed %-number%]
make %entities% walk to %entity% [at speed %-number%]
# speed should be between 0.1 and 3, values outside this are dangerous but may work.
# the maximum distance depends on the Entity Tracking Range in your server config!
# This only works on animals/mobs
# armorstands, players, etc. do not work, and might return a big error. I'm not sure if I caught all of these.

open hopper named %string% to %players%
open dropper named %string% to %players%
open dispenser named %string% to %players%
open barrel named %string% to %players%
# containers

open ender chest named %string% to %players%
open grind[ ]stone named %string% to %players%
open lectern named %string% to %players%
# these are fake and might cause errors, use with caution!

open blast furnace named %string% to %players%
open smoker named %string% to %players%
# these don't actually smelt items, sadly :(

open loom named %string% to %players%
open cartography table named %string% to %players%
open stonecutter named %string% to %players%
# these might work! :)

I hope you enjoy! As usual, contact me if you find any bugs/problems or have suggestions for future updates.
Accidentally pushed from the wrong branch, and compiled with a couple of untested parts in. This one should work better/safer.
Making use of 1.14's snowball properties, you can now shoot a snowball that is disguised as an item.

New Additions:
Code:
make %entities% shoot %itemtype% [at speed %-number%]
For example:
Code:
make player shoot stick at speed 1

As well as this, there is a new Horse Jump event, which is not present in any other addon.
Code:
on horse jump:
    # event-entity is the horse

You can now manipulate loot tables, and containers!
Lock/Unlock a container/tile entity (chests, barrels, furnaces, etc.)
Code:
lock %blocks% with [key] %string%
Code:
unlock %blocks%
Code:
%blocks% (is|are) locked


If you use PaperSpigot, you now have a loot-replenish event.
Code:
loot re(plenish|fill)[ing]


What's next?
  • More loot-table syntax
  • SkStuff's Pathfinders updated to 1.14
  • Persistent Data Containers
  • Like
Reactions: Western Mine