package rip.tilly.bedwars.utils; import org.bukkit.GameMode; import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.potion.PotionEffect; public class PlayerUtil { public static void clearPlayer(Player player) { player.setHealth(20.0D); player.setFoodLevel(20); player.setSaturation(12.8F); player.setMaximumNoDamageTicks(20); player.setFireTicks(0); player.setFallDistance(0.0F); player.setLevel(0); player.setExp(0.0F); player.setWalkSpeed(0.2F); player.setFlySpeed(0.2F); player.getInventory().setHeldItemSlot(0); player.setAllowFlight(false); player.getInventory().clear(); player.getInventory().setArmorContents(null); player.closeInventory(); player.setGameMode(GameMode.SURVIVAL); player.getActivePotionEffects().stream().map(PotionEffect::getType).forEach(player::removePotionEffect); ((CraftPlayer) player).getHandle().getDataWatcher().watch(9, (byte) 0); player.updateInventory(); } public static void minusAmount(Player p, ItemStack i, int amount) { if (i.getAmount() - amount <= 0) { if (p.getInventory().getItemInHand().equals(i)) { p.getInventory().setItemInHand(null); } else { p.getInventory().removeItem(i); } return; } i.setAmount(i.getAmount() - amount); p.updateInventory(); } }