GUI
Wszystkie menu GrzybcioRynek 1.0.3 — sloty, co jest w gui.yml, a co zahardkodowane.
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
Konfigurowalne w gui.yml są tylko przeglądarka (browse) i potwierdzenie zakupu (confirm). Reszta menu ma rozmiar i sloty w klasach inventory.impl.*.
settings.gui-rows w config.yml jest UNUSED.
Mapa menu
| GUI | Klasa | Rozmiar | Konfiguracja slotów |
|---|---|---|---|
| Przeglądanie | MarketBrowseGUI | gui.yml browse.size (54) | listingi, obramowanie, paginacja, filler — YAML; pasek 45–53 — Java |
| Kategorie | MarketCategoryGUI | 54 hardcoded | sloty kategorii z browse.categories |
| Szczegóły | MarketDetailGUI | 27 hardcoded | 4 / 11 / 13 / 15 / 22 |
| Potwierdzenie | MarketConfirmGUI | gui.yml confirm.size (27) | confirm.slots |
| Moje oferty | MyListingsGUI | 54 hardcoded | listingi 10–16, 19–25, 28–34 |
| Zarządzaj ofertą | MyListingsGUI.Manage | 27 hardcoded | item 13, usuń 11, anuluj 15 |
| Ulubione | FavoritesGUI | 54 hardcoded | te same sloty listingów |
| Historia | HistoryGUI | 54 hardcoded | taby 3 / 5, listingi jak wyżej |
| Skrzynka | MailboxGUI | 54 hardcoded | claim-all 49, strona 53 |
| Alerty | AlertsGUI | 54 hardcoded | dodaj 49 |
| Statystyki | StatsGUI | 27 hardcoded | 10–16 + wstecz 22 |
| Profil sprzedawcy | SellerProfileGUI | 27 hardcoded | 4 / 11–15 / 22 |
Przeglądanie (MarketBrowseGUI)
Rozmiar z browse.size. Oferty w browse.listing-slots — 21 na stronę (10–16, 19–25, 28–34). Klik oferty → MarketDetailGUI.
Paginacja z YAML: previous 39, page 40, next 41.
Pasek akcji — NIE w gui.yml
Zahardkodowane w MarketBrowseGUI:
| Slot | Materiał | Akcja | Flaga |
|---|---|---|---|
| 45 | COMPASS | Szukaj (czat) | — |
| 46 | HOPPER | Sort (cykl SortMode) | — |
| 47 | CHEST | Kategorie | — |
| 48 | CHEST_MINECART | Skrzynka | GUI zawsze; dostarczanie zależy od mailbox.enabled |
| 49 | EMERALD | Statystyki | stats.enabled UNUSED |
| 50 | BELL | Alerty | price-alerts.enabled |
| 51 | GOLDEN_APPLE | Ulubione | favorites.enabled |
| 52 | PLAYER_HEAD | Moje oferty | — |
| 53 | BOOK | Historia | nie sprawdza history.enabled |
Przesunięcie paginacji w gui.yml na sloty 45–53 nachodzi na pasek akcji. Plugin nie wykrywa kolizji.
Sortowanie (klik hoppera, cykl): CHEAPEST → EXPENSIVE → NEWEST → OLDEST → MOST_AMOUNT → LEAST_AMOUNT → z powrotem. Teksty: messages.gui.sort.*.
Kategorie (MarketCategoryGUI)
54 sloty. Przyciski z browse.categories (slot + material). Wstecz: slot 49 (ARROW). Wybór ustawia kategorię w BrowseContext i wraca do browse. Enum: Categories.
Szczegóły (MarketDetailGUI) — 27, hardcoded
| Slot | Rola |
|---|---|
| 4 | Ulubione (toggle) — gdy favorites.enabled |
| 11 | Kup (nie własna oferta) → Confirm |
| 13 | Podgląd itemu |
| 15 | Anuluj / powrót do browse |
| 22 | Profil sprzedawcy → SellerProfileGUI |
Brak oferty: barrier na 13 + anuluj. Zakup własnej oferty jest zablokowany (buy.own-listing przy próbie w buyItem; przycisk Kup nie jest stawiany dla właściciela).
Potwierdzenie (MarketConfirmGUI)
Z gui.yml:
confirm:
size: 27
slots:
confirm: 11
item: 13
cancel: 15
confirm-material: LIME_CONCRETE
cancel-material: RED_CONCRETEConfirm woła MarketManager.buyItem. Cancel wraca do Detail.
Moje oferty
MyListingsGUI 54. Listingi w tych samych 21 slotach co browse (hardcoded). Paginacja: prev 48, page 49, next 50, wstecz 45. Klik oferty → sub-GUI 27: item 13, usuń 11 (/market remove logic), anuluj 15.
Ulubione / Historia
Oba 54, te same 21 slotów listingów, wstecz 45, paginacja 48/49/50.
Historia: tab Zakupy slot 3, Sprzedaż slot 5. Klik transakcji (gdy ratings.enabled) startuje ocenę na czacie.
history.enabled nie wyłącza tego GUI z przycisku browse — tylko komendę /market history.
Skrzynka
- Claim-all slot 49. Wskaźnik strony slot 53. Prev/next 48/50, wstecz 45. Klik = odbiór jednej pozycji. Shift+klik = relist (cena na czacie,
messages.relist.prompt).
Powody w lore: expired, removed, admin-removed, admin-refund, purchase-overflow.
Alerty
- Dodaj slot 49 (czat: fraza, potem max cena). Klik alertu = usunięcie. Paginacja 48/50, strona na 53, wstecz 45.
Statystyki — 27
| Slot | Metryka |
|---|---|
| 10 | Aktywne oferty (cały rynek) |
| 11 | Twoje oferty |
| 12 | Sprzedaże (rynek) |
| 13 | Obrót rynku |
| 14 | Twoje wydatki |
| 15 | Twoje zarobki |
| 16 | Twoje sprzedaże |
| 22 | Wstecz |
StatsManager.getTopSoldItems, getMostExpensive, getTopSellers, getPriceSummary nie są w tym GUI. stats.enabled UNUSED.
Profil sprzedawcy — 27
Wejście: Detail slot 22.
| Slot | Treść |
|---|---|
| 4 | Nazwa (PLAYER_HEAD) |
| 11 | Aktywne oferty |
| 12 | Sprzedane |
| 13 | Zarobione |
| 14 | Ocena + liczba ocen |
| 15 | Pokaż oferty gracza (browse z filtrem sprzedawcy) |
| 22 | Wstecz |
Co można, a czego nie
Możesz w YAML: sloty listingów browse, obramowanie, filler, ikony kategorii, paginację browse, rozmiar browse/confirm, sloty i materiały confirm.
Nie możesz w YAML: paska 45–53, Detail, My/Manage, Favorites, History, Mailbox, Alerts, Stats, SellerProfile — zmiana wymaga edycji Javy.
Pełny rozkład gui.yml: gui.yml.