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