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);
}
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()));
}
}
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"));
}
}
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());
}
}
}
}
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);
}
}
Aggregations