diff --git a/src/com/alphaae/mcpe/servers/event/FormRespondedEvent.java b/src/com/alphaae/mcpe/servers/event/FormRespondedEvent.java index 47b582b..d665304 100644 --- a/src/com/alphaae/mcpe/servers/event/FormRespondedEvent.java +++ b/src/com/alphaae/mcpe/servers/event/FormRespondedEvent.java @@ -6,15 +6,20 @@ import cn.nukkit.event.EventPriority; import cn.nukkit.event.Listener; import cn.nukkit.event.player.PlayerFormRespondedEvent; import cn.nukkit.form.window.FormWindow; +import com.alphaae.mcpe.servers.form.FormWindowMeun; +import com.alphaae.mcpe.servers.form.FormWindowOtherPlayer; public class FormRespondedEvent implements Listener { //窗口返回事件 @EventHandler(ignoreCancelled = true, priority = EventPriority.NORMAL) public void onPlayerFormResponded(PlayerFormRespondedEvent event) { - Player player = event.getPlayer(); FormWindow window = event.getWindow(); - + if (event.getResponse() == null) return; + if (window instanceof FormWindowMeun) + ((FormWindowMeun) window).RespondedEvent(event); + else if (window instanceof FormWindowOtherPlayer) + ((FormWindowOtherPlayer) window).RespondedEvent(event); } diff --git a/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java b/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java index a49d6a0..21531a8 100644 --- a/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java +++ b/src/com/alphaae/mcpe/servers/form/FormWindowMeun.java @@ -1,10 +1,12 @@ 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.FormWindow; +import cn.nukkit.form.window.FormWindowSimple; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.StaticData; import com.alphaae.mcpe.servers.model.RePlayer; @@ -13,80 +15,48 @@ import com.google.gson.Gson; import java.util.ArrayList; import java.util.List; -public class FormWindowMeun extends FormWindow { - private final String type = "form"; - private String title; - private String content; - private List buttons; - private FormResponseSimple response; +public class FormWindowMeun extends FormWindowSimple { public FormWindowMeun(Player player) { + super("我", ""); + createContents(player); + createButtons(); + } + + private void createContents(Player player) { String name = player.getName(); RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); - - this.title = "我"; - this.buttons = new ArrayList(); - this.content = TextFormat.colorize("&b" + name + "&f\n" + + String content = TextFormat.colorize("&b" + name + "&f\n" + "---------------------------------\n" + "称号: " + rePlayer.getTitle() + "\n" + "硬币: " + rePlayer.getCoin() + "\n" + "---------------------------------\n" + ""); - - buttons.add(new ElementButton("传送", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/ender_pearl.png"))); - buttons.add(new ElementButton("任务", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/book_writable.png"))); - buttons.add(new ElementButton("升级", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/iron_pickaxe.png"))); - + setContent(content); } - public String getTitle() { - return this.title; + private void createButtons() { + 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"))); } - public void setTitle(String title) { - this.title = title; - } - - public String getContent() { - return this.content; - } - - public void setContent(String content) { - this.content = content; - } - - public List getButtons() { - return this.buttons; - } - - public void addButton(ElementButton button) { - this.buttons.add(button); - } - - public String getJSONData() { - return (new Gson()).toJson(this); - } - - public FormResponseSimple getResponse() { - return this.response; - } - - public void setResponse(String data) { - if (data.equals("null")) { - this.closed = true; - } else { - int buttonID; - try { - buttonID = Integer.parseInt(data); - } catch (Exception var4) { - return; - } - - if (buttonID >= this.buttons.size()) { - this.response = new FormResponseSimple(buttonID, (ElementButton) null); - } else { - this.response = new FormResponseSimple(buttonID, (ElementButton) this.buttons.get(buttonID)); + public void RespondedEvent(PlayerFormRespondedEvent event) { + String clickedText = ((FormResponseSimple) event.getResponse()).getClickedButton().getText(); + Player player = event.getPlayer(); + if (!event.wasClosed()) { + switch (clickedText){ + case "传送": + player.sendMessage("传送"); + break; + case "任务": + player.sendMessage("任务"); + break; + case "升级": + player.sendMessage("升级"); + break; } } } + } diff --git a/src/com/alphaae/mcpe/servers/form/FormWindowOtherPlayer.java b/src/com/alphaae/mcpe/servers/form/FormWindowOtherPlayer.java index da58eac..3ab2327 100644 --- a/src/com/alphaae/mcpe/servers/form/FormWindowOtherPlayer.java +++ b/src/com/alphaae/mcpe/servers/form/FormWindowOtherPlayer.java @@ -1,10 +1,12 @@ 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.FormWindow; +import cn.nukkit.form.window.FormWindowSimple; import cn.nukkit.utils.TextFormat; import com.alphaae.mcpe.servers.StaticData; import com.alphaae.mcpe.servers.model.RePlayer; @@ -13,79 +15,38 @@ import com.google.gson.Gson; import java.util.ArrayList; import java.util.List; -public class FormWindowOtherPlayer extends FormWindow { - private final String type = "form"; - private String title; - private String content; - private List buttons; - private FormResponseSimple response; +public class FormWindowOtherPlayer extends FormWindowSimple { public FormWindowOtherPlayer(Player player, Player player2) { -// String name = player.getName(); -// RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); + super("", ""); + createContents(player, player2); + createButtons(); + } + + private void createContents(Player player, Player player2) { + String name = player.getName(); + RePlayer rePlayer = StaticData.rePlayerMap.get(player.getUniqueId()); String name2 = player2.getName(); RePlayer rePlayer2 = StaticData.rePlayerMap.get(player2.getUniqueId()); - - this.title = "玩家:" + name2; - this.buttons = new ArrayList(); - this.content = TextFormat.colorize("&b" + name2 + "&f\n" + + String content = TextFormat.colorize("&b" + name2 + "&f\n" + "---------------------------------\n" + "称号: " + rePlayer2.getTitle() + "\n" + "---------------------------------\n" + ""); - - buttons.add(new ElementButton("组队", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/iron_helmet.png"))); - buttons.add(new ElementButton("交易", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/emerald.png"))); + setTitle("玩家:" + name2); + setContent(content); } - public String getTitle() { - return this.title; + private void createButtons() { + addButton(new ElementButton("组队", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/iron_helmet.png"))); + addButton(new ElementButton("交易", new ElementButtonImageData(ElementButtonImageData.IMAGE_DATA_TYPE_PATH, "textures/items/emerald.png"))); + } - public void setTitle(String title) { - this.title = title; + public void RespondedEvent(PlayerFormRespondedEvent event) { + String clickedText = ((FormResponseSimple) event.getResponse()).getClickedButton().getText(); + Player player = event.getPlayer(); + } - public String getContent() { - return this.content; - } - - public void setContent(String content) { - this.content = content; - } - - public List getButtons() { - return this.buttons; - } - - public void addButton(ElementButton button) { - this.buttons.add(button); - } - - public String getJSONData() { - return (new Gson()).toJson(this); - } - - public FormResponseSimple getResponse() { - return this.response; - } - - public void setResponse(String data) { - if (data.equals("null")) { - this.closed = true; - } else { - int buttonID; - try { - buttonID = Integer.parseInt(data); - } catch (Exception var4) { - return; - } - - if (buttonID >= this.buttons.size()) { - this.response = new FormResponseSimple(buttonID, (ElementButton) null); - } else { - this.response = new FormResponseSimple(buttonID, (ElementButton) this.buttons.get(buttonID)); - } - } - } }