Skip to content

Commit 9616a47

Browse files
committed
feat: add "Click to view" buttons
1 parent 944501b commit 9616a47

5 files changed

Lines changed: 40 additions & 33 deletions

File tree

type.bedwarsgame/src/main/java/net/swofty/type/bedwarsgame/BedWarsGameScoreboard.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,8 @@ public static void start(Game game) {
6666
addLine("§fVersion: §7v1.9", sidebar);
6767
} else {
6868
String eventName = game.getEventManager().getNextEvent() != null
69-
? game.getEventManager().getNextEvent().getDisplayName()
70-
: game.getEventManager().getCurrentEvent().getDisplayName();
69+
? game.getEventManager().getNextEvent().getDisplayName()
70+
: game.getEventManager().getCurrentEvent().getDisplayName();
7171
long seconds = game.getEventManager().getSecondsUntilNextEvent();
7272
long minutesPart = seconds / 60;
7373
long secondsPart = seconds % 60;
@@ -91,7 +91,7 @@ public static void start(Game game) {
9191

9292
sidebarCache.put(player.getUuid(), sidebar);
9393
}
94-
return TaskSchedule.tick(2);
94+
return TaskSchedule.tick(5);
9595
});
9696
}
9797

type.bedwarsgame/src/main/java/net/swofty/type/bedwarsgame/TypeBedWarsGameLoader.java

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import net.minestom.server.timer.TaskSchedule;
1818
import net.minestom.server.utils.time.TimeUnit;
1919
import net.minestom.server.world.DimensionType;
20+
import net.swofty.commons.BedwarsGameType;
2021
import net.swofty.commons.CustomWorlds;
2122
import net.swofty.commons.ServerType;
2223
import net.swofty.commons.ServiceType;
@@ -34,7 +35,6 @@
3435
import net.swofty.type.bedwarsgame.shop.TeamShopManager;
3536
import net.swofty.type.bedwarsgame.shop.TrapManager;
3637
import net.swofty.type.bedwarsgame.user.BedWarsPlayer;
37-
import net.swofty.commons.BedwarsGameType;
3838
import net.swofty.type.bedwarsgeneric.game.MapsConfig;
3939
import net.swofty.type.bedwarsgeneric.item.BedWarsItem;
4040
import net.swofty.type.bedwarsgeneric.item.BedWarsItemHandler;
@@ -47,7 +47,6 @@
4747
import net.swofty.type.generic.entity.villager.HypixelVillagerNPC;
4848
import net.swofty.type.generic.event.HypixelEventClass;
4949
import net.swofty.type.generic.redis.RedisOriginServer;
50-
import net.swofty.type.generic.redis.service.RedisGameMessage;
5150
import net.swofty.type.generic.tab.EmptyTabModule;
5251
import net.swofty.type.generic.tab.TablistManager;
5352
import net.swofty.type.generic.tab.TablistModule;
@@ -61,7 +60,6 @@
6160
import java.nio.charset.StandardCharsets;
6261
import java.nio.file.Files;
6362
import java.nio.file.Path;
64-
import java.time.Duration;
6563
import java.util.ArrayList;
6664
import java.util.Collection;
6765
import java.util.List;
@@ -141,6 +139,19 @@ private static synchronized MapsConfig.MapEntry nextMapEntry() {
141139
return filteredMaps.get(nextMapIndex++);
142140
}
143141

142+
private static Component header() {
143+
return MiniMessage.miniMessage().deserialize("<aqua>You are playing on <bold><yellow>MC.HYPIXEL.NET</yellow></bold>");
144+
}
145+
146+
private static Component footer(HypixelPlayer player) {
147+
Component start = Component.empty();
148+
if (TypeBedWarsGameLoader.getPlayerGame(player) != null) {
149+
start = start.append(MiniMessage.miniMessage().deserialize("<aqua>Kills: <yellow>0 <aqua>Final Kills: <yellow>0 <aqua>Beds Broken: <yellow>0")).appendNewline();
150+
}
151+
return start
152+
.append(Component.text("§aRanks, Boosters & MORE! §c§lSTORE.HYPIXEL.NET"));
153+
}
154+
144155
@Override
145156
public ServerType getType() {
146157
return ServerType.BEDWARS_GAME;
@@ -346,17 +357,4 @@ public List<ProxyToClient> getProxyRedisListeners() {
346357
return null;
347358
}
348359

349-
private static Component header() {
350-
return MiniMessage.miniMessage().deserialize("<aqua>You are playing on <bold><yellow>MC.HYPIXEL.NET</yellow></bold>");
351-
}
352-
353-
private static Component footer(HypixelPlayer player) {
354-
Component start = Component.empty();
355-
if (TypeBedWarsGameLoader.getPlayerGame(player) != null) {
356-
start = start.append(MiniMessage.miniMessage().deserialize("<aqua>Kills: <yellow>0 <aqua>Final Kills: <yellow>0 <aqua>Beds Broken: <yellow>0"));
357-
}
358-
return start
359-
.append(Component.text("§aRanks, Boosters & MORE! §c§lSTORE.HYPIXEL.NET"));
360-
}
361-
362360
}

type.bedwarsgame/src/main/java/net/swofty/type/bedwarsgame/events/ActionPlayerChat.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package net.swofty.type.bedwarsgame.events;
22

33
import net.minestom.server.event.player.PlayerChatEvent;
4-
import net.swofty.commons.StringUtility;
54
import net.swofty.type.bedwarsgame.TypeBedWarsGameLoader;
65
import net.swofty.type.bedwarsgame.game.Game;
76
import net.swofty.type.bedwarsgame.user.BedWarsPlayer;
@@ -64,9 +63,9 @@ public void run(PlayerChatEvent event) {
6463

6564
receivers.forEach(onlinePlayer -> {
6665
if (rank.equals(Rank.DEFAULT))
67-
onlinePlayer.sendMessage(levelPrefix + rank.getPrefix() + StringUtility.getTextFromComponent(player.getName()) + "§7: " + finalMessage);
66+
onlinePlayer.sendMessage(levelPrefix + rank.getPrefix() + player.getUsername() + "§7: " + finalMessage);
6867
else
69-
onlinePlayer.sendMessage(levelPrefix + rank.getPrefix() + StringUtility.getTextFromComponent(player.getName()) + "§f: " + finalMessage);
68+
onlinePlayer.sendMessage(levelPrefix + rank.getPrefix() + player.getUsername() + "§f: " + finalMessage);
7069
});
7170
}
7271
}

type.bedwarsgame/src/main/java/net/swofty/type/bedwarsgame/gui/GUIItemShop.java

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ public void onBottomClick(InventoryPreClickEvent e) {
9292

9393
private void updateGUI(HypixelPlayer p) {
9494
BedWarsPlayer player = (BedWarsPlayer) p;
95-
95+
9696
fill(ItemStackCreator.createNamedItemStack(Material.BLACK_STAINED_GLASS_PANE), 9, 17);
9797
set(currentPage + 9, ItemStackCreator.createNamedItemStack(Material.GREEN_STAINED_GLASS_PANE));
9898
set(new GUIClickableItem(0) {
@@ -105,7 +105,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
105105

106106
@Override
107107
public ItemStack.Builder getItem(HypixelPlayer player) {
108-
return QUICK_BUY.builder();
108+
return convertToClickToView(QUICK_BUY, currentPage, 0);
109109
}
110110
});
111111

@@ -119,7 +119,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
119119

120120
@Override
121121
public ItemStack.Builder getItem(HypixelPlayer player) {
122-
return BLOCKS.builder();
122+
return convertToClickToView(BLOCKS, currentPage, 1);
123123
}
124124
});
125125

@@ -133,7 +133,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
133133

134134
@Override
135135
public ItemStack.Builder getItem(HypixelPlayer player) {
136-
return WEAPONS.builder();
136+
return convertToClickToView(WEAPONS, currentPage, 2);
137137
}
138138
});
139139

@@ -147,7 +147,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
147147

148148
@Override
149149
public ItemStack.Builder getItem(HypixelPlayer player) {
150-
return ARMOR.builder();
150+
return convertToClickToView(ARMOR, currentPage, 3);
151151
}
152152
});
153153

@@ -161,7 +161,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
161161

162162
@Override
163163
public ItemStack.Builder getItem(HypixelPlayer player) {
164-
return TOOLS.builder();
164+
return convertToClickToView(TOOLS, currentPage, 4);
165165
}
166166
});
167167

@@ -175,7 +175,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
175175

176176
@Override
177177
public ItemStack.Builder getItem(HypixelPlayer player) {
178-
return BOWS.builder();
178+
return convertToClickToView(BOWS, currentPage, 5);
179179
}
180180
});
181181

@@ -189,7 +189,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
189189

190190
@Override
191191
public ItemStack.Builder getItem(HypixelPlayer player) {
192-
return POTIONS.builder();
192+
return convertToClickToView(POTIONS, currentPage, 6);
193193
}
194194
});
195195

@@ -203,7 +203,7 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
203203

204204
@Override
205205
public ItemStack.Builder getItem(HypixelPlayer player) {
206-
return UTILITY.builder();
206+
return convertToClickToView(UTILITY, currentPage, 7);
207207
}
208208
});
209209

@@ -217,14 +217,24 @@ public void run(InventoryPreClickEvent e, HypixelPlayer player) {
217217

218218
@Override
219219
public ItemStack.Builder getItem(HypixelPlayer player) {
220-
return ROTATING_ITEMS.builder();
220+
return convertToClickToView(ROTATING_ITEMS, currentPage, 8);
221221
}
222222
});
223223

224224
populateShopItems(player);
225225
updateItemStacks(getInventory(), getPlayer());
226226
}
227227

228+
private ItemStack.Builder convertToClickToView(ItemStack itemStack, int currentPage, int index) {
229+
ItemStack.Builder builder = itemStack.builder();
230+
231+
if (currentPage != index) {
232+
return builder.lore(noItalic(Component.text("Click to view!").color(NamedTextColor.YELLOW)));
233+
}
234+
235+
return builder;
236+
}
237+
228238
private void populateShopItems(BedWarsPlayer player) {
229239
int[] shopSlots = {
230240
19, 20, 21, 22, 23, 24, 25,

type.bedwarslobby/src/main/java/net/swofty/type/bedwarslobby/BedWarsLobbyScoreboard.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public static void start() {
8787

8888
sidebarCache.put(player.getUuid(), sidebar);
8989
}
90-
return TaskSchedule.tick(2);
90+
return TaskSchedule.tick(5);
9191
});
9292
}
9393

0 commit comments

Comments
 (0)