▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/BS CustomJukebox
BS CustomJukebox

BS CustomJukebox

Fully-featured Paper 1.21+ jukebox plugin with custom music discs, disc fragments, GUI support, and WorldGuard/GriefPrevention integration.

226
2
Все версииBS CustomJukebox 2.0.0

BS CustomJukebox 2.0.0

Release1 мес. назад

Список изменений

[2.0.0] - 2026-01-06

Added

  • Folia Support: Full compatibility with Folia (region-threaded) servers
    • Added folia-supported: true flag in plugin.yml
    • New SchedulerUtil class for cross-platform scheduler abstraction
    • Automatic detection of Folia vs Paper/Spigot at runtime
    • Uses reflection to call Folia API without compile-time dependency
    • Region scheduler for location-based tasks
    • Entity scheduler for player/entity-specific tasks
    • Async scheduler for background operations
    • All 26 scheduler calls migrated to use SchedulerUtil

Fixed

  • Folia Scheduler Bug: Fixed UnsupportedOperationException when running on Folia servers

    • Corrected all reflection API calls to use proper Folia methods
    • runLater() now uses Bukkit.getRegionScheduler().runDelayed()
    • run() now uses Bukkit.getRegionScheduler().run()
    • runAsync() now uses Bukkit.getAsyncScheduler().runNow()
    • runAsyncLater() now uses Bukkit.getAsyncScheduler().runDelayed()
  • Sound Key Validation: Removed strict validation that rejected valid sound keys

    • Now accepts both namespace:key format (e.g., customjukebox:epic_journey)
    • AND legacy music_disc.name format (e.g., music_disc.traeumer)
    • Validation errors for 18 discs resolved
  • ConfigManager NullPointerException: Fixed initialization crash

    • Removed isDebug() check in createBackup() method during initialization
    • Plugin now starts without errors
  • PlaybackManager NullPointerException: Fixed task storage crash on Folia

    • Added null checks before storing tasks in ConcurrentHashMap
    • Folia tasks return null (expected behavior) - now handled gracefully
    • Fixed in both scheduleAutoStop() and scheduleLoopTask() methods

Technical

  • New SchedulerUtil class with Folia detection via io.papermc.paper.threadedregions.RegionizedServer
  • Uses Java reflection to avoid compile-time Folia dependency
  • Fallback to Paper scheduler if reflection fails
  • All scheduler methods return nullable BukkitTask (null on Folia)
  • Enhanced error logging for scheduler failures
  • Full backwards compatibility with Paper/Spigot servers

Migration Notes

  • Plugin now works on both Folia AND Paper/Spigot servers
  • No configuration changes required
  • Automatic server type detection
  • Zero performance impact on Paper/Spigot servers

Файлы

CustomJukebox-2.0.0.jar(202.83 KiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

2.0.0

Загрузчики

Folia
Paper
Purpur
Spigot

Версии игры

1.21–1.21.11

Загрузок

106

Дата публикации

1 мес. назад

Загрузил

ID версии

Главная