- Баллы
- 21
- Имя в Minecraft
- xChupa
Крч. У меня есть две команды: pos1 и pos2. Они записывают в конфиг файл координаты игрока.
Я хотел чтобы когда игрок наступает на координаты pos2, то его телепортирует на координаты pos1.
Вот что я наскреб:
сам хандлер
одна из команд, тк вторая почти такая же:
Ну и вот сама консоль (она флудит этим, когда я двигаюсь):
Я хотел чтобы когда игрок наступает на координаты pos2, то его телепортирует на координаты pos1.
Вот что я наскреб:
сам хандлер
public class ChupaHandler implements Listener {
private ChupaPark plugin;
public ChupaHandler(ChupaPark plugin) {
this.plugin = plugin;
}
@EventHandler
public void onFallMove(PlayerMoveEvent e) {
File config = new File(plugin.getDataFolder() + File.separator + "config.yml");
FileConfiguration file = YamlConfiguration.loadConfiguration(config);
int x = file.getInt("pos2.x");
int y = file.getInt("pos2.y");
int z = file.getInt("pos2.z");
World w = Bukkit.getServer().getWorld(plugin.getConfig().getString("pos1.world"));
int x2 = file.getInt("pos1.x");
int y2 = file.getInt("pos1.y");
int z2 = file.getInt("pos1.z");
Player p = e.getPlayer();
if(p.getLocation().getX() == x) return;
if(p.getLocation().getY() == y) return;
if(p.getLocation().getZ() == z) return;
p.teleport(new Location(w, x2, y2, z2));
}
}
private ChupaPark plugin;
public ChupaHandler(ChupaPark plugin) {
this.plugin = plugin;
}
@EventHandler
public void onFallMove(PlayerMoveEvent e) {
File config = new File(plugin.getDataFolder() + File.separator + "config.yml");
FileConfiguration file = YamlConfiguration.loadConfiguration(config);
int x = file.getInt("pos2.x");
int y = file.getInt("pos2.y");
int z = file.getInt("pos2.z");
World w = Bukkit.getServer().getWorld(plugin.getConfig().getString("pos1.world"));
int x2 = file.getInt("pos1.x");
int y2 = file.getInt("pos1.y");
int z2 = file.getInt("pos1.z");
Player p = e.getPlayer();
if(p.getLocation().getX() == x) return;
if(p.getLocation().getY() == y) return;
if(p.getLocation().getZ() == z) return;
p.teleport(new Location(w, x2, y2, z2));
}
}
private ChupaPark plugin;
public Commandpos1(ChupaPark plugin) {
this.plugin = plugin;
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
Player p = (Player) sender;
File config = new File(plugin.getDataFolder() + File.separator + "config.yml");
FileConfiguration pos = YamlConfiguration.loadConfiguration(config);
pos.set("pos1", p.getLocation());
try {
pos.save(config);
} catch (IOException e1) {
e1.printStackTrace();
}
p.sendMessage("Координаты начала записаны.");
return true;
}
}
public Commandpos1(ChupaPark plugin) {
this.plugin = plugin;
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
Player p = (Player) sender;
File config = new File(plugin.getDataFolder() + File.separator + "config.yml");
FileConfiguration pos = YamlConfiguration.loadConfiguration(config);
pos.set("pos1", p.getLocation());
try {
pos.save(config);
} catch (IOException e1) {
e1.printStackTrace();
}
p.sendMessage("Координаты начала записаны.");
return true;
}
}
[19:24:40] [Server thread/ERROR]: Could not pass event PlayerMoveEvent to ChupaPark v1.0
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:499) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:933) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PacketPlayInFlying.a(SourceFile:126) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PacketPlayInFlying$PacketPlayInPosition.a(SourceFile:57) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PlayerConnectionUtils.a(SourceFile:10) ~[server.jar:git-Bukkit-a4c555b]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:?]
at java.util.concurrent.FutureTask.run(Unknown Source) [?:?]
at net.minecraft.server.v1_13_R2.SystemUtils.a(SourceFile:199) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:843) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:382) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:796) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:699) [server.jar:git-Bukkit-a4c555b]
at java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.lang.IllegalArgumentException: Name cannot be null
at org.apache.commons.lang.Validate.notNull(Validate.java:192) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.craftbukkit.v1_13_R2.CraftServer.getWorld(CraftServer.java:1041) ~[server.jar:git-Bukkit-a4c555b]
at chupapark.main.ChupaHandler.onFallMove(ChupaHandler.java:30) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[server.jar:git-Bukkit-a4c555b]
... 15 more
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:499) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:933) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PacketPlayInFlying.a(SourceFile:126) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PacketPlayInFlying$PacketPlayInPosition.a(SourceFile:57) ~[server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.PlayerConnectionUtils.a(SourceFile:10) ~[server.jar:git-Bukkit-a4c555b]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:?]
at java.util.concurrent.FutureTask.run(Unknown Source) [?:?]
at net.minecraft.server.v1_13_R2.SystemUtils.a(SourceFile:199) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:843) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:382) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:796) [server.jar:git-Bukkit-a4c555b]
at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:699) [server.jar:git-Bukkit-a4c555b]
at java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.lang.IllegalArgumentException: Name cannot be null
at org.apache.commons.lang.Validate.notNull(Validate.java:192) ~[server.jar:git-Bukkit-a4c555b]
at org.bukkit.craftbukkit.v1_13_R2.CraftServer.getWorld(CraftServer.java:1041) ~[server.jar:git-Bukkit-a4c555b]
at chupapark.main.ChupaHandler.onFallMove(ChupaHandler.java:30) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[server.jar:git-Bukkit-a4c555b]
... 15 more