diff --git a/pom.xml b/pom.xml
index 27c9d4b..251ee17 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
pl.sloudpl
SloudVanish
- 1.2.1
+ 1.2.2
jar
SloudVanish
diff --git a/src/main/java/pl/sloudpl/simplevanish/SimpleVanish.java b/src/main/java/pl/sloudpl/simplevanish/SimpleVanish.java
index 534b5dd..a541d5f 100644
--- a/src/main/java/pl/sloudpl/simplevanish/SimpleVanish.java
+++ b/src/main/java/pl/sloudpl/simplevanish/SimpleVanish.java
@@ -1,6 +1,5 @@
package pl.sloudpl.simplevanish;
-import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import pl.sloudpl.simplevanish.bstats.Metrics;
import pl.sloudpl.simplevanish.cmds.VanishCommand;
@@ -9,11 +8,13 @@ import pl.sloudpl.simplevanish.events.onLeaveEvent;
import pl.sloudpl.simplevanish.events.onPlayerDamage;
import pl.sloudpl.simplevanish.utils.UpdateChecker;
-import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.UUID;
public final class SimpleVanish extends JavaPlugin {
- public ArrayList inVanishList = new ArrayList<>();
+ public Set inVanishList = new HashSet<>();
@Override
public void onEnable() {
diff --git a/src/main/java/pl/sloudpl/simplevanish/cmds/VanishCommand.java b/src/main/java/pl/sloudpl/simplevanish/cmds/VanishCommand.java
index a918160..8d1b6b1 100644
--- a/src/main/java/pl/sloudpl/simplevanish/cmds/VanishCommand.java
+++ b/src/main/java/pl/sloudpl/simplevanish/cmds/VanishCommand.java
@@ -39,14 +39,14 @@ public class VanishCommand implements CommandExecutor {
return true;
}
- if(plugin.inVanishList.contains(player)){
+ if(plugin.inVanishList.contains(player.getUniqueId())){
for(Player other : Bukkit.getOnlinePlayers()){
other.showPlayer(player);
if(plugin.getConfig().getBoolean("vanish-message-enabled")){
other.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("unvanishmsg").replace("[Player]", player.getName())));
}
}
- plugin.inVanishList.remove(player);
+ plugin.inVanishList.remove(player.getUniqueId());
player.removePotionEffect(PotionEffectType.NIGHT_VISION);
player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("unvanish")));
@@ -59,13 +59,13 @@ public class VanishCommand implements CommandExecutor {
}
}
}
- plugin.inVanishList.add(player);
+ plugin.inVanishList.add(player.getUniqueId());
player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0, false, false));
if(plugin.getConfig().getBoolean("actionbar")) {
new BukkitRunnable() {
@Override
public void run() {
- if (!plugin.inVanishList.contains(player)) {
+ if (!plugin.inVanishList.contains(player.getUniqueId())) {
cancel();
return;
}
@@ -92,14 +92,14 @@ public class VanishCommand implements CommandExecutor {
return true;
}
- if(plugin.inVanishList.contains(target)){
+ if(plugin.inVanishList.contains(target.getUniqueId())){
for(Player other : Bukkit.getOnlinePlayers()){
other.showPlayer(target);
if(plugin.getConfig().getBoolean("vanish-message-enabled")){
other.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("unvanishmsg").replace("[Player]", target.getName())));
}
}
- plugin.inVanishList.remove(target);
+ plugin.inVanishList.remove(target.getUniqueId());
target.removePotionEffect(PotionEffectType.NIGHT_VISION);
target.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("unvanish")));
@@ -114,13 +114,13 @@ public class VanishCommand implements CommandExecutor {
}
}
}
- plugin.inVanishList.add(target);
+ plugin.inVanishList.add(target.getUniqueId());
target.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0, false, false));
if(plugin.getConfig().getBoolean("actionbar")) {
new BukkitRunnable() {
@Override
public void run() {
- if (!plugin.inVanishList.contains(target)) {
+ if (!plugin.inVanishList.contains(target.getUniqueId())) {
cancel();
return;
}
diff --git a/src/main/java/pl/sloudpl/simplevanish/events/onJoinEvent.java b/src/main/java/pl/sloudpl/simplevanish/events/onJoinEvent.java
index 4bf2c84..f427181 100644
--- a/src/main/java/pl/sloudpl/simplevanish/events/onJoinEvent.java
+++ b/src/main/java/pl/sloudpl/simplevanish/events/onJoinEvent.java
@@ -1,11 +1,14 @@
package pl.sloudpl.simplevanish.events;
+import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import pl.sloudpl.simplevanish.SimpleVanish;
+import java.util.UUID;
+
public class onJoinEvent implements Listener {
SimpleVanish plugin;
@@ -19,11 +22,14 @@ public class onJoinEvent implements Listener {
public void PlayerJoin(PlayerJoinEvent e){
Player player = e.getPlayer();
- for(Player vanished : plugin.inVanishList){
- if(!player.hasPermission("sloudpl.vanish.see")){
- player.hidePlayer(vanished);
- } else {
- player.showPlayer(vanished);
+ for(UUID uuid : plugin.inVanishList){
+ Player vanished = Bukkit.getPlayer(uuid);
+ if(vanished != null){
+ if(!player.hasPermission("sloudpl.vanish.see")){
+ player.hidePlayer(vanished);
+ } else {
+ player.showPlayer(vanished);
+ }
}
}
}
diff --git a/src/main/java/pl/sloudpl/simplevanish/events/onLeaveEvent.java b/src/main/java/pl/sloudpl/simplevanish/events/onLeaveEvent.java
index f332f67..d1e81fb 100644
--- a/src/main/java/pl/sloudpl/simplevanish/events/onLeaveEvent.java
+++ b/src/main/java/pl/sloudpl/simplevanish/events/onLeaveEvent.java
@@ -21,9 +21,9 @@ public class onLeaveEvent implements Listener {
Player player = e.getPlayer();
- if(plugin.inVanishList.contains(player)){
+ if(plugin.inVanishList.contains(player.getUniqueId())){
- plugin.inVanishList.remove(player);
+ plugin.inVanishList.remove(player.getUniqueId());
player.removePotionEffect(PotionEffectType.NIGHT_VISION);
e.setQuitMessage(null);
diff --git a/src/main/java/pl/sloudpl/simplevanish/events/onPlayerDamage.java b/src/main/java/pl/sloudpl/simplevanish/events/onPlayerDamage.java
index 1bec8a9..9600539 100644
--- a/src/main/java/pl/sloudpl/simplevanish/events/onPlayerDamage.java
+++ b/src/main/java/pl/sloudpl/simplevanish/events/onPlayerDamage.java
@@ -22,7 +22,7 @@ public class onPlayerDamage implements Listener {
Player damager = (Player) e.getDamager();
- if(plugin.inVanishList.contains(damager)){
+ if(plugin.inVanishList.contains(damager.getUniqueId())){
e.setCancelled(true);