添加对 floodgate 的支持

This commit is contained in:
Sattera 2023-04-04 09:08:07 +08:00
parent 0e1e65c7f7
commit c2b7a693b2
4 changed files with 25 additions and 2 deletions

17
pom.xml
View File

@ -598,11 +598,26 @@
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>opencollab-snapshot</id>
<url>https://repo.opencollab.dev/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<!-- Java Libraries -->
<dependency>
<groupId>org.geysermc.floodgate</groupId>
<artifactId>api</artifactId>
<version>2.2.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<!-- Jalu Injector -->
<dependency>
<groupId>ch.jalu</groupId>

View File

@ -52,6 +52,7 @@ import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerShearEntityEvent;
import org.bukkit.event.player.PlayerSwapHandItemsEvent;
import org.bukkit.inventory.InventoryView;
import org.geysermc.floodgate.api.FloodgateApi;
import javax.inject.Inject;
import java.util.Locale;
@ -112,7 +113,9 @@ public class PlayerListener implements Listener {
if (validationService.isUnrestricted(name)) {
return;
}
if (settings.getProperty(RestrictionSettings.HOOK_FLOODGATE_PLAYER) && FloodgateApi.getInstance().isFloodgateId(event.getUniqueId())){
return;
}
// Non-blocking checks
try {
onJoinVerifier.checkIsValidName(name);
@ -120,6 +123,7 @@ public class PlayerListener implements Listener {
event.setKickMessage(messages.retrieveSingle(name, e.getReason(), e.getArgs()));
event.setLoginResult(AsyncPlayerPreLoginEvent.Result.KICK_OTHER);
}
}
/*

View File

@ -125,6 +125,9 @@ public final class RestrictionSettings implements SettingsHolder {
public static final Property<String> ALLOWED_NICKNAME_CHARACTERS =
newProperty("settings.restrictions.allowedNicknameCharacters", "[a-zA-Z0-9_]*");
@Comment("Allow FloodGatePlayer Join Without checkIsValidName()")
public static final Property<Boolean> HOOK_FLOODGATE_PLAYER =
newProperty("settings.restrictions.hookFloodGatePlayer", false);
@Comment({
"How far can unregistered players walk?",
"Set to 0 for unlimited radius"

View File

@ -15,6 +15,7 @@ softdepend:
- Essentials
- EssentialsSpawn
- ProtocolLib
- floodgate
commands:
authme:
description: AuthMe op commands