@@ -34,6 +34,7 @@ import org.bukkit.Bukkit
3434import org.bukkit.event.EventHandler
3535import org.bukkit.event.Listener
3636import org.bukkit.event.player.PlayerQuitEvent
37+ import org.geysermc.floodgate.api.FloodgateApi
3738import org.incendo.cloud.annotations.Command
3839
3940object NewsModule: BukkitModule<NewsModule.ModuleConfig, NewsModule.ModuleLang>() {
@@ -72,6 +73,12 @@ object NewsModule: BukkitModule<NewsModule.ModuleConfig, NewsModule.ModuleLang>(
7273 @EventHandler
7374 fun onJoin (e : UserLoginEvent ) {
7475 val user = e.user
76+
77+ if (! config.bookNews.showUnreadNewsOnJoinForGeyser
78+ && Bukkit .getPluginManager().isPluginEnabled(" floodgate" )
79+ && FloodgateApi .getInstance().isFloodgateId(user.uuid)
80+ ) return
81+
7582 val news = NewsDataManager .news
7683 if (news.isEmpty()) return
7784 val checked = NewsDataManager .getChecked(user)
@@ -368,6 +375,13 @@ object NewsModule: BukkitModule<NewsModule.ModuleConfig, NewsModule.ModuleLang>(
368375 """ )
369376 val channel : String = " main" ,
370377 val showUnreadNewsOnJoin : Boolean = true ,
378+ @Comment("""
379+ Minecraft Bedrock (Geyser players) does not support clickable messages,
380+ thus they cannot access this feature properly.
381+ Set this to false so we won't show the gui on join for them.
382+ Requires Floodgate installed.
383+ """ )
384+ val showUnreadNewsOnJoinForGeyser : Boolean = false ,
371385 @Comment(" The default layout when you create a new news." )
372386 val newLayout : Map <String , String > = mapOf(
373387 "default" to """
0 commit comments