Platzhalter
HyperPerms bietet Platzhalter, die in Chat-Plugins, Anzeigetafeln und anderen Plugins verwendet werden können, die Platzhalter-APIs unterstützen.
Verfügbare Platzhalter
| Platzhalter | Beschreibung | Beispielausgabe |
|---|---|---|
%hyperperms_group% | Primärer Gruppenname | admin |
%hyperperms_group_display% | Primärer Gruppendisplayname | Administrator |
%hyperperms_prefix% | Präfix des Spielers | &c[Admin] |
%hyperperms_suffix% | Suffix des Spielers | &6* |
%hyperperms_groups% | Alle Gruppen (Komma-getrennt) | admin, vip, default |
%hyperperms_groups_count% | Anzahl der Gruppen | 3 |
%hyperperms_weight% | Höchstes Gruppengewicht | 90 |
%hyperperms_has_<perm>% | Prüfen, ob Erlaubnis vorhanden | true / false |
%hyperperms_in_group_<group>% | Prüfen, ob in Gruppe | wahr / falsch |
%hyperperms_on_track_<track>% | Prüfen, ob auf Strecke | wahr / falsch |
%hyperperms_track_<track>_group% | Gruppe auf bestimmter Strecke | mod |
PlaceholderAPI Integration
HyperPerms integriert sich automatisch mit PlaceholderAPI, wenn es installiert ist. Es ist keine zusätzliche Konfiguration erforderlich.
Verwendung in Chat-Plugins
Beispiel mit einer Chat-Plugin-Konfiguration:
# Example chat format config
chat:
format: "%hyperperms_prefix%%player_name%%hyperperms_suffix%: %message%"
Verwendung in Anzeigern
# Example scoreboard config
scoreboard:
lines:
- "&7Rank: &f%hyperperms_group_display%"
- "&7Weight: &f%hyperperms_weight%"
- "&7Groups: &f%hyperperms_groups_count%"
Verwendung in Hologrammen
# Example hologram config
hologram:
lines:
- "%hyperperms_prefix%%player_name%"
- "&7%hyperperms_group_display%"
Dynamische Platzhalter
Platzhalter für die Berechtigungsprüfung
Überprüft, ob ein Spieler eine bestimmte Erlaubnis hat:
%hyperperms_has_fly.enable%
%hyperperms_has_mod.kick%
%hyperperms_has_admin.gamemode%
Info: Ersetzen Sie die Punkte in den Erlaubnisknoten durch Unterstriche für den Platzhalter. Zum Beispiel wird
fly.enablezufly_enable.
Platzhalter für Gruppenprüfung
Überprüft, ob ein Spieler in einer bestimmten Gruppe ist:
%hyperperms_in_group_vip%
%hyperperms_in_group_admin%
%hyperperms_in_group_moderator%
Track-Platzhalter
Ermittelt Informationen über die Position eines Spielers auf den Tracks:
# Check if on a track
%hyperperms_on_track_staff%
# Get the player's group on a specific track
%hyperperms_track_staff_group%
%hyperperms_track_donor_group%
Beispiele für die Verwendung
VIP Statusanzeige
# Show VIP status in tab list
tab:
format: "%hyperperms_prefix%%player_name%"
# Conditional VIP indicator
sidebar:
line: "VIP: %hyperperms_in_group_vip%"
Dienstgradanzeige
# Show staff rank on scoreboard
scoreboard:
lines:
- "&6Staff Rank"
- "&f%hyperperms_track_staff_group%"
- ""
- "&6Your Groups"
- "&f%hyperperms_groups%"
Erlaubnisbasierter Inhalt
# Show different content based on permissions
# (Requires a plugin that supports conditional placeholders)
fly_status: "%hyperperms_has_fly_enable%"
mod_tools: "%hyperperms_has_mod_kick%"
Programmatischer Zugang
Wenn Sie ein Plugin entwickeln und HyperPerms Platzhalter verwenden wollen:
import me.clip.placeholderapi.PlaceholderAPI;
public String formatMessage(Player player, String message) {
// PlaceholderAPI will replace HyperPerms placeholders
return PlaceholderAPI.setPlaceholders(player, message);
}
// Example usage
String formatted = formatMessage(player,
"Welcome, %hyperperms_prefix%%player_name%!");
Benutzerdefinierte Platzhaltererweiterung
Sie können benutzerdefinierte Platzhalter erstellen, die HyperPerms-Daten verwenden:
import dev.hyperperms.api.HyperPermsProvider;
import me.clip.placeholderapi.expansion.PlaceholderExpansion;
public class MyExpansion extends PlaceholderExpansion {
@Override
public String onPlaceholderRequest(Player player, String params) {
HyperPermsAPI api = HyperPermsProvider.get();
User user = api.getUserManager().getUser(player.getUniqueId());
if (params.equals("custom_rank")) {
return user.getPrimaryGroup().getDisplayName();
}
return null;
}
@Override
public String getIdentifier() {
return "myplugin";
}
@Override
public String getAuthor() {
return "Your Name";
}
@Override
public String getVersion() {
return "1.0.0";
}
}
Überlegungen zur Leistung
Tipp: HyperPerms zwischenspeichert Platzhalterwerte, um eine gute Leistung zu gewährleisten. Der Cache wird automatisch aktualisiert, wenn sich die Berechtigungen ändern.
- Platzhalter werden bei Bedarf ausgewertet
- Ergebnisse werden aus Effizienzgründen zwischengespeichert
- Der Cache wird ungültig, wenn sich die Berechtigungen ändern
- Vermeidung übermäßiger Verwendung von Platzhaltern bei hochfrequenten Aktualisierungen
Fehlerbehebung
Platzhalter funktionieren nicht
- Stellen Sie sicher, dass PlaceholderAPI installiert ist
- Prüfen Sie, ob HyperPerms geladen ist
- Prüfen Sie, ob die Syntax der Platzhalter korrekt ist
- Prüfen Sie auf Tippfehler in permission/group names
Returning Empty/Wrong Values
- Der Spieler ist möglicherweise noch nicht beigetreten (keine Daten)
- Gruppe oder Berechtigung könnte nicht existieren
- Prüfen Sie mit
/hp user info <player>