PlayerKeyValueRepository<V> is a key/value store whose keys are Strings
and whose value type is parameterized by V. Each repository is backed by
a MySQL table in the Accounts database.
Access to PlayerKeyValueRepository's values is restricted via
CompletableFuture to enforce async database access.
BukkitFuture contains helpful utilities for producing, transforming, and
terminating CompletableFutures with actions on the main thread. A
typical PlayerKeyValueRepository action may look similar to the
following, where we retrieve all key/value pairs for a player and
perform an action with the result on the main thread:
PlayerKeyValueRepository<String> repo = [...]; // init repo
UUID uuid = [...]; // a player's UUID
repo.getAll(uuid).thenCompose(BukkitFuture.accept(values -> {
// this will be run on the main thread!
// `values` is of type `Map<String,String>`
}));
* Made reward manager ammo multiplier private final field
* Removed old commented code from WinEffectPodium, WinEffectLavaTrap,
ParticleMusic, ParticleEmerald, ParticleBlood
* Cleaned up the GameModifierMineStrikeSkin filter
* Removed unused Math#isBetween(double, double, double) method
* Changed Animator to use PriorityQueue
Fixes Pinata Burst not being saved
Fixes AWP Asiimov and XM1014 Tranquility materials
Removes Fireworks WinRoom
Changes prices of things from 1 shard to Treasure Chest
More unused imports removed
Fixed ANGLE_WING_PATTERN -> ANGEL_WING_PATTERN
Adds javadoc to UtilColor.applyColor()
Adds javadoc to UtilColor.getNextColor()
defaultLeatherColor -> DEFAULT_LEATHER_COLOR
Adds suggestions for UtilColor
Adds final modifier to _worldBorders (UtilPlayer)
Changed _worldBorders key from String to UUID
Adds suggestion for UtilPlayer
Adds final modifier to _type (GameModifierSubPage)
Adds final modifier to _type and _kitType (KitGameModifierPage)
DefaultDencity -> DefaultDensity (Shape)
Changed <Vector> to <> (Shape)
dencity -> density (ShapeBox, ShapeGrid, ShapeSphere)
Using speed and count in constructor (ShapeWings)
Removed empty constructor (WorldGenCleanRoom, MultiBlockUpdaterAgent)
Adds final modifier to all fields (AnimationPoint)
* Redid the Reward manager
Added new rewards to the chest and changed some values
* Fixed some MineStrike skin bugs
* Removed particles/death effects from Minestrike
* Removed old test minestrike skins
* Moved minestrike skins to correct package
* Changed the illuminated chest animation a bit
* Fixed other minor bugs
+ Added some text utils
+ Added angel wing shape
* Tweaked the wing particle effects.
* Fixed item tool not despawning items in arcade servers
* Removed strange gadget disable
* Updated some death/win effects and particles
* Added Illuminated chest
* Added MS skin name to death message
- Moved each suit to an individual package, to make it easier to work with
- Removed some unused imports
- Added util to get entity egg data
- Added kit modifiers: Beastmaster, Horseman and Necromancer (SG), Apple (Bridges)
- Added specific kit pages to game modifier menu
+Added better schematic support
+Fixed schematics not sending block updates to nearby players
+Added win room schematics
*Tweaked some of the win rooms
+Added sounds to the Lava Trap win effect.
Added Ammo command (/ammo <gadget> <ammo> [player])
Added util for red world border screen (UtilPlayer.sendRedScreen)
Added new costume -> Wind Up
Removed test gadget (ItemBouncyBall)
Beastmaster wolf spawning suffered from the same issue as the Wizards
"Summon Wolves" spell: spigot has an issue when setting an owner to a
wolf or ocelot without a previous owner. See SpigotUtil for details.
+ Support for relative copy position from with //copy from worledit in
schematics
+ Better block selection in bounding box in UtilBlock
+ Goal selector utils for entities
+ Global hide and show methods for players
+ Win effects and game modifiers
+ Tweaked player disguises
+ Added clean room generator to arcade games, previously normal flat
world
+ Animation utils
* Edited some particles, hats and death animations