Created
October 30, 2017 01:57
-
-
Save aeshthetic/2e5cee824398ec5ad360e6e9571a0a58 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Main : JavaPlugin() { | |
override fun onEnable() { | |
server.pluginManager.registerEvents(MessageListener(), this) | |
} | |
override fun onDisable() {} | |
override fun onCommand(sender: CommandSender, command: Command, label: String, args: Array<out String>): Boolean { | |
if (sender !is Player || !args.isNotEmpty()) | |
return false | |
val player: Player = sender | |
when (command.name) { | |
"whisper" -> { | |
val recipient = Bukkit.getPlayer(args[0])?: return false | |
val message = args.slice(1.until(args.size)).joinToString(" ") | |
val isNear = player.isNear(recipient, 5.0, 5.0, 5.0) | |
if (isNear) { | |
for(receiver in listOf(player, recipient)) { | |
receiver.spigot().sendMessage(formatMessage(message, player, ChatColor.GREEN)) | |
} | |
} else { | |
player.spigot().sendMessage(TextComponent("It appears as though no one heard you").apply { isItalic = true }) | |
} | |
return (isNear) | |
} | |
"yell" -> { | |
val recipients: MutableList<Player> = (player.getNearbyEntities(100.0, 100.0, 100.0)) | |
.filter { it is Player } | |
.map {it as Player} | |
.toMutableList() | |
recipients.add(player) | |
val message = args.slice(0.until(args.size)).joinToString(" ") | |
for (recipient in recipients) { | |
recipient.spigot().sendMessage(formatMessage(message, player, ChatColor.DARK_GREEN)) | |
} | |
player.foodLevel -= 1 | |
if (recipients.size <= 1) { | |
player.spigot().sendMessage(TextComponent("It appears as though no one heard you").apply { isItalic = true }) | |
return false | |
} | |
return true | |
} | |
} | |
return false | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment