Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package io.github.densyakun.bukkit.minecity;
- import java.util.LinkedList;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.craftbukkit.v1_8_R3.CraftWorld;
- import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
- import org.bukkit.entity.Player;
- import org.bukkit.plugin.java.JavaPlugin;
- import net.minecraft.server.v1_8_R3.StructurePiece;
- import net.minecraft.server.v1_8_R3.WorldGenVillage.WorldGenVillageStart;
- public class Main extends JavaPlugin {
- @Override
- public void onEnable() {
- }
- @Override
- public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
- if (sender instanceof Player) {
- CraftPlayer p = (CraftPlayer) sender;
- CraftWorld w = (CraftWorld) p.getWorld();
- /*PersistentVillage pb = w.getHandle().ae();
- pb.getClosestVillage(p.getHandle().bx, 0);
- List<Village> villages = pb.getVillages();
- String v_str = "";
- for (int a = 0; a < villages.size(); a++) {
- if (a != 0) {
- v_str += ", ";
- }
- BlockPosition bp = villages.get(a).a();
- v_str += "{" + bp.getX() + ", " + bp.getY() + ", " + bp.getZ() + "}";
- }
- sender.sendMessage("villages: " + v_str);*/
- /*
- WorldGenVillage wgv = new WorldGenVillage();
- BlockPosition pos = new BlockPosition(p.getHandle());
- sender.sendMessage("a: " + wgv.a(w.getHandle(), pos)); //村の敷地内か
- sender.sendMessage("b: " + wgv.b(pos)); //村の建造物の範囲内か
- sender.sendMessage("getNearestGeneratedFeature: " + wgv.getNearestGeneratedFeature(w.getHandle(), pos)); //一番近い村の井戸
- */
- try {
- int i = Integer.valueOf(args[0]);
- int j = Integer.valueOf(args[1]);
- int k = Integer.valueOf(args[2]);
- WorldGenVillageStart vs = new WorldGenVillageStart(w.getHandle(), w.getHandle().random, i, j, k);
- //sender.sendMessage("a: " + vs.a()); //井戸の範囲
- LinkedList<StructurePiece> b = vs.b();
- String str_a = "";
- String str_b = "";
- String str_c = "";
- String str_d = "";
- for (int n = 0; n < b.size(); n++) {
- if (n != 0) {
- str_a += ", ";
- str_b += ", ";
- str_c += ", ";
- str_d += ", ";
- }
- StructurePiece s = b.get(n);
- str_a += s.a();
- str_b += s.b();
- str_c += s.c();
- str_d += s.d();
- }
- sender.sendMessage("b.a: " + str_a);
- sender.sendMessage("b.b: " + str_b);
- sender.sendMessage("b.c: " + str_c);
- sender.sendMessage("b.d: " + str_d);
- sender.sendMessage("d: " + vs.d());
- //sender.sendMessage("e: " + vs.e()); //ChunkXを返す
- //sender.sendMessage("f: " + vs.f()); //ChunkZを返す
- } catch (ArrayIndexOutOfBoundsException | NumberFormatException e) {
- sender.sendMessage("/" + label + "ChunkX, ChunkZ, Y");
- }
- }
- return true;
- }
- @Override
- public void onDisable() {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement