本文整理汇总了Java中org.bukkit.Material.ENCHANTMENT_TABLE属性的典型用法代码示例。如果您正苦于以下问题:Java Material.ENCHANTMENT_TABLE属性的具体用法?Java Material.ENCHANTMENT_TABLE怎么用?Java Material.ENCHANTMENT_TABLE使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类org.bukkit.Material
的用法示例。
在下文中一共展示了Material.ENCHANTMENT_TABLE属性的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: openEnchanting
public InventoryView openEnchanting(Location location, boolean force) {
if (!force) {
Block block = location.getBlock();
if (block.getType() != Material.ENCHANTMENT_TABLE) {
return null;
}
}
if (location == null) {
location = getLocation();
}
getHandle().displayGUIEnchantment(location.getBlockX(), location.getBlockY(), location.getBlockZ(), null);
if (force) {
getHandle().openContainer.checkReachable = false;
}
return getHandle().openContainer.getBukkitView();
}
示例2: onInteract
@Override
public void onInteract(PlayerInteractEvent e, EquipmentSlot es)
{
Player p = e.getPlayer();
if(hasPermission(enchant_open, p))
{
Location loc = new Location(p.getWorld(), 10000.0D, 255.0D, 10000.0D);
//Can't be handled differently :(
Block im5 = loc.getBlock();
if(im5.getType() != Material.ENCHANTMENT_TABLE)
{
im5.setType(Material.ENCHANTMENT_TABLE);
}
p.openEnchanting(loc, true);
}
super.onInteract(e, es);
}
示例3: onGameStart
/**
* Give 128 bookshelves, thousands of xp levels, 64 tables and 64 anvils to all the players
*
* @param game Game
*/
@Override
public void onGameStart(SurvivalGame game)
{
ItemStack tables = new ItemStack(Material.ENCHANTMENT_TABLE, 64);
ItemStack anvils = new ItemStack(Material.ANVIL, 64);
ItemStack bookshelves = new ItemStack(Material.BOOKSHELF, 64);
ItemStack lapis = new ItemStack(Material.INK_SACK, 64, (short)4);
for (GamePlayer player : (Collection<GamePlayer>) game.getInGamePlayers().values())
{
Player p = player.getPlayerIfOnline();
if (p == null)
continue;
p.getInventory().addItem(tables);
p.getInventory().addItem(anvils);
p.getInventory().addItem(bookshelves);
p.getInventory().addItem(lapis);
p.setLevel(111111);
}
}
示例4: onPlayerInteract
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGH)
public void onPlayerInteract(PlayerInteractEvent event) {
if (event.getAction() == Action.LEFT_CLICK_BLOCK && event.hasItem()) {
// The player didn't click an enchantment table, Creative players will instantly destroy.
Player player = event.getPlayer();
if (event.getClickedBlock().getType() == Material.ENCHANTMENT_TABLE && player.getGameMode() != GameMode.CREATIVE) {
// The player didn't click with an enchanted book.
ItemStack stack = event.getItem();
if (stack != null && stack.getType() == Material.ENCHANTED_BOOK) {
ItemMeta meta = stack.getItemMeta();
if (meta instanceof EnchantmentStorageMeta) {
EnchantmentStorageMeta enchantmentStorageMeta = (EnchantmentStorageMeta) meta;
for (Enchantment enchantment : enchantmentStorageMeta.getStoredEnchants().keySet()) {
enchantmentStorageMeta.removeStoredEnchant(enchantment);
}
event.setCancelled(true);
player.setItemInHand(EMPTY_BOOK);
player.sendMessage(ChatColor.GREEN + "You reverted this item to its original form.");
}
}
}
}
}
示例5: isInteractiveBlock
/**
* checks if this block would give a reaction if you click on it without
* shifting, e.g. opening a chest or switching a lever
*/
public static boolean isInteractiveBlock(Block b) {
if (b == null || b.getState() == null) {
return false;
}
if (b.getType() == Material.WORKBENCH || b.getType() == Material.ENCHANTMENT_TABLE || b.getType() == Material.ANVIL || b.getType() == Material.BREWING_STAND || b.getState() instanceof InventoryHolder || b.getState() instanceof NoteBlock) {
return true;
}
if (b.getState().getData() instanceof Button || b.getState().getData() instanceof Lever || b.getState().getData() instanceof Door || b.getState().getData() instanceof TrapDoor || b.getState().getData() instanceof Gate || b.getState().getData() instanceof Comparator) {
if (b.getType() != Material.IRON_DOOR && b.getType() != Material.IRON_DOOR_BLOCK && b.getType() != Material.IRON_TRAPDOOR) {
return true;
}
}
return false;
}
示例6: onCraftItem
private static void onCraftItem(Recipe recipe, CraftingInventory inventory)
{
if (recipe.getResult().getType() == Material.ENCHANTMENT_TABLE)
inventory.setResult(new ItemStack(Material.AIR));
}
示例7: onInteract
@EventHandler
public void onInteract(PlayerInteractEvent e) {
PAUser u = PAServer.getUser(e.getPlayer());
if (e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK) {
if (e.getItem() == null) return;
e.setCancelled(true);
if (Cosmetic.useCosmetic(u, e.getItem().getType())) return;
switch (e.getItem().getType()) {
case NETHER_STAR:
e.setCancelled(true);
LobbyMenu.openMenu(u, LobbyMenu.MenuType.SERVERS);
break;
case REDSTONE:
e.setCancelled(true);
u.sendMessage(PAData.LOBBY.getPrefix() + "&cNo estamos listos aún");
//LobbyMenu.openMenu(u, LobbyMenu.MenuType.COSMETICOS);
break;
case WOOD_AXE:
e.setCancelled(true);
u.sendToServer("cons");
break;
}
if (e.getClickedBlock() == null) return;
if (e.getClickedBlock().getType() == Material.ENCHANTMENT_TABLE) {
e.setCancelled(true);
u.sendMessage(PAData.LOBBY.getPrefix() + "&cActualmente estamos trabajando en esto, disculpen las molestias");
}
}
if (!u.isOnRank(PACmd.Grupo.Builder)) {
if (e.getClickedBlock() != null) {
if (e.getClickedBlock().getType().equals(Material.TRAP_DOOR) || e.getClickedBlock().getType().equals(Material.IRON_TRAPDOOR)
|| e.getClickedBlock().getType().equals(Material.FENCE_GATE) || e.getClickedBlock().getType().equals(Material.FIRE)
|| e.getClickedBlock().getType().equals(Material.CAULDRON) || e.getClickedBlock().getRelative(BlockFace.UP).getType().equals(Material.FIRE)
|| e.getClickedBlock().getType() == Material.CHEST || e.getClickedBlock().getType() == Material.TRAPPED_CHEST
|| e.getClickedBlock().getType() == Material.DROPPER || e.getClickedBlock().getType() == Material.DISPENSER
|| e.getClickedBlock().getType() == Material.BED_BLOCK || e.getClickedBlock().getType() == Material.BED
|| e.getClickedBlock().getType() == Material.WORKBENCH || e.getClickedBlock().getType() == Material.BREWING_STAND
|| e.getClickedBlock().getType() == Material.ANVIL || e.getClickedBlock().getType() == Material.DARK_OAK_FENCE_GATE
|| e.getClickedBlock().getType() == Material.SPRUCE_FENCE_GATE || e.getClickedBlock().getType() == Material.FURNACE
|| e.getClickedBlock().getType() == Material.BURNING_FURNACE || e.getClickedBlock().getType() == Material.HOPPER
|| e.getClickedBlock().getType() == Material.STONE_BUTTON || e.getClickedBlock().getType() == Material.WOOD_BUTTON) {
e.setCancelled(true);
}
}
}
}