Started and finished privileges.md

This commit is contained in:
debiankaios 2022-08-24 19:37:33 +02:00
parent a51ef8cb98
commit e2f2c32d1c
2 changed files with 145 additions and 0 deletions

138
_de/players/privileges.md Normal file
View File

@ -0,0 +1,138 @@
---
title: Privilegien
layout: default
root: ../..
idx: 4.1
description: Privs registrieren.
redirect_from: /de/chapters/privileges.html
---
## Einleitung <!-- omit in toc -->
Privilegien, oft privs abgekürzt, geben Spielern die Möglichkeit,
bestimmte Aktionen durchzuführen. Serverbesitzer können Privilegien vergeben und entziehen, um zu kontrollieren
welche Fähigkeiten jeder Spieler hat.
- [Wann sollten Sie Privilegien nutzen?](#wann-sollten-sie-privilegien-nutzen)
- [Erklärung von Privilegien](#erklärung-von-privilegien)
- [Überprüfung der Privilegien](#überprüfung-der-privilegien)
- [Abrufen und Festlegen von Privilegien](#abrufen-und-festlegen-von-privilegien)
- [Privilegien zu basic_privs hinzufügen](#privilegien-zu-basicprivs-hinzufügen)
## Wann sollten Sie Privilegien nutzen?
Ein Privileg sollte einem Spieler die Möglichkeit geben, etwas zu tun.
Privilegien sind **nicht** dazu da, Klassen- oder Statusangaben zu machen.
**Gute Privilegien:**
* interact
* shout
* noclip
* fly
* kick
* ban
* vote
* worldedit
* area_admin - Adminfunktionen eines Mods sind in Ordnung
**Schlechte Privilegien:**
* moderator
* admin
* elf
* dwarf
## Erklärung von Privilegien
Verwenden Sie `register_privilege`, um ein neues Privileg zu deklarieren:
```lua
minetest.register_privilege("vote", {
description = "Kann über Themen abstimmen",
give_to_singleplayer = true
})
```
`give_to_singleplayer` steht standardmäßig auf true, wenn es nicht angegeben wird, so dass es
in der obigen Definition nicht wirklich benötigt wird.
## Überprüfung der Privilegien
Um schnell zu überprüfen, ob ein Spieler alle erforderlichen Rechte besitzt:
```lua
local has, missing = minetest.check_player_privs(player_or_name, {
interact = true,
vote = true })
```
In diesem Beispiel ist `has` wahr, wenn der Spieler alle benötigten Privilegien hat.
Wenn `has` falsch ist, dann enthält `missing` eine Schlüssel-Wert-Tabelle
mit den fehlenden Privilegien.
```lua
local has, missing = minetest.check_player_privs(name, {
interact = true,
vote = true })
if has then
print("Spieler hat alle Privilegien!")
else
print("Dem Spieler fehlen folgende Privilegien:" .. dump(missing))
end
```
Wenn Sie die fehlenden Privilegien nicht überprüfen müssen, können Sie
check_player_privs" direkt in die if-Anweisung einfügen.
```lua
if not minetest.check_player_privs(name, { interact=true }) then
return false, "Hierfür brauchen Sie Interaktion!"
end
```
## Abrufen und Festlegen von Privilegien
Auf die Spielerprivilegien kann unabhängig, ob der Spieler
online ist, zugegriffen werden.
```lua
local privs = minetest.get_player_privs(name)
print(dump(privs))
privs.vote = true
minetest.set_player_privs(name, privs)
```
Privilegien werden immer als Schlüssel-Wert-Tabelle angegeben, wobei der Schlüssel der
Name der Berechtigung und der Wert ein Boolescher Wert ist.
```lua
{
fly = true,
interact = true,
shout = true
}
```
## Privilegien zu basic_privs hinzufügen
Spieler mit dem Privileg `basic_privs` können eine begrenzte Anzahl von Privilegien gewähren und entziehen.
Es ist üblich, dieses Privileg an Moderatoren zu vergeben, so dass
sie `interact` und `shout` gewähren und entziehen können, aber nicht sich selbst oder anderen
Spieler Privilegien mit größerem Missbrauchspotential wie `give` und `server` gewähren können.
Um ein Privileg zu `basic_privs` hinzuzufügen, und um einzustellen, welche Privilegien Ihre Moderatoren
anderen Spielern gewähren und entziehen können, müssen Sie die Einstellung `basic_privs` ändern.
Standardmäßig hat `basic_privs` den folgenden Wert:
basic_privs = interact, shout
Um `vote` hinzuzufügen, aktualisieren Sie dies zu:
basic_privs = interact, shout, vote
Dies wird es Spielern mit `basic_privs` erlauben, das `vote` Privileg zu gewähren und zu entziehen.

View File

@ -1,4 +1,6 @@
Active Block Modifiers = Aktive Mapblock Modifikatoren Active Block Modifiers = Aktive Mapblock Modifikatoren
Admin = Admin
Administrator = Administrator
Armor Groups = Armor Groups Armor Groups = Armor Groups
Attachment = Anhang Attachment = Anhang
block = Mapblock block = Mapblock
@ -17,6 +19,7 @@ Dig Types = Grabungstypen
drawtype = Zeichnungstyp drawtype = Zeichnungstyp
Entities = Entities Entities = Entities
Entity = Entity Entity = Entity
false = falsch
Folder = Verzeichnis Folder = Verzeichnis
games = Spiele games = Spiele
getter = Getter getter = Getter
@ -35,6 +38,7 @@ Inventory reference = Inventar-Referenz
Item metadata = Item-Metadaten Item metadata = Item-Metadaten
ItemStack = ItemStack ItemStack = ItemStack
key = Schlüssel key = Schlüssel
key-value table = Schlüssel-Wert-Tabelle
large data = große Daten large data = große Daten
Lua entity = Lua entity Lua entity = Lua entity
main inventory = Hauptinventar main inventory = Hauptinventar
@ -64,6 +68,8 @@ placer = plazierer
player inventory = Spielerinventar player inventory = Spielerinventar
player reference = Spielerreferenz player reference = Spielerreferenz
pointed_thing = angeschautes_ding pointed_thing = angeschautes_ding
priv = priv
privilege = Privileg
punch = schlagen punch = schlagen
Radians = Radiant Radians = Radiant
small data = kleine Daten small data = kleine Daten
@ -73,5 +79,6 @@ table = Tabelle
tile = Kachel tile = Kachel
tiles = Kacheln tiles = Kacheln
timer = timer timer = timer
true = wahr
wear = Abnutzung wear = Abnutzung
Your turn = Sie sind dran Your turn = Sie sind dran