public void setHalted(boolean halted) { this.isHalted = halted; if (halted) { player.setOp(false); player.setGameMode(GameMode.SURVIVAL); TFM_Util.setFlying(player, false); TFM_EssentialsBridge.setNickname(player.getName(), player.getName()); player.closeInventory(); player.setTotalExperience(0); stopOrbiting(); setFrozen(true); setMuted(true); player.sendMessage(ChatColor.GRAY + "You have been halted, don't move!"); } else { player.setOp(true); player.setGameMode(GameMode.CREATIVE); setFrozen(false); setMuted(false); player.sendMessage(ChatColor.GRAY + "You are no longer halted."); } }
/** * Creates a new GraveYardSign with the given {@link PlayerDropModificator} * * @param piMod * @return the List of Items NOT saved */ public List<ItemStack> createSign(PlayerDropModificator piMod) { Player player = piMod.getPlayer(); SpawnSign sign = new SpawnSign(piMod).spawnSign(); signs.add(sign); if (plugin.getConfigManager().getEXPMulti() >= 0) player.setTotalExperience(0); return new LinkedList<ItemStack>(); }
public static void resetPlayer(Player player) { player.setHealth(player.getMaxHealth()); player.setFoodLevel(20); player.setSaturation(20); player.getInventory().clear(); player .getInventory() .setArmorContents( new ItemStack[] { new ItemStack(Material.AIR), new ItemStack(Material.AIR), new ItemStack(Material.AIR), new ItemStack(Material.AIR) }); for (PotionEffect effect : player.getActivePotionEffects()) { try { player.removePotionEffect(effect.getType()); } catch (NullPointerException ignored) { } } player.setTotalExperience(0); player.setExp(0); player.setPotionParticles(true); player.setWalkSpeed(0.2F); player.setFlySpeed(0.2F); }
private void xpstuff(Player player, Integer leftoverxp, Integer bottleamount) { HashMap<Integer, ItemStack> leftOver = new HashMap<Integer, ItemStack>(); player.setTotalExperience(0); player.setExp(0); player.setLevel(0); player.giveExp(leftoverxp); ItemStack bottleoenchant = new ItemStack(384, bottleamount); leftOver.putAll(player.getInventory().addItem(new ItemStack(bottleoenchant))); if (!leftOver.isEmpty()) { Location loc = player.getLocation(); player.getWorld().dropItem(loc, new ItemStack(384, leftOver.get(0).getAmount())); } }
/** * saves the PlayerInventory to his deathChest returns an empty list if player has no Permission * or no DeathChest exists for the player * * @param player * @return the list of Items saved */ private LinkedList<ItemStack> saveToDeathChest(Player player) { LinkedList<ItemStack> emptyReturnList = new LinkedList<ItemStack>(); if (!simplePermissionUse(player)) return emptyReturnList; ChestContainer container = plugin.getChestContainer(); if (!container.checkPlayerHasChest(player.getWorld(), player)) { return emptyReturnList; } int maxTransferItems = plugin.getChestContainer().getMaxTransferLimit(player); if (maxTransferItems <= 0) return emptyReturnList; ChestContainer chestContainer = container.getChestOfPlayer(player.getWorld(), player); ChestPosition chestPos = (ChestPosition) chestContainer; Location chestLocation = chestPos.getLocation(); Block chestBlock = chestLocation.getBlock(); if (chestBlock.getType() != Material.CHEST) { player.sendMessage( ChatColor.RED + "No chest found at Position: " + "X: " + chestLocation.getBlockX() + "Y: " + chestLocation.getBlockY() + "Z: " + chestLocation.getBlockZ()); return emptyReturnList; } double multiplicator = plugin.getConfigManager().getEXPMulti(); int totalExperience = (int) (player.getTotalExperience() * multiplicator); chestPos.addEXP(totalExperience); if (multiplicator != 0) player.setTotalExperience(0); LinkedList<ItemStack> toRemove = copyInventoryToChest((Chest) chestBlock.getState(), false, player); player.sendMessage( ChatColor.GREEN + "Your inventory was stored in your DeathChest on world: " + chestLocation.getWorld().getName() + "."); return toRemove; }
private void setWorldDefault(Player player, Group group) { File file = new File(plugin.getDefaultFilesDirectory() + File.separator + group.getName() + ".json"); if (!file.exists()) { plugin.getPlayerMessenger().sendMessage(player, "Default file for this group not found!"); return; } File tmp = new File( plugin.getDataFolder() + File.separator + "data" + File.separator + player.getUniqueId() + File.separator + "tmp.json"); try { tmp.getParentFile().mkdirs(); tmp.createNewFile(); } catch (IOException ex) { plugin.getPlayerMessenger().sendMessage(player, "Could not create temporary file! Aborting!"); return; } plugin .getSerializer() .writePlayerDataToFile( player, PlayerSerialization.serializePlayer(player, plugin), new Group("tmp", null, null), GameMode.SURVIVAL); player.setFoodLevel(20); player.setHealth(20); player.setSaturation(20); player.setTotalExperience(0); plugin .getSerializer() .writeData(file, Serializer.toString(PlayerSerialization.serializePlayer(player, plugin))); plugin .getSerializer() .getPlayerDataFromFile(player, new Group("tmp", null, null), GameMode.SURVIVAL); tmp.delete(); plugin.getPlayerMessenger().sendMessage(player, "Defaults for '" + group.getName() + "' set!"); }
public void restore(Player player) { if (player.getName().equals(name)) { player.getInventory().clear(); player.teleport(originLoc); player.setCompassTarget(compassTarget); player.setHealth(health); player.setFoodLevel(food); player.setSaturation(saturation); player.getInventory().setContents(inv); player.getInventory().setArmorContents(armor); player.setTotalExperience(exp); } }
public GamePlayerData(Player player, boolean isPlayer) { this.name = player.getName(); this.isPlayer = isPlayer; this.originLoc = player.getLocation(); this.compassTarget = player.getCompassTarget(); this.health = player.getHealth(); this.food = player.getFoodLevel(); this.saturation = player.getSaturation(); this.inv = player.getInventory().getContents(); this.armor = player.getInventory().getArmorContents(); player.getInventory().clear(); this.exp = player.getTotalExperience(); player.setTotalExperience(0); }
@Override public void setTotalExperience(int xp) { caller.setTotalExperience(xp); }