Welcome.kt

Branches > main > e39f879 > files / src / main / kotlin / net / bowmap / handlers / Welcome.kt

package net.bowmap.handlers

import net.bowmap.stormbow.handler
import net.bowmap.stormbow.fact.*
import net.bowmap.stormbow.effect.*

import net.kyori.adventure.text.Component
import net.kyori.adventure.text.format.NamedTextColor
import net.bowmap.server.adventure.headComponent

object Welcome {
  fun register() {
    handler<PlayerJoined> {
        effects(Broadcast(Component.text("Welcome to Bowmap, ", NamedTextColor.GREEN)
        .append(headComponent(player).color(NamedTextColor.WHITE),
                Component.text(" "),
                player.displayName().colorIfAbsent(NamedTextColor.WHITE),
                Component.text("!", NamedTextColor.GREEN))))
    }

    handler<PlayerQuit> {
      effects(Broadcast(headComponent(player).append(Component.text(" "), player.displayName(), Component.text(" left the server", NamedTextColor.RED))))
    }
  }
}