package HesterQ.HqCastle; import HesterQ.HqCastle.events.BlockBreak; import HesterQ.HqCastle.events.BlockPlace; import HesterQ.HqCastle.events.ChatMessage; import HesterQ.HqCastle.events.DamageEvent; import HesterQ.HqCastle.events.DeathEvent; import HesterQ.HqCastle.events.Explosion; import HesterQ.HqCastle.events.MoveEvent; import HesterQ.HqCastle.events.NameTag; import HesterQ.HqCastle.events.PlayerInteract; import HesterQ.HqCastle.events.PreCommand; import HesterQ.HqCastle.events.QuitEvent; import HesterQ.HqCastle.events.RespawnEvent; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.logging.Logger; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.Server; import org.bukkit.World; import org.bukkit.World.Environment; import org.bukkit.WorldCreator; import org.bukkit.block.Block; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfigurationOptions; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.SignChangeEvent; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.PlayerInventory; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.messaging.Messenger; import org.bukkit.potion.PotionEffect; import org.bukkit.scheduler.BukkitScheduler; public class Main extends JavaPlugin implements Listener { protected static final Logger log = Logger.getLogger("Minecraft"); public List arenaList = new ArrayList(); public List TagList = new ArrayList(); public void onDisable() { FileConfiguration config = getConfig(); for (int i = 0; i < this.arenaList.size(); i++) { Arena arena = (Arena)this.arenaList.get(i); for (int j = 0; j < arena.getPlayerList().size(); j++) { if (arena.getPlayerList().get(j) != null) { removeItems((Player)arena.getPlayerList().get(j)); ((Player)arena.getPlayerList().get(j)).teleport(toLocation(config.getString("Spawn"))); ((Player)arena.getPlayerList().get(j)).sendMessage(ChatColor.RED + "Restart spowodowal zakonczenie gry!"); } } } log.info("[HqCastle] has been disabled."); } public void onEnable() { CreateFiles.firstRun(); FileConfiguration config = getConfig(); if (!config.contains("Spawn")) { config.set("Spawn", "world/0/65/0/0/0"); } config.options().copyDefaults(true); saveConfig(); getServer().getPluginManager().registerEvents(new BlockBreak(this), this); getServer().getPluginManager().registerEvents(new BlockPlace(this), this); getServer().getPluginManager().registerEvents(new ChatMessage(this), this); getServer().getPluginManager().registerEvents(new DamageEvent(this), this); getServer().getPluginManager().registerEvents(new DeathEvent(this, toLocation(config.getString("Spawn"))), this); getServer().getPluginManager().registerEvents(new Explosion(this), this); getServer().getPluginManager().registerEvents(new MoveEvent(this), this); getServer().getPluginManager().registerEvents(new NameTag(this), this); getServer().getPluginManager().registerEvents(new PlayerInteract(this), this); getServer().getPluginManager().registerEvents(new PreCommand(this), this); getServer().getPluginManager().registerEvents(new QuitEvent(this, toLocation(config.getString("Spawn"))), this); getServer().getPluginManager().registerEvents(new RespawnEvent(this), this); getServer().getMessenger().registerOutgoingPluginChannel(this, "BoungeeCord"); getServer().getPluginManager().registerEvents(this, this); List lista = config.getStringList("ArenaList"); for (int i = 0; i < lista.size(); i++) { int toStart = config.getInt((String)lista.get(i) + ".toStart"); int startTime = config.getInt((String)lista.get(i) + ".startTime"); int voteStart = config.getInt((String)lista.get(i) + ".voteStart"); boolean isEnabled = config.getBoolean((String)lista.get(i) + ".enabled"); Location red = toLocation(config.getString((String)lista.get(i) + ".red")); Location blue = toLocation(config.getString((String)lista.get(i) + ".blue")); Location flag = toLocation(config.getString((String)lista.get(i) + ".flag")); Location cuboid = toLocation(config.getString((String)lista.get(i) + ".cuboid")); Location spawn = toLocation(config.getString("Spawn")); Arena arena = new Arena(this, (String)lista.get(i), toStart, voteStart, startTime, Arena.GameMode.DISABLED, red, blue, cuboid, flag, spawn); getServer().dispatchCommand(getServer().getConsoleSender(), "wr rebuild " + cuboid.getWorld().getName()); this.arenaList.add(arena); Arena.GameMode mode = Arena.GameMode.DISABLED; if (isEnabled) { mode = Arena.GameMode.WAITING; } arena.setMode(mode); } log.info("[HqCastle] has been enabled."); } public List getArenaList() { return this.arenaList; } public Arena getArenaByString(String arena) { for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(arena)) { return (Arena)this.arenaList.get(i); } } return null; } public Arena getPlayerArena(Player player) { for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getPlayerList().contains(player)) { return (Arena)this.arenaList.get(i); } } return null; } public static boolean isNumeric(String str) { try { Integer.parseInt(str); } catch (NumberFormatException nfe) { return false; } return true; } public String getLocation(Player player) { Location loc = player.getLocation(); String location = player.getWorld().getName() + "/" + (int)loc.getX() + "/" + (int)loc.getY() + "/" + (int)loc.getZ() + "/" + loc.getYaw() + "/" + loc.getPitch(); return location; } public Location toLocation(String location) { String[] pos = location.split("/"); double x = Double.parseDouble(pos[1]); double y = Double.parseDouble(pos[2]); double z = Double.parseDouble(pos[3]); float yaw = Float.parseFloat(pos[4]); float pitch = Float.parseFloat(pos[5]); WorldCreator.name(pos[0]).environment(World.Environment.NORMAL).generateStructures(false).createWorld(); World world = Bukkit.getWorld(pos[0]); return new Location(world, x, y, z, yaw, pitch); } public void giveTorch(Player player) { player.getInventory().clear(); ItemStack torch = new ItemStack(Material.NETHER_STAR, 1); ItemMeta im = torch.getItemMeta(); im.setDisplayName(ChatColor.RED + "Menu [Go2mc.pl]"); torch.setItemMeta(im); player.getInventory().addItem(new ItemStack[] { torch }); } public void removeItems(Player player) { player.setFireTicks(0); player.setFallDistance(0.0F); player.setHealth(20); player.setFoodLevel(20); player.getInventory().clear(); player.getEnderChest().clear(); player.getInventory().setHelmet(new ItemStack(Material.AIR)); player.getInventory().setChestplate(new ItemStack(Material.AIR)); player.getInventory().setLeggings(new ItemStack(Material.AIR)); player.getInventory().setBoots(new ItemStack(Material.AIR)); for (PotionEffect effect : player.getActivePotionEffects()) { player.removePotionEffect(effect.getType()); } giveTorch(player); } public void removeFromQueue(Player player) { Arena arena = getPlayerArena(player); if (arena == null) { return; } arena.removePlayer(player); if (arena.getBlueList().contains(player)) { arena.removeBluePlayer(player); } if (arena.getRedList().contains(player)) { arena.removeRedPlayer(player); } if (arena.voteEq.containsKey(player)) { arena.voteEq.remove(player); } if (arena.voteRound.contains(player)) { arena.voteRound.remove(player); } if (arena.vote.containsKey(player)) { arena.vote.remove(player); } } @EventHandler public void onSignInteraction(SignChangeEvent e) { String l0 = e.getLine(0); String l1 = e.getLine(1); FileConfiguration config = getConfig(); List arena = config.getStringList("ArenaList"); Block b = e.getBlock(); if ((b.getType() == Material.SIGN) || (b.getType() == Material.WALL_SIGN) || (b.getType() == Material.WALL_SIGN)) { if (l0.equalsIgnoreCase("Castle")) { if (l1.equals(Boolean.valueOf(arena.contains("test".toString())))) { e.getPlayer().sendMessage("Typowa wiadomosc"); } } } } public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args) { FileConfiguration config = getConfig(); Player player = (Player)sender; if (command.getName().equalsIgnoreCase("castle")) { if ((args.length >= 1) && (args[0].equalsIgnoreCase("dolacz"))) { String map = null; if (args.length == 2) { map = args[1]; } for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getPlayerList().contains(player)) { player.sendMessage(ChatColor.RED + "Jestes juz zapisany do gry lub juz grasz!"); player.sendMessage(ChatColor.RED + "Mozesz sie wypisac z gry. Wpisz /castle opusc"); return true; } } for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getMode() == Arena.GameMode.WAITING) { if (((map == null) || (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(map))) && ( (((Arena)this.arenaList.get(i)).getPlayerList().size() < ((Arena)this.arenaList.get(i)).getToStart()) || ( (player.hasPermission("HqCastle.VIP")) && (((Arena)this.arenaList.get(i)).getPlayerList().size() < ((Arena)this.arenaList.get(i)).getToStart() + 4)))) { ((Arena)this.arenaList.get(i)).addPlayer(player); player.sendMessage(ChatColor.DARK_GREEN + "Zostales zapisany do gry na arenie " + ChatColor.GOLD + ((Arena)this.arenaList.get(i)).getName()); player.teleport(toLocation(config.getString("Spawn"))); for (int x = 0; x < ((Arena)this.arenaList.get(i)).getPlayerList().size(); x++) { ((Player)((Arena)this.arenaList.get(i)).getPlayerList().get(x)).sendMessage(ChatColor.GREEN + "Gracz " + ChatColor.GOLD + player.getName() + ChatColor.GREEN + " dolaczyl do gry " + ChatColor.YELLOW + ((Arena)this.arenaList.get(i)).getPlayerList().size() + ChatColor.RED + "|" + ChatColor.GOLD + ((Arena)this.arenaList.get(i)).getToStart()); } if ((((Arena)this.arenaList.get(i)).getPlayerList().size() >= ((Arena)this.arenaList.get(i)).getToStart()) && (!((Arena)this.arenaList.get(i)).getStarted())) { for (int j = 0; j < this.arenaList.size(); j++) { ((Player)((Arena)this.arenaList.get(i)).getPlayerList().get(j)).sendMessage(ChatColor.DARK_GREEN + "Gra rozpocznie sie za 15 sekund!"); } ((Arena)this.arenaList.get(i)).setStarted(true); final int x = i; getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() { ((Arena)Main.this.arenaList.get(x)).start(); } }, 300L); } return true; } } else if ((map != null) && (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(map))) { player.sendMessage(ChatColor.DARK_GREEN + "Aktualnie toczy sie rozgrywka, poczekaj na jej zakonczenie!"); return true; } } player.sendMessage(ChatColor.DARK_GREEN + "Wszystkie areny zajete. Poczekaj na zwolnienie sie areny!"); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("dolacz"))) { player.sendMessage(ChatColor.RED + "Wpisz /castle dolacz - dolacz do losowej mapy"); player.sendMessage(ChatColor.RED + "Wpisz /castle dolacz - dolacz do wybranej mapy"); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("opusc"))) { for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getPlayerList().contains(player)) { if (((Arena)this.arenaList.get(i)).getMode() == Arena.GameMode.WAITING) { for (int x = 0; x < ((Arena)this.arenaList.get(i)).getPlayerList().size(); x++) { ((Player)((Arena)this.arenaList.get(i)).getPlayerList().get(x)).sendMessage(ChatColor.GREEN + "Gracz " + ChatColor.GOLD + player.getName() + ChatColor.GREEN + " opuscil gre " + ChatColor.YELLOW + (((Arena)this.arenaList.get(i)).getPlayerList().size() - 1) + ChatColor.RED + "|" + ChatColor.GOLD + ((Arena)this.arenaList.get(i)).getToStart()); } removeFromQueue(player); } else { player.setHealth(0); } player.sendMessage(ChatColor.RED + "Zostales wypisany z gry!"); return true; } } player.sendMessage(ChatColor.RED + "Nie jestes w grze!"); return true; } if ((args.length == 2) && (args[0].equalsIgnoreCase("eq"))) { Arena arena = getPlayerArena(player); if (arena == null) { player.sendMessage(ChatColor.RED + "Musisz byc na arenie!"); return true; } if ((args[1].equalsIgnoreCase("KOX")) || (args[1].equalsIgnoreCase("POTION"))) { arena.voteEq.put(player, args[1]); player.sendMessage(ChatColor.GREEN + "Zaglosowales na zestaw, wyniki poznasz po starcie gry!"); return true; } player.sendMessage(ChatColor.RED + "Wpisz /castle eq "); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("eq"))) { player.sendMessage(ChatColor.RED + "Wpisz /castle eq "); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("start"))) { Arena arena = getPlayerArena(player); if (arena == null) { player.sendMessage(ChatColor.RED + "Musisz byc na arenie!"); return true; } if (arena.voteRound.contains(player)) { player.sendMessage(ChatColor.RED + "Juz glosowales! " + ChatColor.YELLOW + arena.voteRound.size() + ChatColor.RED + "|" + ChatColor.GOLD + arena.getVoteStart()); return true; } arena.voteRound.add(player); player.sendMessage(ChatColor.GREEN + "Zaglosowales za rozpoczeciem gry " + ChatColor.YELLOW + arena.voteRound.size() + ChatColor.RED + "|" + ChatColor.GOLD + arena.getVoteStart()); if ((arena.voteRound.size() == arena.getVoteStart()) && (!arena.getStarted())) { for (int j = 0; j < arena.getPlayerList().size(); j++) { ((Player)arena.getPlayerList().get(j)).sendMessage(ChatColor.GREEN + "Gra rozpocznie sie za 15 sekund!"); } arena.setStarted(true); final Arena NewArena = arena; getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() { NewArena.start(); } }, 300L); } return true; } if ((args.length == 2) && (args[0].equalsIgnoreCase("team"))) { Arena arena = getPlayerArena(player); if (arena == null) { player.sendMessage(ChatColor.RED + "Musisz byc na arenie!"); return true; } if ((!args[1].equalsIgnoreCase("blue")) && (!args[1].equalsIgnoreCase("red"))) { player.sendMessage(ChatColor.RED + "Wpisz /castle team "); return true; } if (((arena.getBlueList().contains(player)) && (args[1].equalsIgnoreCase("blue"))) || ((arena.getRedList().contains(player)) && (args[1].equalsIgnoreCase("red")))) { player.sendMessage(ChatColor.RED + "Jestes juz w tym team'ie!"); return true; } if ((arena.getBlueList().contains(player)) && (args[1].equalsIgnoreCase("red"))) { if (arena.getRedList().size() == arena.getToStart() / 2) { player.sendMessage(ChatColor.RED + "W tym teamie jest juz komplet graczy!"); return true; } arena.removeBluePlayer(player); arena.addRedPlayer(player); } else if ((arena.getRedList().contains(player)) && (args[1].equalsIgnoreCase("blue"))) { if (arena.getBlueList().size() == arena.getToStart() / 2) { player.sendMessage(ChatColor.RED + "W tym teamie jest juz komplet graczy!"); return true; } arena.removeRedPlayer(player); arena.addBluePlayer(player); } player.sendMessage(ChatColor.DARK_GREEN + "Zostales przeniesiony do teamu " + ChatColor.GOLD + args[1].toLowerCase()); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("team"))) { player.sendMessage(ChatColor.RED + "Wpisz /castle team "); return true; } if ((player.isOp()) || (player.hasPermission("HqCastle.admin"))) { if ((args.length == 2) && (args[0].equalsIgnoreCase("dodaj"))) { List arena = config.getStringList("ArenaList"); if (arena.contains(args[1].toLowerCase())) { player.sendMessage(ChatColor.RED + "Taka nazwa jest juz zajeta!"); return true; } List aList = config.getStringList("ArenaList"); aList.add(args[1]); config.set("ArenaList", aList); config.set(args[1].toLowerCase() + ".name", args[1].toLowerCase()); config.set(args[1].toLowerCase() + ".enabled", Boolean.valueOf(false)); config.options().copyDefaults(true); saveConfig(); player.sendMessage(ChatColor.RED + "Arena zostala dodana!"); return true; } if ((args.length == 1) && (args[0].equalsIgnoreCase("spawn"))) { config.set("Spawn", getLocation(player)); config.options().copyDefaults(true); saveConfig(); player.sendMessage(ChatColor.RED + "Lokacja spawn dodana!"); return true; } if ((args.length >= 3) && (args[0].equalsIgnoreCase("ustaw"))) { List arena = config.getStringList("ArenaList"); if (!arena.contains(args[1].toLowerCase())) { player.sendMessage(ChatColor.RED + "Taka arena nie istnieje!"); return true; } Arena EditedArena = getArenaByString(args[1]); if (args[2].equalsIgnoreCase("atakujacy")) { config.set(args[1].toLowerCase() + ".red", getLocation(player)); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setRed(player.getLocation()); } player.sendMessage(ChatColor.RED + "Lokacja atakujacych dodana!"); return true; } if (args[2].equalsIgnoreCase("obroncy")) { config.set(args[1].toLowerCase() + ".blue", getLocation(player)); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setBlue(player.getLocation()); } player.sendMessage(ChatColor.RED + "Lokacja broniacych dodana!"); return true; } if (args[2].equalsIgnoreCase("flag")) { config.set(args[1].toLowerCase() + ".flag", getLocation(player)); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setFlag(player.getLocation()); } player.sendMessage(ChatColor.RED + "Lokacja flag dodana!"); return true; } if (args[2].equalsIgnoreCase("cuboid")) { config.set(args[1].toLowerCase() + ".cuboid", getLocation(player)); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setCuboid(player.getLocation()); } player.sendMessage(ChatColor.RED + "Lokacja cuboid dodana!"); return true; } if (args[2].equalsIgnoreCase("tostart")) { if (args.length != 4) { player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw tostart ilosc"); return true; } if (!isNumeric(args[3])) { player.sendMessage(ChatColor.RED + args[3] + " nie jest liczba!"); return true; } config.set(args[1].toLowerCase() + ".toStart", Integer.valueOf(Integer.parseInt(args[3]))); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setToStart(Integer.parseInt(args[3])); } player.sendMessage(ChatColor.RED + "Wymagana licza osob do startu zostala ustawiona!"); return true; } if (args[2].equalsIgnoreCase("voteStart")) { if (args.length != 4) { player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw votestart ilosc"); return true; } if (!isNumeric(args[3])) { player.sendMessage(ChatColor.RED + args[3] + " nie jest liczba!"); return true; } config.set(args[1].toLowerCase() + ".voteStart", Integer.valueOf(Integer.parseInt(args[3]))); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setVoteStart(Integer.parseInt(args[3])); } player.sendMessage(ChatColor.RED + "Minimalna wymagana licza osob do startu zostala ustawiona!"); return true; } if (args[2].equalsIgnoreCase("time")) { if (args.length != 4) { player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw time czas"); return true; } if (!isNumeric(args[3])) { player.sendMessage(ChatColor.RED + args[3] + " nie jest liczba!"); return true; } config.set(args[1].toLowerCase() + ".startTime", Integer.valueOf(Integer.parseInt(args[3]))); config.options().copyDefaults(true); saveConfig(); if (EditedArena != null) { EditedArena.setStartTime(Integer.parseInt(args[3])); } player.sendMessage(ChatColor.RED + "Czas gry zostal ustawiony!"); return true; } if (args[2].equalsIgnoreCase("update")) { for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(args[1])) { getServer().dispatchCommand(getServer().getConsoleSender(), "wr save " + ((Arena)this.arenaList.get(i)).getCuboid().getWorld().getName()); player.sendMessage(ChatColor.RED + "Swiat zostal nadpisany"); return true; } } return true; } if (args[2].equalsIgnoreCase("wlacz")) { config.set(args[1].toLowerCase() + ".enabled", Boolean.valueOf(true)); config.options().copyDefaults(true); saveConfig(); player.sendMessage(ChatColor.RED + "Arena zostala wlaczona!"); for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(args[1])) { ((Arena)this.arenaList.get(i)).setMode(Arena.GameMode.WAITING); return true; } } int toStart = config.getInt(args[1].toLowerCase() + ".toStart"); int startTime = config.getInt(args[1].toLowerCase() + ".startTime"); int voteStart = config.getInt(args[1].toLowerCase() + ".voteStart"); boolean isEnabled = config.getBoolean(args[1].toLowerCase() + ".enabled"); Arena.GameMode mode = Arena.GameMode.DISABLED; if (isEnabled) { mode = Arena.GameMode.WAITING; } Location red = toLocation(config.getString(args[1].toLowerCase() + ".red")); Location blue = toLocation(config.getString(args[1].toLowerCase() + ".blue")); Location flag = toLocation(config.getString(args[1].toLowerCase() + ".flag")); Location cuboid = toLocation(config.getString(args[1].toLowerCase() + ".cuboid")); Location spawn = toLocation(config.getString("Spawn")); Arena newArena = new Arena(this, args[1].toLowerCase(), toStart, voteStart, startTime, mode, red, blue, cuboid, flag, spawn); this.arenaList.add(newArena); return true; } if (args[2].equalsIgnoreCase("wylacz")) { config.set(args[1].toLowerCase() + ".enabled", Boolean.valueOf(false)); config.options().copyDefaults(true); saveConfig(); player.sendMessage(ChatColor.RED + "Arena zostala wylaczona!"); for (int i = 0; i < this.arenaList.size(); i++) { if (((Arena)this.arenaList.get(i)).getName().equalsIgnoreCase(args[1])) { ((Arena)this.arenaList.get(i)).restart(ChatColor.RED + "Arena zostala zatrzymana!"); ((Arena)this.arenaList.get(i)).setMode(Arena.GameMode.DISABLED); return true; } } return true; } } player.sendMessage(ChatColor.RED + "Wpisz /castle dodaj - dodaje nowa mape"); player.sendMessage(ChatColor.RED + "Wpisz /castle spawn - ustaw spawn"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw atakujacy - ustawia lokacje red"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw obroncy - ustawia lokacje blue"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw flag - ustawia lokacje flagi"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw cuboid - ustawia srodek cuboida"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw tostart - ustawia liczbe osob"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw votestart - ustawia min liczbe osob do startu"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw time - ustawia czas gry"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw cuboid - ustawia srodek cuboida"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw update - tworzy kopie mapy do regeneracji"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw wlacz - wlacza mape"); player.sendMessage(ChatColor.RED + "Wpisz /castle ustaw wylacz - wylacza mape"); } player.sendMessage(ChatColor.RED + "Wpisz /castle dolacz - dolacz do losowej mapy"); player.sendMessage(ChatColor.RED + "Wpisz /castle dolacz - dolacz do wybranej mapy"); player.sendMessage(ChatColor.RED + "Wpisz /castle opusc - wypisz sie z gry"); player.sendMessage(ChatColor.RED + "Wpisz /castle team - aby zmienic team"); player.sendMessage(ChatColor.RED + "Wpisz /castle eq - zaglosuj na zestaw"); player.sendMessage(ChatColor.RED + "Wpisz /castle start - zaglosuj na start"); return true; } return true; } }