diff --git a/src/main/java/in/twizmwaz/cardinal/chat/ChatConstant.java b/src/main/java/in/twizmwaz/cardinal/chat/ChatConstant.java index 1d60f6884..585ea5fd5 100644 --- a/src/main/java/in/twizmwaz/cardinal/chat/ChatConstant.java +++ b/src/main/java/in/twizmwaz/cardinal/chat/ChatConstant.java @@ -312,7 +312,42 @@ public enum ChatConstant { UI_MODE_IN_TIME("userInterface.modeInTime"), SNOWFLAKES_SNOWFLAKE("snowflakes.snowflake"), - SNOWFLAKES_SNOWFLAKES("snowflakes.snowflakes"); + SNOWFLAKES_SNOWFLAKES("snowflakes.snowflakes"), + + DEATH_EXPLOSION_SELF("deathMsg.explosionSelf"), + DEATH_EXPLOSION_PLAYER("deathMsg.explosionPlayer"), + DEATH_EXPLOSION("deathMsg.explosion"), + DEATH_CONTACT("deathMsg.contact"), + DEATH_DROWNING("deathMsg.drowning"), + DEATH_ATTACK_PLAYER_FISTS("deathMsg.attackPlayerFists"), + DEATH_ATTACK_PLAYER("deathMsg.attackPlayer"), + DEATH_ATTACK("deathMsg.attack"), + DEATH_FISTS("deathMsg.fists"), + DEATH_FALL_PLAYER_KNOCKED("deathMsg.fallPlayerKnocked"), + DEATH_FALL_PLAYER_SHOT("deathMsg.fallPlayerShot"), + DEATH_FALL_PLAYER_BLOWN("deathMsg.fallPlayerBlown"), + DEATH_SPLEEFED("deathMsg.spleefed"), + DEATH_FALL("deathMsg.fall"), + DEATH_FALLING_BLOCK("deathMsg.fallingBlock"), + DEATH_FIRE("deathMsg.fire"), + DEATH_LAVA("deathMsg.lava"), + DEATH_LIGHTNING("deathMsg.lightning"), + DEATH_POTION_PLAYER("deathMsg.potionPlayer"), + DEATH_POTION("deathMsg.potion"), + DEATH_PROJECTILE_PLAYER("deathMsg.projectilePlayer"), + DEATH_PROJECTILE("deathMsg.projectile"), + DEATH_STARVATION("deathMsg.starvation"), + DEATH_SUFFOCATION("deathMsg.suffocation"), + DEATH_SUICIDE("deathMsg.suicide"), + DEATH_THORNS_PLAYER("deathMsg.thornsPlayer"), + DEATH_THORNS("deathMsg.thorns"), + DEATH_VOID_PLAYER_KNOCKED("deathMsg.voidPlayerKnocked"), + DEATH_VOID_PLAYER_KNOCKED_FISTS("deathMsg.voidPlayerKnockedFists"), + DEATH_VOID_PLAYER_SHOT("deathMsg.voidPlayerShot"), + DEATH_VOID_PLAYER_BLOWN("deathMsg.voidPlayerBlown"), + DEATH_VOID("deathMsg.void"), + DEATH_WITHER("deathMsg.wither"), + DEATH_UNKNOWN("deathMsg.unknown"); private final String path; diff --git a/src/main/java/in/twizmwaz/cardinal/module/modules/deathMessages/DeathMessages.java b/src/main/java/in/twizmwaz/cardinal/module/modules/deathMessages/DeathMessages.java index b5dada277..97b56522a 100644 --- a/src/main/java/in/twizmwaz/cardinal/module/modules/deathMessages/DeathMessages.java +++ b/src/main/java/in/twizmwaz/cardinal/module/modules/deathMessages/DeathMessages.java @@ -1,6 +1,9 @@ package in.twizmwaz.cardinal.module.modules.deathMessages; +import in.twizmwaz.cardinal.chat.ChatConstant; +import in.twizmwaz.cardinal.chat.ChatMessage; import in.twizmwaz.cardinal.chat.UnlocalizedChatMessage; +import in.twizmwaz.cardinal.chat.LocalizedChatMessage; import in.twizmwaz.cardinal.event.CardinalDeathEvent; import in.twizmwaz.cardinal.module.Module; import in.twizmwaz.cardinal.module.modules.tracker.Cause; @@ -8,9 +11,15 @@ import in.twizmwaz.cardinal.module.modules.tracker.event.TrackerDamageEvent; import in.twizmwaz.cardinal.settings.Settings; import in.twizmwaz.cardinal.util.Teams; +import net.md_5.bungee.api.chat.BaseComponent; +import net.md_5.bungee.api.chat.HoverEvent; +import net.md_5.bungee.api.chat.TextComponent; +import net.md_5.bungee.api.chat.TranslatableComponent; +import net.minecraft.server.v1_8_R3.NBTTagCompound; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Material; +import org.bukkit.craftbukkit.v1_8_R3.inventory.CraftItemStack; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.entity.EntityDamageEvent.DamageCause; @@ -25,101 +34,192 @@ public void unload() { } + BaseComponent item; + + public void formatItem (org.bukkit.inventory.ItemStack itemStack) { + net.minecraft.server.v1_8_R3.ItemStack nms = CraftItemStack.asNMSCopy(itemStack); + NBTTagCompound tag = new NBTTagCompound(); + nms.save(tag); + BaseComponent finalItem = new TextComponent(""); + if (itemStack.hasItemMeta() && itemStack.getItemMeta().getDisplayName() != null) { + BaseComponent[] name = new TextComponent().fromLegacyText(itemStack.getItemMeta().getDisplayName()); + finalItem.addExtra(new TextComponent("[")); + for (BaseComponent component : name) { + component.setItalic(true); + finalItem.addExtra(component); + } + finalItem.addExtra(new TextComponent("]")); + } else { + finalItem = new TranslatableComponent(nms.a() + ".name"); + finalItem.setColor(net.md_5.bungee.api.ChatColor.GRAY); + } + if (!itemStack.getEnchantments().isEmpty()) { + finalItem.setColor(net.md_5.bungee.api.ChatColor.AQUA); + } + finalItem.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_ITEM, new BaseComponent[]{new TextComponent(tag.toString())})); + item = finalItem; + } + @EventHandler public void onCardinalDeath(CardinalDeathEvent event) { try { if (Teams.getTeamByPlayer(event.getPlayer()) != null) { - String name = Teams.getTeamColorByPlayer(event.getPlayer()) + event.getPlayer().getName(), deathMessage; + String name = Teams.getTeamColorByPlayer(event.getPlayer()) + event.getPlayer().getName(); + LocalizedChatMessage deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_UNKNOWN, name + ChatColor.GRAY); DamageCause cause = event.getPlayer().getLastDamageCause().getCause(); int fallDistance = Math.round(event.getPlayer().isInsideVehicle() ? event.getPlayer().getVehicle().getFallDistance() : event.getPlayer().getFallDistance()); if (cause.equals(DamageCause.BLOCK_EXPLOSION) || cause.equals(DamageCause.ENTITY_EXPLOSION)) { if (event.getKiller() != null) { if (event.getKiller().equals(event.getPlayer())) { - deathMessage = name + ChatColor.GRAY + " 'sploded"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_EXPLOSION_SELF, + name + ChatColor.GRAY); } else { - deathMessage = name + ChatColor.GRAY + " was blown up by " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY + "'s TNT"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_EXPLOSION_PLAYER, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY); } } else { - deathMessage = name + ChatColor.GRAY + " blew up"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_EXPLOSION, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.CONTACT)) { - deathMessage = name + ChatColor.GRAY + " was pricked to death"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_CONTACT, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.DROWNING)) { - deathMessage = name + ChatColor.GRAY + " forgot to breathe"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_DROWNING, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.ENTITY_ATTACK)) { if (event.getKiller() != null) { if (event.getKiller().getItemInHand().getType().equals(Material.AIR)) { - deathMessage = name + ChatColor.GRAY + " felt the fury of " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY + "'s fists"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_ATTACK_PLAYER_FISTS, name + ChatColor.GRAY, Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY); } else { - deathMessage = name + ChatColor.GRAY + " was slain by " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY + "'s " + (event.getKiller().getItemInHand().getEnchantments() != null && event.getKiller().getItemInHand().getEnchantments().size() > 0 ? "enchanted " : "") + event.getKiller().getItemInHand().getType().name().replaceAll("_", " ").toLowerCase(); + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_ATTACK_PLAYER, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY, + "/item/"); + formatItem(event.getKiller().getItemInHand()); } } else { - deathMessage = name + ChatColor.GRAY + " was slain"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_ATTACK, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.FALL)) { if (event.getTrackerDamageEvent() != null) { TrackerDamageEvent damageEvent = event.getTrackerDamageEvent(); Player killer = event.getKiller(); if (damageEvent.getType().equals(Type.SHOT)) { - deathMessage = name + ChatColor.GRAY + " was " + damageEvent.getType().name().toLowerCase() + (damageEvent.getDistance() == -1 ? "" : " (" + damageEvent.getDistance() + " blocks)") + " off a high place " + "(" + fallDistance + " blocks)" + " by " + Teams.getTeamColorByPlayer(killer) + killer.getName(); - } else { - deathMessage = name + ChatColor.GRAY + " was " + damageEvent.getType().name().toLowerCase() + " off a high place " + "(" + fallDistance + " blocks)" + " by " + Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY + "'s " + (damageEvent.getItem().getType().equals(Material.AIR) ? "fists of fury" : (damageEvent.getItem().getEnchantments() != null && damageEvent.getItem().getEnchantments().size() > 0 ? "enchanted " : "") + damageEvent.getItem().getType().name().replaceAll("_", " ").toLowerCase()); + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FALL_PLAYER_SHOT, + name + ChatColor.GRAY, + (damageEvent.getDistance() == -1 ? "?" : damageEvent.getDistance() + ""), + fallDistance + "", + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY); + } else if (damageEvent.getType().equals(Type.KNOCKED)) { + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FALL_PLAYER_KNOCKED, + new UnlocalizedChatMessage(name + ChatColor.GRAY), + new UnlocalizedChatMessage(fallDistance + ""), + new UnlocalizedChatMessage(Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY), + (damageEvent.getItem().getType().equals(Material.AIR) ? + new LocalizedChatMessage(ChatConstant.DEATH_FISTS) : + new UnlocalizedChatMessage("/item/"))); + formatItem(damageEvent.getItem()); + } else if (damageEvent.getType().equals(Type.BLOWN)){ + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FALL_PLAYER_BLOWN, + name + ChatColor.GRAY, + fallDistance + "", + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY); } } else { - deathMessage = name + ChatColor.GRAY + " hit the ground too hard (" + fallDistance + " blocks)"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FALL, + name + ChatColor.GRAY, + fallDistance + ""); } } else if (cause.equals(DamageCause.FALLING_BLOCK)) { - deathMessage = name + ChatColor.GRAY + " was squashed by a falling anvil"; - } else if (cause.equals(DamageCause.FIRE)) { - deathMessage = name + ChatColor.GRAY + " burned to death"; - } else if (cause.equals(DamageCause.FIRE_TICK)) { - deathMessage = name + ChatColor.GRAY + " burned to death"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FALLING_BLOCK, + name + ChatColor.GRAY); + } else if (cause.equals(DamageCause.FIRE) || cause.equals(DamageCause.FIRE_TICK)) { + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_FIRE, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.LAVA)) { - deathMessage = name + ChatColor.GRAY + " tried to swim in lava"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_LAVA, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.LIGHTNING)) { - deathMessage = name + ChatColor.GRAY + " was struck by lightning"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_LIGHTNING, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.MAGIC)) { if (event.getKiller() != null) { int distance = (int) Math.round(event.getPlayer().getLocation().distance(event.getKiller().getLocation())); - deathMessage = name + ChatColor.GRAY + " took " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY + "'s potion to the face (" + distance + " blocks)"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_POTION_PLAYER, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY, + distance + ""); } else { - deathMessage = name + ChatColor.GRAY + " took a potion to the face"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_POTION, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.PROJECTILE)) { if (event.getKiller() != null) { int distance = (int) Math.round(event.getPlayer().getLocation().distance(event.getKiller().getLocation())); - deathMessage = name + ChatColor.GRAY + " was shot by " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY + " (" + distance + " blocks)"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_PROJECTILE_PLAYER, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName() + ChatColor.GRAY, + distance + " "); } else { - deathMessage = name + ChatColor.GRAY + " was shot"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_PROJECTILE, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.STARVATION)) { - deathMessage = name + ChatColor.GRAY + " starved to death"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_STARVATION, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.SUFFOCATION)) { - deathMessage = name + ChatColor.GRAY + " suffocated in a wall"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_SUFFOCATION, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.SUICIDE)) { - deathMessage = name + ChatColor.GRAY + " died"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_SUICIDE, + name + ChatColor.GRAY); } else if (cause.equals(DamageCause.THORNS)) { if (event.getKiller() != null) { - deathMessage = name + ChatColor.GRAY + " died trying to hurt " + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName(); + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_THORNS_PLAYER, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(event.getKiller()) + event.getKiller().getName()); } else { - deathMessage = name + ChatColor.GRAY + " died trying to hurt an enemy"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_THORNS, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.VOID)) { if (event.getTrackerDamageEvent() != null) { TrackerDamageEvent damageEvent = event.getTrackerDamageEvent(); Player killer = event.getKiller(); if (damageEvent.getType().equals(Type.SHOT)) { - deathMessage = name + ChatColor.GRAY + " was " + damageEvent.getType().name().toLowerCase() + (damageEvent.getDistance() == -1 ? "" : " (" + damageEvent.getDistance() + " blocks)") + " out of the world by " + Teams.getTeamColorByPlayer(killer) + killer.getName(); - } else { - deathMessage = name + ChatColor.GRAY + " was " + damageEvent.getType().name().toLowerCase() + " out of the world by " + Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY + "'s " + (damageEvent.getCause().equals(Cause.TNT) ? "TNT" : (damageEvent.getItem().getType().equals(Material.AIR) ? "fists of fury" : (damageEvent.getItem().getEnchantments() != null && damageEvent.getItem().getEnchantments().size() > 0 ? "enchanted " : "") + damageEvent.getItem().getType().name().replaceAll("_", " ").toLowerCase())); + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_VOID_PLAYER_SHOT, + name + ChatColor.GRAY, + damageEvent.getDistance() + "", + Teams.getTeamColorByPlayer(killer) + killer.getName()); + } else if (damageEvent.getType().equals(Type.KNOCKED)){ + if (damageEvent.getItem().getType().equals(Material.AIR)){ + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_VOID_PLAYER_KNOCKED_FISTS, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY); + } else { + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_VOID_PLAYER_KNOCKED, + name + ChatColor.GRAY, Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY, + "/item/"); + formatItem(damageEvent.getItem()); + } + } else if (damageEvent.getType().equals(Type.BLOWN)){ + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_VOID_PLAYER_BLOWN, + name + ChatColor.GRAY, + Teams.getTeamColorByPlayer(killer) + killer.getName() + ChatColor.GRAY); } } else { - deathMessage = name + ChatColor.GRAY + " fell out of the world"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_VOID, + name + ChatColor.GRAY); } } else if (cause.equals(DamageCause.WITHER)) { - deathMessage = name + ChatColor.GRAY + " withered away"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_WITHER, + name + ChatColor.GRAY); } else { - deathMessage = name + ChatColor.GRAY + " died"; + deathMessage = new LocalizedChatMessage(ChatConstant.DEATH_SUICIDE, + name + ChatColor.GRAY); } for (Player player : Bukkit.getOnlinePlayers()) { boolean involved = false; @@ -128,74 +228,48 @@ public void onCardinalDeath(CardinalDeathEvent event) { } else if (event.getKiller() != null && event.getKiller().equals(player)) { involved = true; } - UnlocalizedChatMessage toSend = new UnlocalizedChatMessage(deathMessage); - if (Settings.getSettingByName("HighlightDeathMessages") != null && involved) { - if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("bold")) { - String message = deathMessage; - boolean bold = false; - boolean color = false; - for (int i = 0; i < message.length(); i++) { - if (message.charAt(i) == '§') { - color = true; - } else { - if (bold) { - message = message.substring(0, i) + ChatColor.BOLD + message.substring(i); - bold = false; - } - if (color) { - color = false; - bold = true; - } - } + boolean white = false; + if (Settings.getSettingByName("HighlightDeathMessages") != null && Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("white") && involved) { + white = true; + } + if (Settings.getSettingByName("DeathMessages") == null || (Settings.getSettingByName("DeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("all") || (Settings.getSettingByName("DeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("own") && involved))) { + String toSendMsg = white ? deathMessage.getMessage(player.getLocale()).replaceAll(ChatColor.GRAY + "", ChatColor.WHITE + "") : deathMessage.getMessage(player.getLocale()); + BaseComponent finalMessage = new TextComponent(""); + if (toSendMsg.contains("/item/")) { + String[] splitMessage = toSendMsg.split("/", 3); + BaseComponent[] message; + message = new TextComponent().fromLegacyText(splitMessage[0]); + for (BaseComponent component : message) { + finalMessage.addExtra(component); } - toSend = new UnlocalizedChatMessage(message); - } - if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("italics")) { - String message = deathMessage; - boolean italic = false; - boolean color = false; - for (int i = 0; i < message.length(); i++) { - if (message.charAt(i) == '§') { - color = true; - } else { - if (italic) { - message = message.substring(0, i) + ChatColor.ITALIC + message.substring(i); - italic = false; - } - if (color) { - color = false; - italic = true; - } + if (white && !item.toPlainText().contains("[") && !item.getColor().equals(net.md_5.bungee.api.ChatColor.AQUA)) { + item.setColor(net.md_5.bungee.api.ChatColor.WHITE); + } + finalMessage.addExtra(item); + if (splitMessage.length > 2) { + message = new TextComponent().fromLegacyText(splitMessage[2]); + for (BaseComponent component : message) { + finalMessage.addExtra(component); } } - toSend = new UnlocalizedChatMessage(message); - } - if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("white")) { - toSend = new UnlocalizedChatMessage(deathMessage.replaceAll(ChatColor.GRAY + "", ChatColor.WHITE + "")); + } else { + BaseComponent[] message; + message = new TextComponent().fromLegacyText(toSendMsg); + for (BaseComponent component : message) { + finalMessage.addExtra(component); + } } - if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("underline")) { - String message = deathMessage; - boolean underline = false; - boolean color = false; - for (int i = 0; i < message.length(); i++) { - if (message.charAt(i) == '§') { - color = true; - } else { - if (underline) { - message = message.substring(0, i) + ChatColor.UNDERLINE + message.substring(i); - underline = false; - } - if (color) { - color = false; - underline = true; - } - } + if (Settings.getSettingByName("HighlightDeathMessages") != null && !Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("white") && involved) { + if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("bold")) { + finalMessage.setBold(true); + } else if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("italics")) { + finalMessage.setItalic(true); + } else if (Settings.getSettingByName("HighlightDeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("underline")) { + finalMessage.setUnderlined(true); } - toSend = new UnlocalizedChatMessage(message); } - } - if (Settings.getSettingByName("DeathMessages") == null || (Settings.getSettingByName("DeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("all") || (Settings.getSettingByName("DeathMessages").getValueByPlayer(player).getValue().equalsIgnoreCase("own") && involved))) { - player.sendMessage(toSend.getMessage(player.getLocale())); + player.sendMessage(finalMessage); + } } } diff --git a/src/main/resources/lang/en.xml b/src/main/resources/lang/en.xml index a17ed6545..1bf3bdbf5 100644 --- a/src/main/resources/lang/en.xml +++ b/src/main/resources/lang/en.xml @@ -319,30 +319,29 @@ {0} felt the fury of {1}'s fists {0} was slain by {1}'s {2} {0} was slain - {0} was {1} off a high place ({2}) by {3}'s {4} - {0} was {1} off a high place ({2}) by {3} ({4}) - {0} was {1} off a high place ({2}) by {3}'s TNT - shot - knocked - blown + fists + {0} was knocked off a high place ({1} blocks) by {2}'s {3} + {0} was shot ({1} blocks) off a high place ({2} blocks) by {3} + {0} was blown off a high place ({1} blocks) by {2}'s TNT spleefed - {0} hit the ground too hard + {0} hit the ground too hard ({1} blocks) {0} was squashed by a falling anvil {0} burned to death {0} tried to swim in lava {0} was struck by lightning - {0} took {1}'s potion to the face + {0} took {1}'s potion to the face ({2} blocks) {0} took a potion to the face - {0} was shot by {1} + {0} was shot by {1} ({2} blocks) {0} was shot {0} starved to death {0} suffocated in a wall {0} died {0} died trying to hurt {1} {0} died trying to hurt an enemy - {0} was {1} out of the world by {3}'s {4} - {0} was {1} out of the world by {3} ({4}) - {0} was {1} out of the world by {3}'s TNT + {0} was knocked out of the world by {1}'s {2} + {0} was knocked out of the world by {1}'s fists + {0} was shot ({1} blocks) out of the world by {2} + {0} was blown out of the world by {1}'s TNT {0} fell out of the world {0} withered away {0} died from unknown causes