From d881574a5a8a39199db4610ec42cf0ac44afbed5 Mon Sep 17 00:00:00 2001 From: zhangyuheng Date: Wed, 8 May 2024 00:46:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=95=B4=E6=95=B0=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E3=80=81=E8=AE=BE=E7=BD=AETUI=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dominion/utils/STUI/IntegerChanger.java | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/main/java/cn/lunadeer/dominion/utils/STUI/IntegerChanger.java diff --git a/src/main/java/cn/lunadeer/dominion/utils/STUI/IntegerChanger.java b/src/main/java/cn/lunadeer/dominion/utils/STUI/IntegerChanger.java new file mode 100644 index 0000000..d29a839 --- /dev/null +++ b/src/main/java/cn/lunadeer/dominion/utils/STUI/IntegerChanger.java @@ -0,0 +1,61 @@ +package cn.lunadeer.dominion.utils.STUI; + +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.TextComponent; +import net.kyori.adventure.text.event.ClickEvent; + +public class IntegerChanger { + + private final Integer value; + private final String changeCommand; + private Integer pageNumber; + + private IntegerChanger(Integer value, String changeCommand) { + this.value = value; + this.changeCommand = changeCommand; + } + + public void setPageNumber(Integer pageNumber) { + this.pageNumber = pageNumber; + } + + public static IntegerChanger create(Integer value, String changeCommand) { + return new IntegerChanger(value, changeCommand); + } + + public TextComponent build() { + TextComponent plus = Component.text("+").clickEvent( + ClickEvent.clickEvent( + ClickEvent.Action.RUN_COMMAND, + changeCommand + " " + (value + 1) + (pageNumber == null ? "" : " " + pageNumber) + ) + ).hoverEvent( + Component.text("增加1").asHoverEvent() + ).color(ViewStyles.action_color); + TextComponent minus = Component.text("-").clickEvent( + ClickEvent.clickEvent( + ClickEvent.Action.RUN_COMMAND, + changeCommand + " " + (value - 1) + (pageNumber == null ? "" : " " + pageNumber) + ) + ).hoverEvent( + Component.text("减少1").asHoverEvent() + ).color(ViewStyles.action_color); + TextComponent plus10 = Component.text(">>").clickEvent( + ClickEvent.clickEvent( + ClickEvent.Action.RUN_COMMAND, + changeCommand + " " + (value + 10) + (pageNumber == null ? "" : " " + pageNumber) + ) + ).hoverEvent( + Component.text("增加10").asHoverEvent() + ).color(ViewStyles.action_color); + TextComponent minus10 = Component.text("<<").clickEvent( + ClickEvent.clickEvent( + ClickEvent.Action.RUN_COMMAND, + changeCommand + " " + (value - 10) + (pageNumber == null ? "" : " " + pageNumber) + ) + ).hoverEvent( + Component.text("减少10").asHoverEvent() + ).color(ViewStyles.action_color); + return Component.text().append(minus).append(minus10).append(Component.text(value.toString())).append(plus10).append(plus).build(); + } +}