Search in sources :

Example 16 with Arena

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

the class Events method onItemPickup.

@EventHandler
public void onItemPickup(PlayerExpChangeEvent event) {
    Arena arena = ArenaRegistry.getArena(event.getPlayer());
    if (arena == null)
        return;
    int amount = (int) Math.ceil(event.getAmount() * 1.6);
    User user = UserManager.getUser(event.getPlayer().getUniqueId());
    event.setAmount(amount);
    if (user.isFakeDead()) {
        event.setAmount(0);
        return;
    }
    // bonus orbs with custom permissions
    for (String perm : plugin.getCustomPermissions().keySet()) {
        if (event.getPlayer().hasPermission(perm)) {
            amount = +(int) Math.ceil(event.getAmount() * (plugin.getCustomPermissions().get(perm) / 100));
            user.addInt("orbs", (int) Math.ceil(event.getAmount() * (plugin.getCustomPermissions().get(perm) / 100)));
        }
    }
    if (event.getPlayer().hasPermission(PermissionsManager.getElite())) {
        amount = +(int) Math.ceil(event.getAmount() * 1.5);
        user.addInt("orbs", (int) Math.ceil(event.getAmount() * 1.5));
    } else if (event.getPlayer().hasPermission(PermissionsManager.getMvp())) {
        amount = +(int) Math.ceil(event.getAmount() * 1.0);
        user.addInt("orbs", (int) Math.ceil(event.getAmount() * 1.0));
    } else if (event.getPlayer().hasPermission(PermissionsManager.getVip())) {
        amount = +(int) Math.ceil(event.getAmount() * 0.5);
        user.addInt("orbs", (int) Math.ceil(event.getAmount() * 0.5));
    } else {
        amount = +event.getAmount();
        user.addInt("orbs", event.getAmount());
    }
    event.getPlayer().sendMessage(ChatManager.colorMessage("In-Game.Orbs-Pickup").replaceAll("%number%", String.valueOf(amount)));
}
Also used : User(pl.plajer.villagedefense3.User) Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 17 with Arena

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

the class Events method onSecond.

@EventHandler(priority = EventPriority.HIGHEST)
public void onSecond(EntityDamageByEntityEvent event) {
    User user = UserManager.getUser((event.getDamager().getUniqueId()));
    if (user.isFakeDead() || user.isSpectator()) {
        event.setCancelled(true);
        return;
    }
    if (!(event.getDamager() instanceof Arrow))
        return;
    Arrow arrow = (Arrow) event.getDamager();
    if (arrow.getShooter() == null)
        return;
    if (!(arrow.getShooter() instanceof Player))
        return;
    Arena arena = ArenaRegistry.getArena((Player) arrow.getShooter());
    if (arena == null)
        return;
    if (user.isFakeDead() || user.isSpectator()) {
        event.setCancelled(true);
        return;
    }
    if (!VILLAGE_ENTITIES.contains(event.getEntityType()))
        return;
    event.setCancelled(true);
}
Also used : Arrow(org.bukkit.entity.Arrow) Player(org.bukkit.entity.Player) User(pl.plajer.villagedefense3.User) Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 18 with Arena

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

the class Events method onKitMenuItemClick.

@EventHandler
public void onKitMenuItemClick(InventoryClickEvent event) {
    ItemStack inv = event.getCurrentItem();
    Arena arena = ArenaRegistry.getArena((Player) event.getWhoClicked());
    if (arena == null)
        return;
    if (inv == null || !inv.hasItemMeta() || !inv.getItemMeta().hasDisplayName() || inv.getType() != plugin.getKitManager().getMaterial() || !inv.getItemMeta().getDisplayName().equalsIgnoreCase(plugin.getKitManager().getItemName()))
        return;
    event.setCancelled(true);
}
Also used : ItemStack(org.bukkit.inventory.ItemStack) Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

Example 19 with Arena

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

the class Events method onBlockBreakEvent.

@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 onBlockBreakEvent(BlockBreakEvent 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 20 with Arena

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

the class Events method disableCommands.

@EventHandler(priority = EventPriority.HIGHEST)
public void disableCommands(PlayerCommandPreprocessEvent event) {
    Arena arena = ArenaRegistry.getArena(event.getPlayer());
    if (arena == null)
        return;
    if (!plugin.getConfig().getBoolean("Block-Commands-In-Game"))
        return;
    if (event.getMessage().contains("leave") || event.getMessage().contains("stats"))
        return;
    if (event.getPlayer().isOp() || event.getPlayer().hasPermission(PermissionsManager.getEditGames()))
        return;
    event.setCancelled(true);
    event.getPlayer().sendMessage(ChatManager.PLUGIN_PREFIX + ChatManager.colorMessage("In-Game.Only-Command-Ingame-Is-Leave"));
}
Also used : Arena(pl.plajer.villagedefense3.arena.Arena) EventHandler(org.bukkit.event.EventHandler)

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