History
Historia transakcji — zapis zawsze, komenda /market history pod history.enabled, retencja tylko COMPLETED.
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
Każda transakcja z buyItem (i rollback/refund) ląduje w market-data.yml → transactions. history.enabled nie wyłącza zapisu.
Flaga vs GUI
history:
enabled: true
retention-days: 30| Wejście | Czy sprawdza history.enabled |
|---|---|
/market history / historia | Tak — przy false zahardkodowane: Historia transakcji jest wyłączona. |
Przycisk browse slot 53 (BOOK) | Nie — zawsze otwiera HistoryGUI |
market.history z plugin.yml nie jest sprawdzane w Javie.
GUI
HistoryGUI — 54 sloty.
| Slot | Rola |
|---|---|
| 3 | Tab Zakupy (gui.history.tab-purchases) |
| 5 | Tab Sprzedaż (gui.history.tab-sales) |
| 10–16, 19–25, 28–34 | Rekordy |
| 45 | Wstecz |
| 48 / 49 / 50 | Paginacja |
Puste: gui.history.empty na 22.
Lore: cena, sprzedawca/kupujący, prowizja, wiek. Gdy ratings.enabled i TX nieoceniona — gui.history.lore.rate; klik startuje ocenę na czacie.
Retencja
ExtendedDataStore.pruneHistory() usuwa rekordy, które są jednocześnie:
- starsze niż
retention-days, - w stanie
COMPLETED.
ROLLED_BACK, FAILED i inne stany zostają — potrzebne do refundów i diagnostyki.
Zapis
Zawsze po commicie zakupu (addTransaction). Niezależne od history.enabled i stats.enabled.