diff --git a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/utils/cursor/RCursorManager.java b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/utils/cursor/RCursorManager.java index d6b5b7ac..9d011e26 100644 --- a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/utils/cursor/RCursorManager.java +++ b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/utils/cursor/RCursorManager.java @@ -52,13 +52,7 @@ public class RCursorManager implements Listener { } void registerCursor(RCursor cursor) { - SoftReference currentPlayerCursorRef = activeCursors.get(cursor.getOwner()); - if(currentPlayerCursorRef != null) { - RCursor currentCursor = currentPlayerCursorRef.get(); - if(currentCursor != null) { - currentCursor.close(); - }; - }; + closeCursorOf(cursor.getOwner()); activeCursors.put(cursor.getOwner(), new SoftReference<>(cursor)); } @@ -67,6 +61,16 @@ public class RCursorManager implements Listener { activeCursors.remove(cursor.getOwner()); } + private void closeCursorOf(Player player) { + SoftReference currentPlayerCursorRef = activeCursors.get(player); + if(currentPlayerCursorRef != null) { + RCursor currentCursor = currentPlayerCursorRef.get(); + if(currentCursor != null) { + currentCursor.close(); + }; + }; + } + private void updateCursor(Player player) { if (!activeCursors.containsKey(player)) {