This update was a beast to get done. I updated a bunch of old code that really needed to be prettied up (when I first made this, I was kinda new to Java) and added some super cool features at the request of one of my users.
Sooo, these new things. They're simple and intuitive (I like things like that), so it should be easy to grasp.
Players who create a warp now log their UUID into that warp's info. This might look something like the following:
Code (YAML):
derp:
W
: 2994a714-0218-4803-8ec6-58a9cf182423
X
: 6012.5
Y
: 92.25
Z
: 237.5
Yaw
: -212
Pitch
: 12
Creator
: d85bc05f-bdff-4931-b624-5713c6b029a0
But don't worry! Old warps are still compatible; their creator will be run as "null" and shouldn't throw any errors into your console.
The point of having the UUID logged is so that a player can have access to warps they create, even if they don't have permission to access all warps. Here's an example player:
NAME: Steev
UUID: i4M45CRU8-6969-420-whatevs
Perms: warp.create, warp.limit.3
So this player, Steev, has no permission to delete or use warps. But if uses the /setwarp command, a warp will be created which he can delete or use even without permissions. The limit permission means that he can have a maximum of 3 warps created by him at any given time. This permission can be any number supported by Java, all the way up to 2,147,483,647.
Hope this helps!
- Blue1