Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Помогите портировать плагин на WG 6.0.3

Статус
Закрыто для дальнейших ответов.

maksim182003

Активный участник
Пользователь
Баллы
78
Имя в Minecraft
maksim182003
Вот код:
  1. package k773;

  2. import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
  3. import com.sk89q.worldguard.protection.ApplicableRegionSet;
  4. import com.sk89q.worldguard.protection.regions.ProtectedRegion;
  5. import java.io.ByteArrayOutputStream;
  6. import java.io.DataOutputStream;
  7. import java.io.IOException;
  8. import java.util.Iterator;
  9. import java.util.logging.Level;
  10. import java.util.logging.Logger;
  11. import org.bukkit.Bukkit;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.event.Listener;
  14. import org.bukkit.plugin.java.JavaPlugin;

  15. public class WGEnter extends JavaPlugin implements Listener
  16. {
  17. private static final WorldGuardPlugin wg = (WorldGuardPlugin) Bukkit.getPluginManager().getPlugin("WorldGuard");

  18. @Override
  19. public void onEnable()
  20. {
  21. Bukkit.getMessenger().registerOutgoingPluginChannel(this, "wg_enter");
  22. this.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable()
  23. {
  24. @Override
  25. public void run()
  26. {
  27. try
  28. {
  29. for (Player player : getServer().getOnlinePlayers())
  30. {
  31. ApplicableRegionSet set = WGEnter.wg.getRegionManager(player.getWorld()).getApplicableRegions(player.getLocation());
  32. String regionName = "GLOBAL";
  33. boolean canBuild = true;
  34. if (set.size() > 0)
  35. {
  36. Iterator iter = set.iterator();
  37. if (iter.hasNext())
  38. {
  39. ProtectedRegion region = (ProtectedRegion) iter.next();

  40. regionName = region.getId();
  41. canBuild = wg.canBuild(player, player.getLocation());
  42. }
  43. }
  44. ByteArrayOutputStream bos = new ByteArrayOutputStream();
  45. DataOutputStream dos = new DataOutputStream(bos);
  46. dos.writeUTF(regionName);
  47. dos.writeBoolean(canBuild);
  48. player.sendPluginMessage(WGEnter.this, "wg_enter", bos.toByteArray());
  49. }
  50. }
  51. catch (IOException ex)
  52. {
  53. Logger.getLogger(WGEnter.class.getName()).log(Level.SEVERE, null, ex);
  54. }
  55. }
  56. }, 20, 20);
  57. }
  58. }
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх