Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: This feature may not be available in some browsers.
Плагин отслеживает событие PlayerInteractEvent, когда игрок правым кликом взаимодействует с блоком. Если это взаимодействие происходит с вагонеткой с воронкой (Material.HOPPER), то плагин проверяет, есть ли у игрока в руке алмаз (Material.DIAMOND). Если условие выполняется, то событие отменяется и игроку отправляется сообщение о том, что он не может выкинуть алмаз в вагонетку.
JavaScript:import org.bukkit.Material; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.Action; import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.plugin.java.JavaPlugin; public class NoDiamondsToHopperPlugin extends JavaPlugin implements Listener {...
import org.bukkit.Material;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.java.JavaPlugin;
public class NoDiamondsToHopperPlugin extends JavaPlugin implements Listener {
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}
@EventHandler
public void onPlayerInteract(PlayerInteractEvent event) {
if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
if (event.getClickedBlock().getType() == Material.HOPPER) {
ItemStack item = event.getPlayer().getEquipment().getItemInMainHand();
if (item != null && item.getType() == Material.DIAMOND) {
event.setCancelled(true);
event.getPlayer().sendMessage("§cВы не можете выкидывать алмазы в вагонетку с воронкой!");
}
}
}
}
}
??????Плагин отслеживает событие PlayerInteractEvent, когда игрок правым кликом взаимодействует с блоком. Если это взаимодействие происходит с вагонеткой с воронкой (Material.HOPPER), то плагин проверяет, есть ли у игрока в руке алмаз (Material.DIAMOND). Если условие выполняется, то событие отменяется и игроку отправляется сообщение о том, что он не может выкинуть алмаз в вагонетку.
JavaScript:import org.bukkit.Material; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.Action; import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.plugin.java.JavaPlugin; public class NoDiamondsToHopperPlugin extends JavaPlugin implements Listener { @Override public void onEnable() { getServer().getPluginManager().registerEvents(this, this); } @EventHandler public void onPlayerInteract(PlayerInteractEvent event) { if (event.getAction() == Action.RIGHT_CLICK_BLOCK) { if (event.getClickedBlock().getType() == Material.HOPPER) { ItemStack item = event.getPlayer().getEquipment().getItemInMainHand(); if (item != null && item.getType() == Material.DIAMOND) { event.setCancelled(true); event.getPlayer().sendMessage("§cВы не можете выкидывать алмазы в вагонетку с воронкой!"); } } } } }
Всем привет, как запретить выкидывать алмаз в вагонетку с воронкой?
@EventHandler
public void onHopper(InventoryPickupItemEvent e) {
if(e.getInventory().getType() == InventoryType.HOPPER) {
if(e.getItem().getItemStack().getType() == Material.DIAMOND) {
e.setCancelled(true);
}
}
}
Спасибо. Код работает!??????
Объединено
Java:@EventHandler public void onHopper(InventoryPickupItemEvent e) { if(e.getInventory().getType() == InventoryType.HOPPER) { if(e.getItem().getItemStack().getType() == Material.DIAMOND) { e.setCancelled(true); } } }
Мы используем основные cookies для обеспечения работы этого сайта, а также дополнительные cookies для обеспечения максимального удобства пользователя.
Посмотрите дополнительную информацию и настройте свои предпочтения