This fixes the Summon Wolves spell in Wizards.
Explanation:
- Wolves keep track of their most recent owner.
- When a wolf is assigned a new owner, it updates the data
watcher with the new owner's UUID
- During this process, the old owner's UUID is checked
against the new one
- If the wolf didn't have a previous owner, the old owner's
UUID is the empty string.
- UUID.fromString() is called on the empty string, and throws
an exception.
The new challenge selection system, picks a random challenge from
the list as a starting point. Once the challenge is ended, the next
one in the list will be selected. That process continues, until the
index is out of bounds, and from that point, a new starting point
will be selected. During that process, any challenge that is picked,
is also reviewed to make sure it's suitable according to the player
count. If that's not the case, the selection process will continue
until one challenge is found. If there is no appropriate challenge,
the game will be ended.
In addition to those changes, there are a couple of bug fixes and changes.
At first, some methods that keep track of player lists were renamed and
secondly, the enchantment lore is now hidden on challenges that use items.
Consequently, elo code is actually being called now
Bukkit.broadcastMessage calls have shown where things are breaking
handleElo() added to EloManager to facilitate movement of team elo code
preparing to use EloManager's getNewRatings() method to
calculate team elos
Previously, a player would erratically become a spectator if s/he
spammed the "spectate next player" action between rounds (i.e.
left-click while spectating a player).
EloRanking turned on for Domination, Team Deathmatch, Turf Wars, CTF
Database QoL changes made to EloManager and EloRepository
--Unfortunately, Database still seems to not be updating properly
--Something on my end, or something to do with the queries? Unsure.