Skip to content

Commit 14f1212

Browse files
fix crash if luckperms not loaded
1 parent 8ec511a commit 14f1212

File tree

4 files changed

+31
-9
lines changed

4 files changed

+31
-9
lines changed

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# plugin
2-
version = 1.9.0-pre
2+
version = 1.9.0-pre.1
33

44
# dependencies
55
velocity_version = 3.3.0-SNAPSHOT
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package ooo.foooooooooooo.velocitydiscord;
2+
3+
import net.luckperms.api.LuckPermsProvider;
4+
import net.luckperms.api.model.user.UserManager;
5+
6+
public class LuckPerms {
7+
private final net.luckperms.api.LuckPerms luckPerms;
8+
9+
public LuckPerms() {
10+
this.luckPerms = LuckPermsProvider.get();
11+
}
12+
13+
public UserManager getUserManager() {
14+
return this.luckPerms.getUserManager();
15+
}
16+
}

src/main/java/ooo/foooooooooooo/velocitydiscord/VelocityDiscord.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
import com.velocitypowered.api.proxy.ProxyServer;
1111
import com.velocitypowered.api.proxy.messages.MinecraftChannelIdentifier;
1212
import com.velocitypowered.api.scheduler.ScheduledTask;
13-
import net.luckperms.api.LuckPerms;
14-
import net.luckperms.api.LuckPermsProvider;
1513
import ooo.foooooooooooo.velocitydiscord.commands.Commands;
1614
import ooo.foooooooooooo.velocitydiscord.config.Config;
1715
import ooo.foooooooooooo.velocitydiscord.discord.Discord;
@@ -37,7 +35,7 @@
3735
public class VelocityDiscord {
3836
public static final String PluginName = "Velocity Discord Bridge";
3937
public static final String PluginDescription = "Velocity Discord Chat Bridge";
40-
public static final String PluginVersion = "1.9.0-pre";
38+
public static final String PluginVersion = "1.9.0-pre.1";
4139
public static final String PluginUrl = "https://github.com/fooooooooooooooo/VelocityDiscord";
4240

4341
public static final String YeplibId = "yeplib";
@@ -130,8 +128,12 @@ public void onProxyInitialization(ProxyInitializeEvent event) {
130128
Commands.RegisterCommands(server.getCommandManager());
131129

132130
try {
133-
luckPerms = LuckPermsProvider.get();
134-
logger.info("LuckPerms found, prefix will be displayed");
131+
if (server.getPluginManager().getPlugin("luckperms").isPresent()) {
132+
this.luckPerms = new LuckPerms();
133+
logger.info("LuckPerms found, prefix will be displayed");
134+
} else {
135+
logger.info("LuckPerms not found, prefix will not be displayed");
136+
}
135137
} catch (Exception e) {
136138
logger.info("LuckPerms not found, prefix will not be displayed");
137139
}

src/main/java/ooo/foooooooooooo/velocitydiscord/VelocityListener.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,14 @@ private void updatePlayerCount() {
135135
}
136136

137137
private Optional<String> getPrefix(UUID uuid) {
138-
var user = VelocityDiscord.getLuckPerms().getUserManager().getUser(uuid);
138+
var luckPerms = VelocityDiscord.getLuckPerms();
139+
if (luckPerms == null) return Optional.empty();
140+
141+
var user = luckPerms.getUserManager().getUser(uuid);
139142
if (user != null) {
140143
return Optional.ofNullable(user.getCachedData().getMetaData().getPrefix());
141144
}
145+
142146
return Optional.empty();
143147
}
144148

@@ -150,8 +154,8 @@ public void checkServerHealth() {
150154

151155
CompletableFuture
152156
.allOf(servers.parallelStream()
153-
.map((server) -> server.ping().handle((ping, ex) -> handlePing(server, ping, ex)))
154-
.toArray(CompletableFuture[]::new))
157+
.map((server) -> server.ping().handle((ping, ex) -> handlePing(server, ping, ex)))
158+
.toArray(CompletableFuture[]::new))
155159
.join();
156160

157161
this.firstHealthCheck = false;

0 commit comments

Comments
 (0)