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>
|
||||
<artifactId>NVus_Prison_Setup</artifactId>
|
||||
<version>0.1.6-SNAPSHOT</version>
|
||||
<version>0.1.9-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>PrisonSetup</name>
|
||||
|
|
|
@ -6,6 +6,7 @@ import org.bukkit.Material;
|
|||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.PlayerDeathEvent;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||
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
|
||||
public void onPlayerRespawn(PlayerRespawnEvent event) {
|
||||
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!"));
|
||||
}
|
||||
|
||||
// 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