forked from Upstream/Velocitab
Add protocol mappings for 1.19 versions, Add DEBUG_TEAM_NAME placeholder, weight sort logic tweaks
This commit is contained in:
parent
51c7853b7b
commit
54928f597a
@ -93,6 +93,7 @@ public class Velocitab {
|
|||||||
try {
|
try {
|
||||||
luckPerms = new LuckPermsHook(this);
|
luckPerms = new LuckPermsHook(this);
|
||||||
server.getEventManager().register(this, luckPerms);
|
server.getEventManager().register(this, luckPerms);
|
||||||
|
logger.info("Successfully hooked into LuckPerms");
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
logger.warn("LuckPerms was not loaded: " + e.getMessage(), e);
|
logger.warn("LuckPerms was not loaded: " + e.getMessage(), e);
|
||||||
}
|
}
|
||||||
@ -120,8 +121,12 @@ public class Velocitab {
|
|||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public TabPlayer getTabPlayer(@NotNull Player player) {
|
public TabPlayer getTabPlayer(@NotNull Player player) {
|
||||||
return new TabPlayer(player, getLuckPerms().map(hook -> hook.getPlayerRole(player)).orElse(Role.DEFAULT_ROLE),
|
return new TabPlayer(
|
||||||
getLuckPerms().map(LuckPermsHook::getHighestWeight).orElse(0));
|
player,
|
||||||
|
getLuckPerms().map(hook -> hook.getPlayerRole(player))
|
||||||
|
.orElse(Role.DEFAULT_ROLE),
|
||||||
|
getLuckPerms().map(LuckPermsHook::getHighestWeight)
|
||||||
|
.orElse(0));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,8 @@ public enum Placeholder {
|
|||||||
PING((plugin, player) -> Long.toString(player.getPlayer().getPing())),
|
PING((plugin, player) -> Long.toString(player.getPlayer().getPing())),
|
||||||
PREFIX((plugin, player) -> player.getRole().getPrefix().orElse("")),
|
PREFIX((plugin, player) -> player.getRole().getPrefix().orElse("")),
|
||||||
SUFFIX((plugin, player) -> player.getRole().getSuffix().orElse("")),
|
SUFFIX((plugin, player) -> player.getRole().getSuffix().orElse("")),
|
||||||
ROLE((plugin, player) -> player.getRole().getName().orElse(""));
|
ROLE((plugin, player) -> player.getRole().getName().orElse("")),
|
||||||
|
DEBUG_TEAM_NAME((plugin, player) -> player.getTeamName());
|
||||||
|
|
||||||
private final BiFunction<Velocitab, TabPlayer, String> formatter;
|
private final BiFunction<Velocitab, TabPlayer, String> formatter;
|
||||||
|
|
||||||
|
@ -30,16 +30,15 @@ public class LuckPermsHook {
|
|||||||
@NotNull
|
@NotNull
|
||||||
public Role getPlayerRole(@NotNull Player player) {
|
public Role getPlayerRole(@NotNull Player player) {
|
||||||
final CachedMetaData metaData = getUser(player.getUniqueId()).getCachedData().getMetaData();
|
final CachedMetaData metaData = getUser(player.getUniqueId()).getCachedData().getMetaData();
|
||||||
final OptionalInt roleWeight = getWeight(metaData.getPrimaryGroup());
|
if (metaData.getPrimaryGroup() == null) {
|
||||||
if (roleWeight.isPresent()) {
|
return Role.DEFAULT_ROLE;
|
||||||
return new Role(
|
|
||||||
roleWeight.getAsInt(),
|
|
||||||
metaData.getPrimaryGroup(),
|
|
||||||
metaData.getPrefix(),
|
|
||||||
metaData.getSuffix()
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
return Role.DEFAULT_ROLE;
|
return new Role(
|
||||||
|
getWeight(metaData.getPrimaryGroup()).orElse(0),
|
||||||
|
metaData.getPrimaryGroup(),
|
||||||
|
metaData.getPrefix(),
|
||||||
|
metaData.getSuffix()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Subscribe
|
@Subscribe
|
||||||
|
@ -15,8 +15,7 @@ import java.util.Arrays;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static dev.simplix.protocolize.api.util.ProtocolVersions.MINECRAFT_1_19;
|
import static dev.simplix.protocolize.api.util.ProtocolVersions.*;
|
||||||
import static dev.simplix.protocolize.api.util.ProtocolVersions.MINECRAFT_1_19_3;
|
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@ -28,7 +27,9 @@ import static dev.simplix.protocolize.api.util.ProtocolVersions.MINECRAFT_1_19_3
|
|||||||
public class UpdateTeamsPacket extends AbstractPacket {
|
public class UpdateTeamsPacket extends AbstractPacket {
|
||||||
|
|
||||||
protected static final List<ProtocolIdMapping> MAPPINGS = List.of(
|
protected static final List<ProtocolIdMapping> MAPPINGS = List.of(
|
||||||
AbstractProtocolMapping.rangedIdMapping(MINECRAFT_1_19, MINECRAFT_1_19_3, 0x56)
|
AbstractProtocolMapping.rangedIdMapping(MINECRAFT_1_19, MINECRAFT_1_19, 0x55),
|
||||||
|
AbstractProtocolMapping.rangedIdMapping(MINECRAFT_1_19_1, MINECRAFT_1_19_2, 0x58),
|
||||||
|
AbstractProtocolMapping.rangedIdMapping(MINECRAFT_1_19_3, MINECRAFT_LATEST, 0x56)
|
||||||
);
|
);
|
||||||
|
|
||||||
private String teamName;
|
private String teamName;
|
||||||
|
@ -42,6 +42,7 @@ public class Role implements Comparable<Role> {
|
|||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public String getStringComparableWeight(int highestWeight) {
|
public String getStringComparableWeight(int highestWeight) {
|
||||||
return String.format("%0" + (highestWeight + "").length() + "d", highestWeight - weight);
|
return String.format("%0" + (highestWeight + "").length() + "d", weight);
|
||||||
|
//return String.format("%0" + (highestWeight + "").length() + "d", highestWeight - weight);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user