From b18d0965f217411db9ef6a09679b620e1e82b102 Mon Sep 17 00:00:00 2001 From: 1whohears <1whohears28@gmail.com> Date: Sat, 28 May 2022 22:53:57 -0500 Subject: [PATCH] script player.sendMessage uses String as color parameter --- .../npcs/scripted/entity/ScriptPlayer.java | 34 +++++++++++++++++++ .../scripted/interfaces/entity/IPlayer.java | 4 +++ 2 files changed, 38 insertions(+) diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java index b812d8e70..2ca8be221 100644 --- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java +++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java @@ -277,6 +277,40 @@ public class ScriptPlayer extends ScriptLivingBase chat.setChatStyle(style); player.addChatMessage(chat); } + + public void sendMessage(String message, String color, boolean bold, boolean italic, boolean underlined) { + EnumChatFormatting c = getColor(color); + if (c == null) return; + sendMessage(message, c, bold, italic, underlined); + } + + public void sendMessage(String message, String color, boolean bold, boolean italic, boolean obfuscated, boolean strikethrough, boolean underlined) { + EnumChatFormatting c = getColor(color); + if (c == null) return; + sendMessage(message, c, bold, italic, obfuscated, strikethrough, underlined); + } + + private EnumChatFormatting getColor(String color) { + switch (color) { + case "black": return EnumChatFormatting.BLACK; + case "dark_blue": return EnumChatFormatting.DARK_BLUE; + case "dark_green": return EnumChatFormatting.DARK_GREEN; + case "dark_aqua": return EnumChatFormatting.DARK_AQUA; + case "dark_red": return EnumChatFormatting.DARK_RED; + case "dark_purple": return EnumChatFormatting.DARK_PURPLE; + case "gold": return EnumChatFormatting.GOLD; + case "gray": return EnumChatFormatting.GRAY; + case "dark_gray": return EnumChatFormatting.DARK_GRAY; + case "blue": return EnumChatFormatting.BLUE; + case "green": return EnumChatFormatting.GREEN; + case "aqua": return EnumChatFormatting.AQUA; + case "red": return EnumChatFormatting.RED; + case "light_purple": return EnumChatFormatting.LIGHT_PURPLE; + case "yellow": return EnumChatFormatting.YELLOW; + case "white": return EnumChatFormatting.WHITE; + default: return null; + } + } /** * @return Return gamemode. 0: Survival, 1: Creative, 2: Adventure diff --git a/src/main/java/noppes/npcs/scripted/interfaces/entity/IPlayer.java b/src/main/java/noppes/npcs/scripted/interfaces/entity/IPlayer.java index 2dbd2c72b..e7898cf08 100644 --- a/src/main/java/noppes/npcs/scripted/interfaces/entity/IPlayer.java +++ b/src/main/java/noppes/npcs/scripted/interfaces/entity/IPlayer.java @@ -99,6 +99,10 @@ public interface IPlayer extends IEntityLivingBase void sendMessage(String message, EnumChatFormatting color, boolean bold, boolean italic, boolean underlined); void sendMessage(String message, EnumChatFormatting color, boolean bold, boolean italic, boolean obfuscated, boolean strikethrough, boolean underlined); + + void sendMessage(String message, String color, boolean bold, boolean italic, boolean underlined); + + void sendMessage(String message, String color, boolean bold, boolean italic, boolean obfuscated, boolean strikethrough, boolean underlined); /** * @return Return gamemode. 0: Survival, 1: Creative, 2: Adventure