Skip to content

Commit

Permalink
Fixes issue where advancements were synced in the wrong world
Browse files Browse the repository at this point in the history
When teleporting, the advancements were synced before the teleport
completed. This uses a different event.

#26
  • Loading branch information
tastybento committed Apr 29, 2021
1 parent 50c1952 commit bde1fa9
Showing 1 changed file with 5 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerAdvancementDoneEvent;
import org.bukkit.event.player.PlayerChangedWorldEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerPortalEvent;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;

import world.bentobox.bentobox.api.events.island.IslandNewIslandEvent;
Expand Down Expand Up @@ -168,16 +168,16 @@ private void giveAdv(Player player, Advancement adv) {
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPlayerJoin(PlayerJoinEvent e) {
User user = User.getInstance(e.getPlayer());
if (addon.getOverWorld().equals(Util.getWorld(user.getWorld()))) {
if (Util.sameWorld(addon.getOverWorld(), e.getPlayer().getWorld())) {
// Set advancements to same as island
syncAdvancements(user);
}
}

@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPlayerTeleport(PlayerTeleportEvent e) {
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void onPlayerEnterWorld(PlayerChangedWorldEvent e) {
User user = User.getInstance(e.getPlayer());
if (e.getTo() != null && e.getTo().getWorld() != null && addon.getOverWorld().equals(Util.getWorld(e.getTo().getWorld()))) {
if (Util.sameWorld(addon.getOverWorld(), e.getPlayer().getWorld())) {
// Set advancements to same as island
syncAdvancements(user);
}
Expand Down

0 comments on commit bde1fa9

Please sign in to comment.