diff --git a/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java b/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java index 9c6fee0..55e436d 100644 --- a/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java +++ b/src/com/alphaae/mcpe/servers/event/PlayerInteractSetEvent.java @@ -10,6 +10,7 @@ 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.plugin.Plugin; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.MainPlugin; import com.alphaae.mcpe.servers.form.FormWindowMeun; @@ -34,9 +35,10 @@ public class PlayerInteractSetEvent implements Listener { //玩家手持物品事件 @EventHandler(ignoreCancelled = true, priority = EventPriority.NORMAL) public void onPlayerItemHeld(PlayerItemHeldEvent event) { + Plugin plugin = MainPlugin.getPlugin(); Player player = event.getPlayer(); Item item = event.getItem(); - int slot = event.getSlot(); + final int slot = event.getSlot(); if (player != null && item != null) { if (item.getId() == 347) { if (slot != 0) { @@ -44,8 +46,8 @@ public class PlayerInteractSetEvent implements Listener { } else { player.getInventory().setHeldItemSlot(1); } - FormWindowMeun form = new FormWindowMeun(player); - player.showFormWindow(form); + FormWindowMeun formWindowMeun = new FormWindowMeun(player); + player.showFormWindow(formWindowMeun); } } } diff --git a/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java b/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java index 7742d35..9dd65f0 100644 --- a/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java +++ b/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java @@ -5,28 +5,24 @@ import cn.nukkit.event.player.PlayerFormRespondedEvent; import cn.nukkit.form.element.ElementButton; import cn.nukkit.form.element.ElementButtonImageData; import cn.nukkit.form.response.FormResponseSimple; -import cn.nukkit.form.window.FormWindow; import cn.nukkit.form.window.FormWindowSimple; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.StaticData; import com.alphaae.mcpe.servers.event.block.form.FormEvent; import com.alphaae.mcpe.servers.model.RePlayer; -import com.google.gson.Gson; - -import java.util.ArrayList; -import java.util.List; +import com.sun.istack.internal.NotNull; public class FormWindowMeun extends FormWindowSimple implements FormEvent { - public FormWindowMeun(Player player) { + public FormWindowMeun(@NotNull Player player) { super("我", ""); - createContents(player); - createButtons(); + RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); + createContents(player, rePlayer); + createButtons(player, rePlayer); } - private void createContents(Player player) { + private void createContents(Player player, RePlayer rePlayer) { String name = player.getName(); - RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); String content = TextFormat.colorize("&b" + name + "&f\n" + "---------------------------------\n" + "称号: " + rePlayer.getTitle() + "\n" + @@ -36,19 +32,21 @@ public class FormWindowMeun extends FormWindowSimple implements FormEvent { setContent(content); } - private void createButtons() { + private void createButtons(Player player, RePlayer rePlayer) { addButton(new ElementButton("传送", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/ender_pearl.png"))); addButton(new ElementButton("任务", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/book_writable.png"))); addButton(new ElementButton("升级", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/iron_pickaxe.png"))); } + @Override public void RespondedEvent(PlayerFormRespondedEvent event) { String clickedText = ((FormResponseSimple) event.getResponse()).getClickedButton().getText(); Player player = event.getPlayer(); if (!event.wasClosed()) { switch (clickedText) { case "传送": - player.sendMessage("传送"); + FormWindowTeleport formWindowTeleport = new FormWindowTeleport(player); + player.showFormWindow(formWindowTeleport); break; case "任务": player.sendMessage("任务"); diff --git a/src/com/alphaae/mcpe/servers/form/FormWindowTeleport.java b/src/com/alphaae/mcpe/servers/form/FormWindowTeleport.java new file mode 100644 index 0000000..6684bb9 --- /dev/null +++ b/src/com/alphaae/mcpe/servers/form/FormWindowTeleport.java @@ -0,0 +1,49 @@ +package com.alphaae.mcpe.servers.form; + +import cn.nukkit.Player; +import cn.nukkit.event.player.PlayerFormRespondedEvent; +import cn.nukkit.form.element.ElementButton; +import cn.nukkit.form.element.ElementButtonImageData; +import cn.nukkit.form.response.FormResponseSimple; +import cn.nukkit.form.window.FormWindowSimple; +import cn.nukkit.utils.TextFormat; +import com.alphaae.mcpe.servers.StaticData; +import com.alphaae.mcpe.servers.event.block.form.FormEvent; +import com.alphaae.mcpe.servers.model.RePlayer; +import com.sun.istack.internal.NotNull; + +public class FormWindowTeleport extends FormWindowSimple implements FormEvent { + + public FormWindowTeleport(@NotNull Player player) { + super("传送地点", ""); + RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); + createContents(player, rePlayer); + createButtons(player, rePlayer); + } + + private void createContents(Player player, RePlayer rePlayer) { + } + + private void createButtons(Player player, RePlayer rePlayer) { + addButton(new ElementButton("返回")); + addButton(new ElementButton("上次死亡地点")); + addButton(new ElementButton("")); + } + + public void RespondedEvent(PlayerFormRespondedEvent event) { + String clickedText = ((FormResponseSimple) event.getResponse()).getClickedButton().getText(); + Player player = event.getPlayer(); + if (!event.wasClosed()) { + switch (clickedText) { + case "返回": + FormWindowMeun formWindowMeun = new FormWindowMeun(player); + player.showFormWindow(formWindowMeun); + break; + case "上次死亡地点": + player.sendMessage("传送"); + break; + } + } + } + +}