From 98795519684ad8ab3b94aced66bc9f2ef22dc45a Mon Sep 17 00:00:00 2001 From: AlphaAE Date: Wed, 15 May 2019 23:03:16 +0800 Subject: [PATCH] fix bug --- .../mcpe/servers/command/HiCommand.java | 38 ++++++++++++++----- .../servers/event/PlayerInteractSetEvent.java | 21 ++++++++++ 2 files changed, 50 insertions(+), 9 deletions(-) diff --git a/src/com/alphaae/mcpe/servers/command/HiCommand.java b/src/com/alphaae/mcpe/servers/command/HiCommand.java index 90928ac..7b73998 100644 --- a/src/com/alphaae/mcpe/servers/command/HiCommand.java +++ b/src/com/alphaae/mcpe/servers/command/HiCommand.java @@ -3,13 +3,13 @@ package com.alphaae.mcpe.servers.command; import cn.nukkit.Player; import cn.nukkit.command.Command; import cn.nukkit.command.CommandSender; -import cn.nukkit.item.Item; +import cn.nukkit.level.Position; +import cn.nukkit.nbt.tag.CompoundTag; +import cn.nukkit.nbt.tag.DoubleTag; +import cn.nukkit.nbt.tag.FloatTag; +import cn.nukkit.nbt.tag.ListTag; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.MainPlugin; -import com.alphaae.mcpe.servers.StaticData; -import com.alphaae.mcpe.servers.model.RePlayer; -import com.alphaae.mcpe.servers.model.UserLocation; -import com.alphaae.mcpe.servers.utils.ChangePlayerCoinUtils; import java.util.UUID; @@ -29,12 +29,32 @@ public class HiCommand extends Command { return false; } - if (commandSender.isPlayer()) { - Player player = commandSender.getServer().getPlayer(commandSender.getName()); + if (commandSender instanceof Player) { + Player player = (Player) commandSender; UUID uuid = player.getUniqueId(); //测试指令 - RePlayer rePlayer = StaticData.rePlayerMap.get(uuid); - ChangePlayerCoinUtils.ReduceIcon(rePlayer, 100); +// RePlayer rePlayer = StaticData.rePlayerMap.get(uuid); +// ChangePlayerCoinUtils.ReduceIcon(rePlayer, 100); + CompoundTag compoundTag = new CompoundTag(); + compoundTag.putList(new ListTag("Pos").add(new DoubleTag("", 0)).add(new DoubleTag("", 0)).add(new DoubleTag("", 0))); + compoundTag.putList(new ListTag("Motion").add(new DoubleTag("", 0)).add(new DoubleTag("", 0)).add(new DoubleTag("", 0))); + compoundTag.putList(new ListTag("Rotation").add(new FloatTag("", 0)).add(new FloatTag("", 0))); + + Position position = player.getPosition(); + + player.sendMessage("" + player.getLevel().getSpawnLocation() + " " + player.getLevel().getSafeSpawn()); + +// MainPlugin.getPlugin().getServer().getScheduler().scheduleDelayedRepeatingTask(MainPlugin.getPlugin(), () -> { +// try { +// EntityLightning sd = new EntityLightning(player.getChunk(), compoundTag); +// sd.setPosition(position); +// sd.spawnToAll(); +// +// } catch (Exception e) { +// e.printStackTrace(); +// } +// }, 0, 10); + return true; } return false; diff --git a/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java b/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java index 55e436d..760fed1 100644 --- a/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java +++ b/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java @@ -6,10 +6,12 @@ import cn.nukkit.entity.Entity; import cn.nukkit.event.EventHandler; import cn.nukkit.event.EventPriority; import cn.nukkit.event.Listener; +import cn.nukkit.event.player.PlayerChatEvent; import cn.nukkit.event.player.PlayerInteractEntityEvent; import cn.nukkit.event.player.PlayerInteractEvent; import cn.nukkit.event.player.PlayerItemHeldEvent; import cn.nukkit.item.Item; +import cn.nukkit.level.Position; import cn.nukkit.plugin.Plugin; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.MainPlugin; @@ -69,5 +71,24 @@ public class PlayerInteractSetEvent implements Listener { } } + //测试事件 + @EventHandler(ignoreCancelled = true, priority = EventPriority.NORMAL) + public void onPlayerChat(PlayerChatEvent event) { + final Player player = event.getPlayer(); + if (player instanceof Player) { + Position position = player.getPosition(); + String msg = event.getMessage(); + if (msg.equals("发送坐标")) { + StringBuilder showText = new StringBuilder() + .append("[坐标] : 我在 ").append(player.getLevel().getName()).append("世界的") + .append(" x: ").append(position.getX()) + .append(" y: ").append(position.getY()) + .append(" z: ").append(position.getZ()) + .append(" 坐标"); + player.sendMessage(showText.toString()); + } + } + } + }