Code Patterns

Copy-paste examples for common plugin tasks. Commands, events, ECS, GUI, and more.

← Back to Patterns
moderation

Whitelist Management

Manage server whitelist via HytaleWhitelistProvider with GUI controls

Example Code

java
// Toggle whitelist
AdminUI.getInstance().getWhitelistProvider().setEnabled(!AdminUI.getInstance().getWhitelistProvider().isEnabled());
AdminUI.getInstance().getWhitelistProvider().syncSave();

// Add player to whitelist
ProfileServiceClient.PublicGameProfile profile = AuthUtil.getProfile(playerName);
if (profile != null) {
    if (whitelistProvider.modify(uuids -> uuids.add(profile.getUuid()))) {
        whitelistProvider.syncSave();
        player.sendMessage(Message.translation("server.modules.whitelist.addSuccess").param("name", playerName));
    } else {
        player.sendMessage(Message.translation("server.modules.whitelist.alreadyWhitelisted").param("name", playerName));
    }
}

// Remove player from whitelist
whitelistProvider.modify(uuids -> uuids.remove(uuid));
whitelistProvider.syncSave();

// Get whitelist entries
for (UUID uuid : whitelistProvider.getList()) {
    // process each whitelisted player
}