Add lobby particle slot menus

Replace the particle inventory with a main menu showing the 7 slots and
unlocked presets, a slot editor with a read-only view for locked slots,
and an entry editor with pickers for designs, choices, colours and icons.
Slots are limited to 10 entries and a particles-per-tick budget.
This commit is contained in:
2026-10-26 09:48:00 +01:00
parent 211e2693cf
commit c95901bc42
12 changed files with 1041 additions and 77 deletions
@@ -84,6 +84,105 @@ PARTICLE_SELECT = §eZum Auswählen klicken
PARTICLE_LOCKED = §c§lGesperrt
PARTICLE_DEACTIVATED = §cEs sind zu viele Spieler online! Partikel sind deaktiviert.
PARTICLE_BACK = §7Zurück
PARTICLE_SLOT_EMPTY = §7Leerer Slot
PARTICLE_SLOT_CREATE = §eZum Erstellen klicken
PARTICLE_SLOT_ENTRIES = §7{0} Einträge
PARTICLE_SLOT_ACTIVE = §aAktiv
PARTICLE_SLOT_SELECT = §eLinksklick§8: §7auswählen
PARTICLE_SLOT_EDIT = §eRechtsklick§8: §7bearbeiten
PARTICLE_SLOT_VIEW = §eKlick§8: §7ansehen
PARTICLE_SLOT_EDITOR = §0{0} bearbeiten
PARTICLE_SLOT_VIEWER = §0{0}
PARTICLE_SLOT_ADD_ENTRY = §aEintrag hinzufügen
PARTICLE_SLOT_MAX_ENTRIES = §cDieser Slot ist voll
PARTICLE_SLOT_OVER_BUDGET = §cDamit würde dieser Slot zu viele Partikel erzeugen
PARTICLE_SLOT_RENAME = §eUmbenennen
PARTICLE_SLOT_RENAME_TITLE = Slotname
PARTICLE_SLOT_ICON = §eSymbol ändern
PARTICLE_SLOT_ICON_TITLE = §0Slotsymbol
PARTICLE_SLOT_DELETE = §cSlot löschen
PARTICLE_SLOT_DELETE_CONFIRM = §7Zum Löschen Shift-Klick
PARTICLE_SLOT_COST = §7Partikel pro Tick§8: §e{0}§8/§7{1}
PARTICLE_ENTRY_EDITOR = §0Eintrag bearbeiten
PARTICLE_ENTRY_DESIGN = §7Design§8: {0}
PARTICLE_ENTRY_PARTICLE = §7Partikel§8: {0}
PARTICLE_ENTRY_LOCKED = §cDesign gesperrt, wird nicht angezeigt
PARTICLE_ENTRY_EDIT = §eLinksklick§8: §7bearbeiten
PARTICLE_ENTRY_DUPLICATE = §eRechtsklick§8: §7duplizieren
PARTICLE_ENTRY_DELETE = §eShift-Rechtsklick§8: §7löschen
PARTICLE_ENTRY_CHANGE_DESIGN = §eZum Ändern des Designs klicken
PARTICLE_ENTRY_DELETE_ITEM = §cEintrag löschen
PARTICLE_DESIGN_PICKER = §0Design wählen
PARTICLE_CHOICE_PICKER = §0{0}
PARTICLE_COLOR_PICKER = §0Farbe wählen
PARTICLE_VALUE = §7Wert§8: {0}
PARTICLE_VALUE_NUMBER_HELP = §eLinks§8/§erechtsklick§8: §7+/- {0}, §eShift§8: §7x10
PARTICLE_VALUE_EXACT_HELP = §eQ§8: §7Wert eingeben
PARTICLE_VALUE_TOGGLE_HELP = §eKlick§8: §7umschalten
PARTICLE_VALUE_CHOICE_HELP = §eLinks§8/§erechtsklick§8: §7weiter/zurück
PARTICLE_VALUE_LIST_HELP = §eKlick§8: §7auswählen
PARTICLE_VALUE_COLORS_HELP = §eLinksklick§8: §7Farbe hinzufügen, §eRechtsklick§8: §7letzte entfernen
PARTICLE_VALUE_RANDOM = §7Zufällige Farben
PARTICLE_VALUE_YES = §aJa
PARTICLE_VALUE_NO = §cNein
PARTICLE_DESIGN_SIMPLE = §fEinfach
PARTICLE_DESIGN_CIRCLE = §fKreis
PARTICLE_DESIGN_WING = §fFlügel
PARTICLE_DESIGN_CLOUD = §fWolke
PARTICLE_PARAM_PARTICLE = §fPartikel
PARTICLE_PARAM_COUNT = §fAnzahl
PARTICLE_PARAM_SPREAD_X = §fStreuung X
PARTICLE_PARAM_SPREAD_Y = §fStreuung Y
PARTICLE_PARAM_SPREAD_Z = §fStreuung Z
PARTICLE_PARAM_SPEED = §fGeschwindigkeit
PARTICLE_PARAM_COLORS = §fFarben
PARTICLE_PARAM_OFFSET_X = §fVersatz X
PARTICLE_PARAM_OFFSET_Y = §fVersatz Y
PARTICLE_PARAM_OFFSET_Z = §fVersatz Z
PARTICLE_PARAM_INTERVAL = §fAlle n Ticks
PARTICLE_PARAM_TICK_MODE = §fAnzeige
PARTICLE_PARAM_MOVEMENT = §fBewegung
PARTICLE_PARAM_GLIDING = §fElytra
PARTICLE_PARAM_GROUND = §fBoden
PARTICLE_PARAM_SNEAK = §fDucken
PARTICLE_PARAM_VISIBILITY = §fSichtbar für
PARTICLE_PARAM_RADIUS = §fRadius
PARTICLE_PARAM_CIRCLE_SPEED = §fDrehgeschwindigkeit
PARTICLE_PARAM_PHASE = §fStartwinkel
PARTICLE_PARAM_RISE = §fAuf und ab Höhe
PARTICLE_PARAM_RISE_SPEED = §fAuf und ab Geschwindigkeit
PARTICLE_PARAM_BOUNCE = §fZurückspringen
PARTICLE_PARAM_INVERTED = §fOben beginnen
PARTICLE_PARAM_WING_IMAGE = §fFlügelform
PARTICLE_PARAM_WING_SIZE = §fFlügelgröße
PARTICLE_CHOICE_TICKMODE_MOVE = §fBeim Bewegen
PARTICLE_CHOICE_TICKMODE_ALWAYS = §fImmer
PARTICLE_CHOICE_MOVEMENT_ANY = §fJede Bewegung
PARTICLE_CHOICE_MOVEMENT_MOVING = §fNur beim Bewegen
PARTICLE_CHOICE_MOVEMENT_STANDING_STILL = §fNur beim Stehen
PARTICLE_CHOICE_GLIDING_ANY = §fMit oder ohne Elytra
PARTICLE_CHOICE_GLIDING_GLIDING = §fNur beim Gleiten
PARTICLE_CHOICE_GLIDING_NOT_GLIDING = §fNicht beim Gleiten
PARTICLE_CHOICE_GROUND_ANY = §fAm Boden und in der Luft
PARTICLE_CHOICE_GROUND_ON_GROUND = §fNur am Boden
PARTICLE_CHOICE_GROUND_IN_AIR = §fNur in der Luft
PARTICLE_CHOICE_SNEAK_ANY = §fDucken egal
PARTICLE_CHOICE_SNEAK_SNEAKING = §fNur beim Ducken
PARTICLE_CHOICE_SNEAK_NOT_SNEAKING = §fNicht beim Ducken
PARTICLE_CHOICE_VISIBILITY_EVERYONE = §fAlle
PARTICLE_CHOICE_VISIBILITY_ONLY_SELF = §fNur ich
PARTICLE_CHOICE_VISIBILITY_ONLY_OTHERS = §fNur andere
PARTICLE_CHOICE_IMAGE_SIMPLE = §fEinfach
PARTICLE_CHOICE_IMAGE_COMPLEX = §fKomplex
PARTICLE_CHOICE_IMAGE_SWORD = §fSchwert
PARTICLE_SNEEZE = §aSneeze
PARTICLE_SMOKE = §7Rauch
PARTICLE_FIRE = §cFeuer