Skip to content

Commit ad60aa7

Browse files
authored
Merge pull request #765 from ArikSquad/fix/view-events
fix: view events
2 parents 0fcc325 + f26f347 commit ad60aa7

File tree

4 files changed

+24
-6
lines changed

4 files changed

+24
-6
lines changed

type.generic/src/main/java/net/swofty/type/generic/gui/v2/event/ActionInventoryClose.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ public void onPlayerInventoryClose(InventoryCloseEvent event) {
1515
HypixelPlayer player = (HypixelPlayer) event.getPlayer();
1616
ViewNavigator.find(player).ifPresent(navigator -> {
1717
ViewSession<?> session = navigator.getCurrentSession();
18+
if (session == null) {
19+
return;
20+
}
1821
if (event.getInventory() != session.inventory() || session.isSuppressCloseEvent()) {
1922
session.setSuppressCloseEvent(false);
2023
return;
@@ -23,4 +26,4 @@ public void onPlayerInventoryClose(InventoryCloseEvent event) {
2326
});
2427
}
2528

26-
}
29+
}

type.generic/src/main/java/net/swofty/type/generic/gui/v2/event/ActionInventoryOpen.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,23 @@
77
import net.swofty.type.generic.event.HypixelEventClass;
88
import net.swofty.type.generic.gui.v2.ViewNavigator;
99
import net.swofty.type.generic.user.HypixelPlayer;
10+
import org.tinylog.Logger;
1011

1112
public class ActionInventoryOpen implements HypixelEventClass {
1213

1314
@HypixelEvent(node = EventNodes.INVENTORY, requireDataLoaded = false)
1415
public void onPlayerInventoryOpen(InventoryOpenEvent event) {
1516
MinecraftServer.getSchedulerManager().scheduleNextTick(() -> {
1617
HypixelPlayer player = (HypixelPlayer) event.getPlayer();
17-
ViewNavigator.find(player).ifPresent(navigator -> navigator.getCurrentSession().onOpenEvent(event));
18+
ViewNavigator.find(player).ifPresent(navigator -> {
19+
if (navigator.getCurrentSession() == null) {
20+
Logger.warn("Current session is null for player {} when opening inventory, this should not happen.", player.getUsername());
21+
return;
22+
}
23+
navigator.getCurrentSession().onOpenEvent(event);
24+
});
1825
});
1926

2027
}
2128

22-
}
29+
}

type.generic/src/main/java/net/swofty/type/generic/gui/v2/event/ActionInventoryPostClick.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@ public class ActionInventoryPostClick implements HypixelEventClass {
1212
@HypixelEvent(node = EventNodes.INVENTORY, requireDataLoaded = false)
1313
public void onInventoryPostClick(InventoryClickEvent event) {
1414
HypixelPlayer player = (HypixelPlayer) event.getPlayer();
15-
ViewNavigator.find(player).ifPresent(navigator -> navigator.getCurrentSession().onPostClickEvent(event));
15+
ViewNavigator.find(player).ifPresent(navigator -> {
16+
if (navigator.getCurrentSession() == null) {
17+
return;
18+
}
19+
navigator.getCurrentSession().onPostClickEvent(event);
20+
});
1621
}
1722

18-
}
23+
}

type.generic/src/main/java/net/swofty/type/generic/gui/v2/event/ActionInventoryPreClick.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@ public class ActionInventoryPreClick implements HypixelEventClass {
1313
public void onActionPlayerInventoryPreClick(InventoryPreClickEvent event) {
1414
HypixelPlayer player = (HypixelPlayer) event.getPlayer();
1515
ViewNavigator.find(player).ifPresent(navigator -> {
16+
if (navigator.getCurrentSession() == null) {
17+
return;
18+
}
1619
navigator.getCurrentSession().onPreClickEvent(event);
1720
});
1821
}
1922

20-
}
23+
}

0 commit comments

Comments
 (0)