Messages
Komunikaty GrzybcioRynek 1.0.3 żyją w config.yml pod messages.* — nie ma messages.yml.
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
Wszystkie teksty gracza są w config.yml → messages.*. MessageManager czyta messages. + ścieżkę. Osobnego pliku messages.yml nie ma.
Jak działa odczyt
String message = plugin.getConfig().getString("messages." + path, "&cBrak wiadomosci: " + path);
return ChatColor.translateAlternateColorCodes('&', message);Brak klucza → &cBrak wiadomosci: + ścieżka (np. Brak wiadomosci: sell.success). Kolory: kody & (&a, &c, &e, &7, &8, &b, &d, &f).
sendMessage dokleja messages.prefix przed treścią.
Prefix i błędy ogólne
messages:
prefix: "&8[&bGrzybcioRynek&8] &7"
no-permission: "Nie masz uprawnień do tego!"
player-only: "Tylko gracze mogą używać tej komendy!"Grupy kluczy
| Grupa | Ścieżki | Kiedy |
|---|---|---|
sell.* | success, no-item, invalid-price, limit-reached, air-item | Wystawianie |
buy.* | success, not-enough-money, own-listing, inventory-full, not-available, transaction-failed, seller-notified, listing-locked | Zakup GUI |
remove.* | success, not-found, not-owner | Usuwanie oferty |
reload.success | — | Reload |
expiry.returned | — | Zwrot wygasłej oferty do ekwipunku |
my.no-listings | — | Puste „Moje oferty” |
search.* | prompt, cancelled, no-results | Szukanie z czatu / brak wyników |
favorites.* | added, removed, disabled | Ulubione |
mailbox.* | received, empty, claimed, inventory-full, join-hint | Skrzynka |
alerts.* | prompt-query, prompt-price, created, removed, limit, triggered, disabled, cancelled | Alerty |
fee.* | listing, sale-preview, not-enough-listing | Prowizje |
price-hint / price-hint-none | — | Hint po wystawieniu |
anti-abuse.* | cooldown, max-value, same-player | Limity |
rating.* | prompt, success, invalid, already, cancelled | Oceny 1–5 |
admin.inspect-header | — | /market admin inspect |
relist.* | prompt, cancelled | Ponowne wystawienie ze skrzynki |
gui.* | tytuły, lore, przyciski, sort, kategorie | GUI |
usage.* | main, sell, wystaw, remove, search, alerts | Błędna składnia |
Pełna lista z defaultami: configuration/messages.
Klucze dopisywane automatycznie
ConfigManager.ensureMessageDefaults() przy reloadu dopisuje brakujące klucze i zapisuje config.yml. W tym m.in.:
messages.input.cancelled: "Anulowano."
messages.alerts.cancelled: "Anulowano tworzenie alertu."
messages.rating.cancelled: "Anulowano ocenę."
messages.relist.cancelled: "Anulowano ponowne wystawienie."
messages.mailbox.join-hint: "Masz &e{count} &7przedmiot(ów) w skrzynce rynku: &e/market mailbox"messages.input.cancelled jest rezerwą — ChatInputManager przy cancel / anuluj używa konkretnych kluczy: search.cancelled, alerts.cancelled, rating.cancelled, relist.cancelled.
Anulowanie wpisu na czacie
Słowa (bez rozróżniania wielkości liter): cancel, anuluj.
Typy inputu: wyszukiwanie, fraza alertu, cena alertu, ocena, cena relist.
Placeholdery
Podstawiane jako {nazwa} przez MessageManager.getMessage(path, replacements):
| Placeholder | Typowa treść |
|---|---|
{item} | Nazwa przedmiotu |
{price} | Cena sformatowana Vault ($X / $X.XX) |
{min} {max} | Limit ceny albo max alertu / max transakcji |
{limit} | Limit ofert albo alertów albo zakupów |
{fee} | Prowizja |
{net} | Kwota dla sprzedawcy po prowizji |
{buyer} {seller} | Nicki |
{id} | ID oferty |
{query} | Fraza wyszukiwania / alertu |
{stars} | Ocena 1–5 |
{seconds} | Cooldown |
{count} | Liczba (skrzynka, oceny) |
{page} {total} | Stronicowanie |
{sort} | Nazwa trybu sortowania |
{time} | Wiek / wygaśnięcie |
{value} | Wartość statystyki |
{rating} | Średnia ocena |
{unit} | Cena za sztukę |
Placeholder {avg} występuje w messages.price-hint (hint po wystawieniu).
Teksty zahardkodowane (nie w YAML)
Część admina i kilka błędów idzie bezpośrednio na czat, nie przez messages.*:
/market admin— lista podkomend, błędyinspect/remove/forceexpire/refund/selftest- Reload przy rezerwacji:
Trwają aktywne transakcje — spróbuj ponownie za chwilę. /market historyprzyhistory.enabled: false:Historia transakcji jest wyłączona.- Refund:
Nie znaleziono transakcji., stany,REFUND:…
Zmiana config.yml ich nie ruszy.
Przykład
messages:
prefix: "&8[&6Rynek&8] &7"
sell:
success: "Wystawiono &e{item} &7za &a{price}"
buy:
success: "Kupiono &e{item} &7za &a{price}"Po edycji: /market reload (gdy brak zarezerwowanych ofert).