Search in sources :

Example 41 with Arena

use of pl.plajer.villagedefense3.arena.Arena in project Village_Defense by Plajer.

the class Events method onBuild.

@EventHandler(priority = EventPriority.HIGH)
public // highest priority to fully protecc our game (i didn't set it because my test server was destroyed, n-no......)
void onBuild(BlockPlaceEvent event) {
    Arena arena = ArenaRegistry.getArena(event.getPlayer());
    if (arena == null)
        return;
    event.setCancelled(true);
}
Also used : Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 42 with Arena

use of pl.plajer.villagedefense3.arena.Arena in project Village_Defense by Plajer.

the class RewardsHandler method performCommand.

private void performCommand(Player player, String string) {
    if (!enabled)
        return;
    Arena arena = ArenaRegistry.getArena(player);
    if (arena == null)
        return;
    String command = string.replaceAll("%ARENA-ID%", arena.getID()).replaceAll("%MAPNAME%", arena.getMapName()).replaceAll("%PLAYERAMOUNT%", String.valueOf(arena.getPlayers().size())).replaceAll("%WAVE%", String.valueOf(arena.getWave()));
    if (command.contains("p:")) {
        player.performCommand(command.substring(2, command.length()).replaceAll("%PLAYER%", player.getName()));
    } else {
        plugin.getServer().dispatchCommand(plugin.getServer().getConsoleSender(), command.replaceAll("%PLAYER%", player.getName()));
    }
}
Also used : Arena(pl.plajer.villagedefense3.arena.Arena)

Example 43 with Arena

use of pl.plajer.villagedefense3.arena.Arena in project Village_Defense by Plajer.

the class SignManager method onSignChange.

@EventHandler
public void onSignChange(SignChangeEvent e) {
    if (!e.getPlayer().hasPermission("villagedefense.admin.sign.create"))
        return;
    if (e.getLine(0).equalsIgnoreCase("[villagedefense]")) {
        if (e.getLine(1).isEmpty()) {
            e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("Signs.Please-Type-Arena-Name"));
            return;
        }
        for (Arena arena : ArenaRegistry.getArenas()) {
            if (arena.getID().equalsIgnoreCase(e.getLine(1))) {
                for (int i = 0; i < LanguageManager.getLanguageFile().getStringList("Signs.Lines").size(); i++) {
                    if (i == 1) {
                        // maybe not needed
                        e.setLine(i, ChatColor.translateAlternateColorCodes('&', LanguageManager.getLanguageFile().getStringList("Signs.Lines").get(i).replaceAll("%mapname%", arena.getMapName())));
                    }
                    if (LanguageManager.getLanguageFile().getStringList("Signs.Lines").get(i).contains("%state%")) {
                        e.setLine(i, LanguageManager.getLanguageFile().getStringList("Signs.Lines").get(i).replaceAll("%state%", ChatManager.colorMessage("Signs.Game-States.Inactive")));
                    }
                    if (LanguageManager.getLanguageFile().getStringList("Signs.Lines").get(i).contains("%playersize%")) {
                        e.setLine(i, LanguageManager.getLanguageFile().getStringList("Signs.Lines").get(i).replaceAll("%playersize%", String.valueOf(arena.getPlayers().size())).replaceAll("%maxplayers%", String.valueOf(arena.getMaximumPlayers())));
                    }
                }
                loadedSigns.put((Sign) e.getBlock().getState(), arena);
                e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("Signs.Sign-Created"));
                String location = e.getBlock().getWorld().getName() + "," + e.getBlock().getX() + "," + e.getBlock().getY() + "," + e.getBlock().getZ() + ",0.0,0.0";
                List<String> locs = ConfigurationManager.getConfig("arenas").getStringList("instances." + arena.getID() + ".signs");
                locs.add(location);
                FileConfiguration config = ConfigurationManager.getConfig("arenas");
                config.set("instances." + arena.getID() + ".signs", locs);
                ConfigurationManager.saveConfig(config, "arenas");
                return;
            }
        }
        e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("Signs.Arena-Doesnt-Exists"));
    }
}
Also used : FileConfiguration(org.bukkit.configuration.file.FileConfiguration) Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 44 with Arena

use of pl.plajer.villagedefense3.arena.Arena in project Village_Defense by Plajer.

the class SignManager method onJoinAttempt.

@EventHandler
public void onJoinAttempt(PlayerInteractEvent e) {
    if (e.getAction() == Action.RIGHT_CLICK_BLOCK && e.getClickedBlock().getState() instanceof Sign && loadedSigns.containsKey(e.getClickedBlock().getState())) {
        Arena arena = loadedSigns.get(e.getClickedBlock().getState());
        if (arena != null) {
            for (Arena loopArena : ArenaRegistry.getArenas()) {
                if (loopArena.getPlayers().contains(e.getPlayer())) {
                    e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("In-Game.Already-Playing"));
                    return;
                }
            }
            if (arena.getMaximumPlayers() <= arena.getPlayers().size()) {
                if ((e.getPlayer().hasPermission(PermissionsManager.getVip()) || e.getPlayer().hasPermission(PermissionsManager.getJoinFullGames()))) {
                    boolean b = false;
                    for (Player player : arena.getPlayers()) {
                        if (!player.hasPermission(PermissionsManager.getVip()) || !player.hasPermission(PermissionsManager.getJoinFullGames())) {
                            if ((arena.getArenaState() == ArenaState.STARTING || arena.getArenaState() == ArenaState.WAITING_FOR_PLAYERS)) {
                                arena.leaveAttempt(player);
                                player.sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("In-Game.Messages.Lobby-Messages.You-Were-Kicked-For-Premium-Slot"));
                                String message = ChatManager.formatMessage(arena, ChatManager.colorMessage("In-Game.Messages.Lobby-Messages.Kicked-For-Premium-Slot"), player);
                                for (Player p : arena.getPlayers()) {
                                    p.sendMessage(ChatManager.PLUGIN_PREFIX + message);
                                }
                                arena.joinAttempt(e.getPlayer());
                                return;
                            } else {
                                arena.joinAttempt(e.getPlayer());
                                return;
                            }
                        }
                    }
                    if (!b) {
                        e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("In-Game.No-Slots-For-Premium"));
                    }
                } else {
                    e.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("In-Game.Full-Game-No-Permission"));
                }
            } else {
                arena.joinAttempt(e.getPlayer());
            }
        }
    }
}
Also used : Player(org.bukkit.entity.Player) Sign(org.bukkit.block.Sign) Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 45 with Arena

use of pl.plajer.villagedefense3.arena.Arena in project Village_Defense by Plajer.

the class DogFriendKit method giveKitItems.

@Override
public void giveKitItems(Player player) {
    player.getInventory().addItem(WeaponHelper.getUnBreakingSword(WeaponHelper.ResourceType.STONE, 10));
    ArmorHelper.setArmor(player, ArmorHelper.ArmorType.LEATHER);
    player.getInventory().addItem(new ItemStack(Material.GRILLED_PORK, 8));
    player.getInventory().addItem(new ItemStack(Material.SADDLE));
    Arena arena = ArenaRegistry.getArena(player);
    if (arena == null)
        return;
    if (plugin.is1_8_R3()) {
        ArenaInitializer1_8_R3 initializer = (ArenaInitializer1_8_R3) arena;
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
    } else if (plugin.is1_9_R1()) {
        ArenaInitializer1_9_R1 initializer = (ArenaInitializer1_9_R1) arena;
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
    } else if (plugin.is1_11_R1()) {
        ArenaInitializer1_11_R1 initializer = (ArenaInitializer1_11_R1) arena;
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
    } else if (plugin.is1_12_R1()) {
        ArenaInitializer1_12_R1 initializer = (ArenaInitializer1_12_R1) arena;
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
        initializer.spawnWolf(initializer.getStartLocation(), player);
    }
}
Also used : ArenaInitializer1_11_R1(pl.plajer.villagedefense3.arena.ArenaInitializer1_11_R1) ArenaInitializer1_9_R1(pl.plajer.villagedefense3.arena.ArenaInitializer1_9_R1) ArenaInitializer1_8_R3(pl.plajer.villagedefense3.arena.ArenaInitializer1_8_R3) ItemStack(org.bukkit.inventory.ItemStack) ArenaInitializer1_12_R1(pl.plajer.villagedefense3.arena.ArenaInitializer1_12_R1) Arena(pl.plajer.villagedefense3.arena.Arena)

Aggregations

Arena (pl.plajer.villagedefense3.arena.Arena)49 Player (org.bukkit.entity.Player)28 EventHandler (org.bukkit.event.EventHandler)27 User (pl.plajer.villagedefense3.User)15 ItemStack (org.bukkit.inventory.ItemStack)9 ArenaInitializer1_11_R1 (pl.plajer.villagedefense3.arena.ArenaInitializer1_11_R1)7 ArenaInitializer1_12_R1 (pl.plajer.villagedefense3.arena.ArenaInitializer1_12_R1)7 ArenaInitializer1_8_R3 (pl.plajer.villagedefense3.arena.ArenaInitializer1_8_R3)7 ArenaInitializer1_9_R1 (pl.plajer.villagedefense3.arena.ArenaInitializer1_9_R1)7 FileConfiguration (org.bukkit.configuration.file.FileConfiguration)5 Villager (org.bukkit.entity.Villager)5 Zombie (org.bukkit.entity.Zombie)5 ItemMeta (org.bukkit.inventory.meta.ItemMeta)5 IronGolem (org.bukkit.entity.IronGolem)4 ArrayList (java.util.ArrayList)3 Sign (org.bukkit.block.Sign)3 PotionEffect (org.bukkit.potion.PotionEffect)3 Entity (org.bukkit.entity.Entity)2 Inventory (org.bukkit.inventory.Inventory)2 BukkitRunnable (org.bukkit.scheduler.BukkitRunnable)2