- Баллы
- 76
- Имя в Minecraft
- CUBOPHORIA
Я нашел WorldEdit API и как понял от туда вставлять строчку с пометкой region
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Я нашел WorldEdit API и как понял от туда вставлять строчку с пометкой region
Смотри я добавил в библеотку worldedit-bukkit.jarСоздаешь регион ворлдагуарла, под названием, mine, для примера. Помещаешь в этот рг угольную руду.
Далее, делаешь вот так:
PHP:@EventHandler public void Break(BlockBreakEvent e) { Player p = e.getPlayer(); Block b = e.getBlock(); Material ore = b.getType(); RegionManager rgm = plugin.wg.getRegionManager(p.getWorld()); ApplicableRegionSet ars = rgm.getApplicableRegions(p.getLocation()); ars.getRegions(); boolean isRightRegion = false; for (ProtectedRegion prg : ars){ if (prg.getId().equalsIgnoreCase("mine")) { isRightRegion = true; } } if(!isRightRegion) { return; } if(ore == Material.COAL_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), coal); b.setType(Material.BEDROCK); p.setExp(0.1F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.COAL_ORE); } }, 140); } if(ore == Material.IRON_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), iron_ingot); b.setType(Material.BEDROCK); p.setExp(0.15F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.IRON_ORE); } }, 200); } if(ore == Material.GOLD_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), gold_ingot); b.setType(Material.BEDROCK); p.setExp(0.2F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.GOLD_INGOT); } }, 260); } if(ore == Material.DIAMOND_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), diamond); b.setType(Material.BEDROCK); p.setExp(0.25F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.DIAMOND); } }, 340); } if(ore == Material.EMERALD_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), emerald); b.setType(Material.BEDROCK); p.setExp(0.3F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.EMERALD); } }, 400); } }
Нет все норм я его использую просто учусь)Я для кого плагин на шахту делал?
Смотри я импортировал с WorldGuard 4 параметраСоздаешь регион ворлдагуарла, под названием, mine, для примера. Помещаешь в этот рг угольную руду.
Далее, делаешь вот так:
PHP:@EventHandler public void Break(BlockBreakEvent e) { Player p = e.getPlayer(); Block b = e.getBlock(); Material ore = b.getType(); RegionManager rgm = plugin.wg.getRegionManager(p.getWorld()); ApplicableRegionSet ars = rgm.getApplicableRegions(p.getLocation()); ars.getRegions(); boolean isRightRegion = false; for (ProtectedRegion prg : ars){ if (prg.getId().equalsIgnoreCase("mine")) { isRightRegion = true; } } if(!isRightRegion) { return; } if(ore == Material.COAL_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), coal); b.setType(Material.BEDROCK); p.setExp(0.1F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.COAL_ORE); } }, 140); } if(ore == Material.IRON_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), iron_ingot); b.setType(Material.BEDROCK); p.setExp(0.15F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.IRON_ORE); } }, 200); } if(ore == Material.GOLD_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), gold_ingot); b.setType(Material.BEDROCK); p.setExp(0.2F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.GOLD_INGOT); } }, 260); } if(ore == Material.DIAMOND_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), diamond); b.setType(Material.BEDROCK); p.setExp(0.25F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.DIAMOND); } }, 340); } if(ore == Material.EMERALD_ORE) { e.setCancelled(true); b.getLocation().add(0.5, 0.5, 0.5).getWorld().dropItemNaturally(b.getLocation(), emerald); b.setType(Material.BEDROCK); p.setExp(0.3F); Bukkit.getServer().getScheduler().runTaskLater(plugin, new Runnable() { @Override public void run() { b.setType(Material.EMERALD); } }, 400); } }