Java 类org.bukkit.event.player.PlayerArmorStandManipulateEvent 实例源码

项目:CloudNet    文件:ArmorStandListener.java   
@EventHandler
public void handle(PlayerArmorStandManipulateEvent e)
{
    MobSelector.MobImpl mob = CollectionWrapper.filter(MobSelector.getInstance().getMobs().values(), new Acceptable<MobSelector.MobImpl>() {
        @Override
        public boolean isAccepted(MobSelector.MobImpl value)
        {
            try
            {
                return e.getRightClicked().getEntityId() == (int) value.getDisplayMessage().getClass().getMethod("getEntityId").invoke(value.getDisplayMessage());
            } catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e1)
            {
                return false;
            }
        }
    });
    if (mob != null)
    {
        e.setCancelled(true);
    }
}
项目:Achtbaan    文件:EntityClick_Listener.java   
@EventHandler
public void ArmorStandGreef(PlayerArmorStandManipulateEvent e){
    if(e.getRightClicked() instanceof ArmorStand){
        ArmorStand clickedA = (ArmorStand) e.getRightClicked();
        if(clickedA.getPassenger() == null){
            ArrayList<Location> all_main_seats = new ArrayList<Location>();
            for(attractie att : Main.r.Attracties.values()){
                for(ArmorStand a : att.getMainSeats())
                {
                    all_main_seats.add(a.getLocation());
                }
            }
            if(all_main_seats.contains(clickedA.getLocation())){
                e.setCancelled(true);
            }
        }
    }
}
项目:KingdomFactions    文件:BuildEventListener.java   
@EventHandler
public void onArmorStandManupulation(PlayerArmorStandManipulateEvent e) {
    KingdomFactionsPlayer p = PlayerModule.getInstance().getPlayer(e.getPlayer());
    if(p.isVanished()) return;
    if(e.isCancelled()) return;
    if(e.getRightClicked() == null) return;
    if(!p.canBuild(e.getRightClicked().getLocation())) {
        e.setCancelled(!ProtectionModule.getInstance().tryInfluence(p, 200));
    } 
}
项目:Achtbaan    文件:EntityClick_Listener.java   
@EventHandler
public void ArmorStandGreef(PlayerArmorStandManipulateEvent e){
    if(e.getRightClicked() instanceof ArmorStand){
        ArmorStand clickedA = (ArmorStand) e.getRightClicked();
        if(clickedA.getPassenger() == null){
            ArrayList<ArmorStand> all_main_seats = new ArrayList<ArmorStand>();
            for(Rollercoaster att : Main.r.Attracties.values()){
                all_main_seats.addAll(att.getMainSeats());
            }
            if(all_main_seats.contains(clickedA)){
                e.setCancelled(true);
            }
        }
    }
}
项目:Achtbaan    文件:EntityClick_Listener.java   
@EventHandler
public void ArmorStandGreef(PlayerArmorStandManipulateEvent e){
    if(e.getRightClicked() instanceof ArmorStand){
        ArmorStand clickedA = (ArmorStand) e.getRightClicked();
        if(clickedA.getPassenger() == null){
            ArrayList<ArmorStand> all_main_seats = new ArrayList<ArmorStand>();
            for(attractie att : Main.r.Attracties.values()){
                all_main_seats.addAll(att.getMainSeats());
            }
            if(all_main_seats.contains(clickedA)){
                e.setCancelled(true);
            }
        }
    }
}
项目:ShopChest    文件:ShopInteractListener.java   
@EventHandler(ignoreCancelled = true)
public void onPlayerManipulateArmorStand(PlayerArmorStandManipulateEvent e) {
    // When clicking an armor stand with an armor item, the armor stand will take it.
    // As a hologram consists of armor stands, they would also take the item.
    ArmorStand armorStand = e.getRightClicked();
    if (Hologram.isPartOfHologram(armorStand)) {
        e.setCancelled(true);
    }
}
项目:NovaGuilds    文件:RegionInteractListener.java   
/**
 * Handles editing items on an ArmorStand
 *
 * @param event The event
 */
@EventHandler
public void onPlayerManipulateArmorStand(PlayerArmorStandManipulateEvent event) {
    Player player = event.getPlayer();
    NovaPlayer nPlayer = PlayerManager.getPlayer(player);
    Location location = event.getRightClicked().getLocation();

    if(RegionManager.get(location) != null
            && (!plugin.getRegionManager().canInteract(player, location) || (!nPlayer.getPreferences().getBypass() && !nPlayer.hasPermission(GuildPermission.INTERACT)))) {
        event.setCancelled(true);
        Message.CHAT_REGION_DENY_INTERACT.send(player);
    }
}
项目:PlotMe-Core    文件:BukkitPlotListener.java   
@EventHandler
public void onArmorStand(PlayerArmorStandManipulateEvent event) {
    Location location = BukkitUtil.adapt(event.getRightClicked().getLocation());

    if (manager.isPlotWorld(location)) {
        if (event.getPlayer().hasPermission(PermissionNames.ADMIN_BUILDANYWHERE)) {
            return;
        }

        Plot plot = manager.getPlot(location);

        if (plot == null) {
            event.getPlayer().sendMessage(api.C("CannotBuild"));
            event.setCancelled(true);
        } else {
            if (plot.getOwnerId().equals(event.getPlayer().getUniqueId())) {
                return;
            }
            Optional<Plot.AccessLevel> member = plot.isMember(event.getPlayer().getUniqueId());
            if (member.isPresent()) {
                if (member.get().equals(Plot.AccessLevel.TRUSTED) && !api.getServerBridge().getOfflinePlayer(plot.getOwnerId()).isOnline()) {
                    event.getPlayer().sendMessage(api.C("CannotBuild"));
                    event.setCancelled(true);
                } else if (api.isPlotLocked(plot.getId())) {
                    event.getPlayer().sendMessage(api.C("PlotLocked"));
                    event.setCancelled(true);
                }
            } else {
                event.getPlayer().sendMessage(api.C("CannotBuild"));
                event.setCancelled(true);
            }
        }
    }
}
项目:CraftoPlugin    文件:EntityProtectionBreakListener.java   
@EventHandler
public void onArmorStandManip(final PlayerArmorStandManipulateEvent event) {
    debug("PlayerArmorStandManipulateEvent(" + event.getPlayer().getName() + ", " + event.getRightClicked().getType() + ", "
            + event.getArmorStandItem().getType() + ", " + event.getPlayerItem() + ")");

    final ArmorStand entity = event.getRightClicked();
    if (!canInteract(entity, event.getPlayer())) { debug("CANCELLED!"); event.setCancelled(true); }
    else { debug("ALLOWED!"); }
}
项目:SpigotSource    文件:EntityArmorStand.java   
private void a(EntityHuman entityhuman, EnumItemSlot enumitemslot, @Nullable ItemStack itemstack, EnumHand enumhand) {
    ItemStack itemstack1 = this.getEquipment(enumitemslot);

    if (itemstack1 == null || (this.bA & 1 << enumitemslot.c() + 8) == 0) {
        if (itemstack1 != null || (this.bA & 1 << enumitemslot.c() + 16) == 0) {
            ItemStack itemstack2;
            // CraftBukkit start
            org.bukkit.inventory.ItemStack armorStandItem = CraftItemStack.asCraftMirror(itemstack1);
            org.bukkit.inventory.ItemStack playerHeldItem = CraftItemStack.asCraftMirror(itemstack);

            Player player = (Player) entityhuman.getBukkitEntity();
            ArmorStand self = (ArmorStand) this.getBukkitEntity();

            EquipmentSlot slot = CraftEquipmentSlot.getSlot(enumitemslot);
            PlayerArmorStandManipulateEvent armorStandManipulateEvent = new PlayerArmorStandManipulateEvent(player,self,playerHeldItem,armorStandItem,slot);
            this.world.getServer().getPluginManager().callEvent(armorStandManipulateEvent);

            if (armorStandManipulateEvent.isCancelled()) {
                return;
            }
            // CraftBukkit end

            if (entityhuman.abilities.canInstantlyBuild && (itemstack1 == null || itemstack1.getItem() == Item.getItemOf(Blocks.AIR)) && itemstack != null) {
                itemstack2 = itemstack.cloneItemStack();
                itemstack2.count = 1;
                this.setSlot(enumitemslot, itemstack2);
            } else if (itemstack != null && itemstack.count > 1) {
                if (itemstack1 == null) {
                    itemstack2 = itemstack.cloneItemStack();
                    itemstack2.count = 1;
                    this.setSlot(enumitemslot, itemstack2);
                    --itemstack.count;
                }
            } else {
                this.setSlot(enumitemslot, itemstack);
                entityhuman.a(enumhand, itemstack1);
            }
        }
    }
}
项目:ZentrelaRPG    文件:EnvironmentManager.java   
@EventHandler
public void onPlayerArmorStandManipulate(PlayerArmorStandManipulateEvent event) {
    event.setCancelled(true);
}
项目:Arcadia-Spigot    文件:Freeze.java   
@EventHandler
public void onEntityManipulate(PlayerArmorStandManipulateEvent event) {
    if(event.getRightClicked().getUniqueId() == entity.getUniqueId())
        event.setCancelled(true);
}
项目:ProjectAres    文件:EventFilterMatchModule.java   
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void onArmorStandInteract(final PlayerArmorStandManipulateEvent event) {
    cancelUnlessInteracting(event, event.getPlayer());
}
项目:Hub    文件:EntityEditionListener.java   
@EventHandler
public void onArmorStandEdit(PlayerArmorStandManipulateEvent event)
{
    if (!this.canDoAction(event.getPlayer()))
        event.setCancelled(true);
}
项目:FactionsXL    文件:EntityProtectionListener.java   
@EventHandler
public void onArmorStandManipulate(PlayerArmorStandManipulateEvent event) {
    forbidIfInProtectedTerritory(event.getPlayer(), event.getRightClicked(), event, EQUIP);
}
项目:Kineticraft    文件:ArmorStands.java   
@EventHandler(ignoreCancelled = true)
public void onArmorStand(PlayerArmorStandManipulateEvent evt) {
    evt.setCancelled(MetadataManager.hasMetadata(evt.getRightClicked(), "noModify"));
}
项目:GhostScavengerHunt    文件:ClaimAnimation.java   
@EventHandler
public void onArmorStandManipulate(PlayerArmorStandManipulateEvent event) {
    if(event.getRightClicked().getUniqueId() == armorStand.getUniqueId())
        event.setCancelled(true);
}
项目:SoundMuffler    文件:SoundMuffler.java   
@EventHandler
public void on(PlayerArmorStandManipulateEvent event) {
    if ("SoundMuffler".equals(event.getRightClicked().getCustomName())) {
        event.setCancelled(true);
    }
}
项目:Peacecraft    文件:LotsListener.java   
@EventHandler
public void onPlayerArmorStandManipulate(PlayerArmorStandManipulateEvent event) {
    this.onPlayerInteractEntity(event);
}