[FEAT] Expose extra APIs to Command API

This commit is contained in:
2025-01-15 08:21:17 +02:00
parent 8a46899769
commit 74701a7817
32 changed files with 389 additions and 17 deletions

View File

@@ -1,6 +1,6 @@
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/BridgedMinecraft.java
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/BridgedMinecraft.java
@@ -35,7 +35,7 @@
@@ -39,7 +39,7 @@
}
public boolean isRealmServer() {
@@ -9,7 +9,7 @@
}
public boolean isSinglePlayer() {
@@ -59,7 +59,7 @@
@@ -63,7 +63,7 @@
}
public UUID getPlayerId() {

View File

@@ -1,6 +1,13 @@
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/commands/BridgedCommandSourceStack.java
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/commands/BridgedCommandSourceStack.java
@@ -13,7 +13,7 @@
@@ -1,5 +1,6 @@
package com.hypherionmc.craterlib.nojang.commands;
+import com.hypherionmc.craterlib.CraterConstants;
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
import com.hypherionmc.craterlib.utils.ChatUtils;
import lombok.RequiredArgsConstructor;
@@ -14,7 +15,7 @@
private final CommandSourceStack internal;
public void sendSuccess(Supplier<Component> supplier, boolean bl) {
@@ -9,3 +16,28 @@
}
public void sendFailure(Component text) {
@@ -22,11 +23,22 @@
}
public boolean isPlayer() {
- return internal.isPlayer();
+ try {
+ internal.getPlayerOrException();
+ return true;
+ } catch (Exception ignored) {
+ return false;
+ }
}
public BridgedPlayer getPlayer() {
- return BridgedPlayer.of(internal.getPlayer());
+ try {
+ return BridgedPlayer.of(internal.getPlayerOrException());
+ } catch (Exception e) {
+ CraterConstants.LOG.error("Failed to retrieve player", e);
+ }
+
+ return null;
}
public CommandSourceStack toMojang() {