Added PlayerDeath listener which checks permissions if dead player is a prisoner and if they are it will destroy their equipped prisoner armor instead of dropping it to the ground!
This commit is contained in:
parent
4864c236b8
commit
cc09b1098b
2
pom.xml
2
pom.xml
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
<groupId>me.NVus</groupId>
|
<groupId>me.NVus</groupId>
|
||||||
<artifactId>NVus_Prison_Setup</artifactId>
|
<artifactId>NVus_Prison_Setup</artifactId>
|
||||||
<version>0.1.6-SNAPSHOT</version>
|
<version>0.1.9-SNAPSHOT</version>
|
||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
<name>PrisonSetup</name>
|
<name>PrisonSetup</name>
|
||||||
|
|
|
@ -6,6 +6,7 @@ import org.bukkit.Material;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.entity.PlayerDeathEvent;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
@ -24,6 +25,17 @@ public class PlayerSpawn implements Listener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void onPlayerDeath(PlayerDeathEvent event) {
|
||||||
|
Player deadPlayer = event.getEntity();
|
||||||
|
|
||||||
|
// Check if the player has the permission
|
||||||
|
if (deadPlayer.hasPermission("nvus.prisoner")) {
|
||||||
|
// Destroy default prisoner armor
|
||||||
|
destroyDefaultPrisonerArmor(deadPlayer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPlayerRespawn(PlayerRespawnEvent event) {
|
public void onPlayerRespawn(PlayerRespawnEvent event) {
|
||||||
Player respawnedPlayer = event.getPlayer();
|
Player respawnedPlayer = event.getPlayer();
|
||||||
|
@ -65,4 +77,17 @@ public class PlayerSpawn implements Listener {
|
||||||
|
|
||||||
player.sendMessage(ChatColor.translateAlternateColorCodes('&',"&6&lYou're a prisoner! &6You've been given the default prisoner armor!"));
|
player.sendMessage(ChatColor.translateAlternateColorCodes('&',"&6&lYou're a prisoner! &6You've been given the default prisoner armor!"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Destroy armor upon death etc.
|
||||||
|
private void destroyDefaultPrisonerArmor(Player player) {
|
||||||
|
// Loop through the armor slots and remove any armor pieces
|
||||||
|
for (ItemStack armor : player.getInventory().getArmorContents()) {
|
||||||
|
if (armor != null && armor.getType() != Material.AIR) {
|
||||||
|
player.getInventory().remove(armor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Using this as a debug/check, will comment out later!
|
||||||
|
player.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6&lYour default prisoner armor has been destroyed!"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue