Expiration
Konfiguracja wygaśnięcia ofert — listing-expiry-days, timer 30 min, outbox i pending-returns.
Kompatybilne z: GrzybcioRynek 1.0.3Minecraft 26.2Web 0.1.0
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
Jedyny klucz czasu życia:
yaml
settings:
listing-expiry-days: 7| Typ | int |
| Default | 7 |
| Skutek | Oferta wygasa gdy now - timestamp > N dni. |
Kiedy sprawdzane
MarketPlace.onEnable(po złożeniu managerów)- co 30 minut (
20 * 60 * 30ticków) - po
/market reload//market admin reload
Zarezerwowane oferty (trwa zakup) są pomijane.
Ścieżka itemu
- Wpis
expiry-outbox.<id>wlistings.yml(seller, item, price,reason: expired) - Usunięcie oferty + czyszczenie ulubionych
processExpiryOutbox:- online + miejsce → ekwipunek,
expiry.returned - inaczej →
MailboxService.deposit(expired) albopending-returnsgdy skrzynka off
- online + miejsce → ekwipunek,
/market admin forceexpire <id> wymusza ten sam powód expired od razu.
Zależność od skrzynki
mailbox.enabled | Offline sprzedawca |
|---|---|
true | market-data.yml mailbox |
false | listings.yml pending-returns.<uuid> |
Czego nie ma
- Osobnego timera per oferta (jeden scheduler globalny).
- Przedłużania oferty komendą.
- Klucza „ostrzeż X godzin przed wygaśnięciem”.