From a347a16c06327b882fc7aabb4f9e2084e8fe779b Mon Sep 17 00:00:00 2001 From: Sn0wStorm Date: Thu, 15 Aug 2013 18:17:05 +0200 Subject: [PATCH] Show Effects on Potion, Changed Lore --- config.yml | 14 +- src/com/dre/brewery/BIngredients.java | 62 ++++++-- src/com/dre/brewery/BPlayer.java | 2 +- src/com/dre/brewery/BRecipe.java | 9 +- src/com/dre/brewery/Brew.java | 133 ++++++++++++------ src/com/dre/brewery/P.java | 35 ++++- src/com/dre/brewery/Wakeup.java | 49 ++++--- .../brewery/listeners/CommandListener.java | 55 ++++---- 8 files changed, 229 insertions(+), 130 deletions(-) diff --git a/config.yml b/config.yml index 68356a9..412621e 100644 --- a/config.yml +++ b/config.yml @@ -15,7 +15,7 @@ enableHome: true homeType: 'cmd: home' # Ob der Spieler nach etwas kürzerem Ausloggen an einem zufälligen Ort "aufwacht" (diese müssen durch '/br Wakeup add' von einem Admin festgelegt werden) -# Der Spieler wacht nur an einem Ort auf, der sich in seiner jetzigen Welt befindet. +# Der Spieler wacht an dem nähesten zweier zufälliger Orte aus seiner Welt auf. enableWake: true # Der Text, den der Spieler beim Aufwachen sieht @@ -34,7 +34,7 @@ enablePuke: true # Item das beim Erbrechen mehrfach unaufsammelbar fallen gelassen wird pukeItem: SOUL_SAND -# Konsumierbares Item/. Senkt den Alkoholpegel um % wenn konsumiert. +# Konsumierbares Item/Stärke. Senkt den Alkoholpegel um wenn konsumiert. drainItems: - BREAD/4 - MILK_BUCKET/2 @@ -54,7 +54,8 @@ autosave: 3 # color: Farbe des Getränks nach destillieren/reifen. DARK_RED, RED, BRIGHT_RED, ORANGE, PINK, BLUE, CYAN, WATER, GREEN, BLACK, GREY, BRIGHT_GREY # difficulty: 1-10 Genauigkeit der Einhaltung der Vorgaben (1 = ungenau/einfach 10 = sehr genau/schwer) # alcohol: Alkoholgehalt 0-100 in absoluter Menge bei perfektem Getränk (wird dem Spieler hinzugefügt, bei 100 = tot) -# effect: Auflistung Effekt/Dauer Besonderere Trank-Effekte beim Trinken, Dauer in sek. Siehe: http://jd.bukkit.org/rb/apidocs/org/bukkit/potion/PotionEffectType.html +# effects: Auflistung Effekt/Dauer Besonderere Trank-Effekte beim Trinken, Dauer in sek. Ein 'X' an den Namen anhängen, um ihn zu verbergen. Bsp: POISONX/10 +# (WEAKNESS, INCREASE_DAMAGE, SLOW und SPEED sind immer verborgen.) Mögliche Effekte: http://jd.bukkit.org/rb/apidocs/org/bukkit/potion/PotionEffectType.html recipes: 1: @@ -114,7 +115,7 @@ recipes: difficulty: 4 alcohol: 12 effects: - - WATER_BREATHING/150 + - WATER_BREATHINGX/150 6: name: Bitterer Rum/Würziger Rum/Goldener Rum ingredients: @@ -128,8 +129,6 @@ recipes: alcohol: 30 effects: - FIRE_RESISTANCE/100 - - WEAKNESS/30 - - POISON/20 7: name: Abgeranzter Vodka/Vodka/Russischer Vodka ingredients: @@ -142,6 +141,7 @@ recipes: alcohol: 20 effects: - WEAKNESS/15 + - POISON/10 8: name: minderwertiger Absinth/Absinth/Starker Absinth ingredients: @@ -152,7 +152,7 @@ recipes: difficulty: 8 alcohol: 45 effects: - - POISON/10 + - POISON/20 9: name: Kartoffelsuppe ingredients: diff --git a/src/com/dre/brewery/BIngredients.java b/src/com/dre/brewery/BIngredients.java index b46a774..bd99186 100644 --- a/src/com/dre/brewery/BIngredients.java +++ b/src/com/dre/brewery/BIngredients.java @@ -26,12 +26,22 @@ public class BIngredients { public BIngredients() { } - // Init a copy of BIngredients with existing values + // Load from File public BIngredients(Map ingredients, int cookedTime) { - this.ingredients.putAll(ingredients); + this.ingredients = ingredients; this.cookedTime = cookedTime; } + //returns the recipe with the given name + public static BRecipe getRecipeByName(String name) { + for (BRecipe recipe : recipes) { + if (recipe.getName(5).equalsIgnoreCase(name)) { + return recipe; + } + } + return null; + } + // Add an ingredient to this public void add(Material ingredient) { if (ingredients.containsKey(ingredient)) { @@ -56,19 +66,20 @@ public class BIngredients { int uid = Brew.generateUID(); if (cookRecipe != null) { - // Potion is best with cooking only, can still be destilled, etc. + // Potion is best with cooking only int quality = (int) Math.round((getIngredientQuality(cookRecipe) + getCookingQuality(cookRecipe, false)) / 2.0); P.p.log("cooked potion has Quality: " + quality); - new Brew(uid, quality, cookRecipe, new BIngredients(ingredients, cookedTime)); + Brew brew = new Brew(uid, quality, cookRecipe, clone()); + Brew.addOrReplaceEffects(potionMeta, brew.getEffects()); cookedName = cookRecipe.getName(quality); - potion.setDurability(Brew.PotionColor.valueOf(cookRecipe.getColor()).getColorId(true)); + potion.setDurability(Brew.PotionColor.valueOf(cookRecipe.getColor()).getColorId(false)); } else { // new base potion - new Brew(uid, new BIngredients(ingredients, cookedTime)); + new Brew(uid, clone()); - if (state == 1) { + if (state <= 1) { cookedName = "Schlammiger Sud"; potion.setDurability(Brew.PotionColor.BLUE.getColorId(false)); } else { @@ -89,7 +100,7 @@ public class BIngredients { potion.setDurability(Brew.PotionColor.CYAN.getColorId(true)); } - potionMeta.setDisplayName(P.p.white() + cookedName); + potionMeta.setDisplayName(P.p.color("&f" + cookedName)); // This effect stores the UID in its Duration potionMeta.addCustomEffect((PotionEffectType.REGENERATION).createEffect((uid * 4), 0), true); potion.setItemMeta(potionMeta); @@ -106,14 +117,19 @@ public class BIngredients { return count; } - //returns the recipe with the given name - public static BRecipe getRecipeByName(String name) { - for (BRecipe recipe : recipes) { - if (recipe.getName(5).equalsIgnoreCase(name)) { - return recipe; - } + public void qualityLore(PotionMeta meta, BRecipe recipe, boolean distilled) { + // Ingredients + String prefix = Brew.getQualityColor(getIngredientQuality(recipe)); + String lore = "Zutaten"; + Brew.addOrReplaceLore(meta, prefix, lore); + + // Cookingtime + prefix = Brew.getQualityColor(getCookingQuality(recipe, distilled)) + cookedTime + " minute"; + if (cookedTime > 1) { + prefix = prefix + "n"; } - return null; + lore = " gegärt"; + Brew.addOrReplaceLore(meta, prefix, lore); } // best recipe for current state of potion, STILL not always returns the @@ -250,6 +266,14 @@ public class BIngredients { return 0; } + // returns pseudo quality of distilling. 0 if doesnt match the need of the recipes distilling + public int getDistillQuality(BRecipe recipe, int distillRuns) { + if (recipe.needsDistilling() != distillRuns > 0) { + return 0; + } + return 10 - Math.abs(recipe.getDistillRuns() - distillRuns); + } + // returns the quality regarding the barrel wood conditioning given Recipe public int getWoodQuality(BRecipe recipe, byte wood) { if (recipe.getWood() == 0x8) { @@ -274,6 +298,14 @@ public class BIngredients { return 0; } + // Creates a copy ingredients + public BIngredients clone() { + BIngredients copy = new BIngredients(); + copy.ingredients.putAll(ingredients); + copy.cookedTime = cookedTime; + return copy; + } + // saves data into ingredient section of Brew/BCauldron public void save(ConfigurationSection config) { if (cookedTime != 0) { diff --git a/src/com/dre/brewery/BPlayer.java b/src/com/dre/brewery/BPlayer.java index 2a4205a..c083b9d 100644 --- a/src/com/dre/brewery/BPlayer.java +++ b/src/com/dre/brewery/BPlayer.java @@ -382,7 +382,7 @@ public class BPlayer { Map effects = brew.getEffects(); if (effects != null) { for (Map.Entry entry : effects.entrySet()) { - PotionEffectType type = PotionEffectType.getByName(entry.getKey()); + PotionEffectType type = PotionEffectType.getByName(entry.getKey().replace("X", "")); if (type != null) { int duration = (entry.getValue() / 8) * brew.getQuality() * 20; int amplifier = brew.getQuality() / 3; diff --git a/src/com/dre/brewery/BRecipe.java b/src/com/dre/brewery/BRecipe.java index 92b74dc..d1c489d 100644 --- a/src/com/dre/brewery/BRecipe.java +++ b/src/com/dre/brewery/BRecipe.java @@ -46,10 +46,15 @@ public class BRecipe { if (effectStringList != null) { for (String effectString : effectStringList) { String[] effectSplit = effectString.split("/"); + String effect = effectSplit[0]; + if (effect.equalsIgnoreCase("WEAKNESS") || effect.equalsIgnoreCase("INCREASE_DAMAGE") || effect.equalsIgnoreCase("SLOW") || effect.equalsIgnoreCase("SPEED") || effect.equalsIgnoreCase("REGERATION")) { + // hide these effects as they put crap into lore + effect = effect + "X"; + } if (effectSplit.length > 1) { - effects.put(effectSplit[0], P.p.parseInt(effectSplit[1])); + effects.put(effect, P.p.parseInt(effectSplit[1])); } else { - effects.put(effectSplit[0], 20); + effects.put(effect, 20); } } } diff --git a/src/com/dre/brewery/Brew.java b/src/com/dre/brewery/Brew.java index 39e8a4a..50d6b5d 100644 --- a/src/com/dre/brewery/Brew.java +++ b/src/com/dre/brewery/Brew.java @@ -181,18 +181,23 @@ public class Brew { BRecipe recipe = brew.ingredients.getdistillRecipe(); if (recipe != null) { + // distillRuns will have an effect on the amount of alcohol, not the quality brew.quality = brew.calcQuality(recipe, (byte) 0, true); brew.distillRuns += 1; - // distillRuns will have an effect on the amount of alcohol, not the quality - if (brew.distillRuns > 1) { - List lore = new ArrayList(); - lore.add(brew.distillRuns + " fach Destilliert"); - potionMeta.setLore(lore); - } brew.currentRecipe = recipe; + + // Distill Lore + String lore = "destilliert"; + String prefix = P.p.color("&7"); + if (brew.distillRuns > 1) { + prefix = prefix + brew.distillRuns + "-fach "; + } + addOrReplaceLore(potionMeta, prefix, lore); + addOrReplaceEffects(potionMeta, brew.getEffects()); + P.p.log("destilled " + recipe.getName(5) + " has Quality: " + brew.quality + ", alc: " + brew.calcAlcohol()); - potionMeta.setDisplayName(P.p.white() + recipe.getName(brew.quality)); + potionMeta.setDisplayName(P.p.color("&f" + recipe.getName(brew.quality))); // if the potion should be further distillable if (recipe.getDistillRuns() > 1 && brew.distillRuns <= 5) { @@ -201,7 +206,7 @@ public class Brew { slotItem.setDurability(PotionColor.valueOf(recipe.getColor()).getColorId(false)); } } else { - potionMeta.setDisplayName(P.p.white() + "Undefinierbares Destillat"); + potionMeta.setDisplayName(P.p.color("&f" + "Undefinierbares Destillat")); slotItem.setDurability(PotionColor.GREY.getColorId(brew.distillRuns <= 5)); } @@ -219,51 +224,89 @@ public class Brew { if (brew.ageTime > 0.5) { BRecipe recipe = brew.ingredients.getAgeRecipe(wood, brew.ageTime, brew.distillRuns > 0); if (recipe != null) { - //if (!recipe.needsDistilling() || brew.distillRuns > 0) { + brew.quality = brew.calcQuality(recipe, wood, brew.distillRuns > 0); + brew.currentRecipe = recipe; + P.p.log("Final " + recipe.getName(5) + " has Quality: " + brew.quality); - brew.quality = brew.calcQuality(recipe, wood, brew.distillRuns > 0); - brew.currentRecipe = recipe; - P.p.log("Final " + recipe.getName(5) + " has Quality: " + brew.quality); - - if (brew.ageTime >= 2) { - List lore; - String newLore; - int index = 0; - - if (brew.ageTime < 201) { - newLore = (int) Math.floor(brew.ageTime) + " Jahre Fassgereift"; - } else { - newLore = "Hunderte Jahre Fassgereift"; - } - - if (potionMeta.hasLore()) { - lore = potionMeta.getLore(); - while (index < lore.size()) { - String existingLore = lore.get(index); - if (existingLore.contains("Jahre Fassgereift")) { - lore.set(index, newLore); - break; - } - index++; - } - } else { - lore = new ArrayList(); - lore.add(newLore); - } - potionMeta.setLore(lore); + if (brew.ageTime >= 1) { + String lore = " Fassgereift"; + String prefix = P.p.color("&7"); + if (brew.ageTime == 1) { + prefix = prefix + "Ein Jahr"; + } else if (brew.ageTime < 201) { + prefix = prefix + (int) Math.floor(brew.ageTime) + " Jahre"; + } else { + prefix = prefix + "Hunderte Jahre"; } + addOrReplaceLore(potionMeta, prefix, lore); + addOrReplaceEffects(potionMeta, brew.getEffects()); + } - potionMeta.setDisplayName(P.p.white() + recipe.getName(brew.quality)); - item.setDurability(PotionColor.valueOf(recipe.getColor()).getColorId(false)); - item.setItemMeta(potionMeta); - //} + potionMeta.setDisplayName(P.p.color("&f" + recipe.getName(brew.quality))); + item.setDurability(PotionColor.valueOf(recipe.getColor()).getColorId(false)); + item.setItemMeta(potionMeta); } } } } - public PotionMeta addQualityLore(PotionMeta meta, String prefix, String lore) { - return null; + public static void addOrReplaceEffects(PotionMeta meta, Map effects) { + if (effects != null) { + for (Map.Entry entry : effects.entrySet()) { + if (!entry.getKey().endsWith("X")) { + PotionEffectType type = PotionEffectType.getByName(entry.getKey()); + if (type != null) { + meta.addCustomEffect(type.createEffect(0, 0), true); + } + } + } + + } + } + + public static void addOrReplaceLore(PotionMeta meta, String prefix, String lore) { + if (meta.hasLore()) { + List existingLore = meta.getLore(); + int index = indexOfSubstring(existingLore, lore); + if (index > -1) { + existingLore.set(index, prefix + lore); + } else { + existingLore.add(prefix + lore); + } + meta.setLore(existingLore); + return; + } + List newLore = new ArrayList(); + newLore.add(""); + newLore.add(prefix + lore); + meta.setLore(newLore); + } + + public static int indexOfSubstring(List list, String substring) { + for (int index = 0; index < list.size(); index++) { + String string = list.get(index); + if (string.contains(substring)) { + return index; + } + } + return -1; + } + + // gets the Color that represents a quality in Lore + public static String getQualityColor(int quality) { + String color; + if (quality > 8) { + color = "&a"; + } else if (quality > 6) { + color = "&e"; + } else if (quality > 4) { + color = "&6"; + } else if (quality > 2) { + color = "&c"; + } else { + color = "&4"; + } + return P.p.color(color); } // Saves all data diff --git a/src/com/dre/brewery/P.java b/src/com/dre/brewery/P.java index ca36291..ec4253b 100644 --- a/src/com/dre/brewery/P.java +++ b/src/com/dre/brewery/P.java @@ -108,7 +108,7 @@ public class P extends JavaPlugin { } public void msg(CommandSender sender, String msg) { - sender.sendMessage(ChatColor.DARK_GREEN + "[Brewery] " + ChatColor.WHITE + msg); + sender.sendMessage(color("&2[Brewery] &f" + msg)); } public void log(String msg) { @@ -459,21 +459,46 @@ public class P extends JavaPlugin { page = 1; } - sender.sendMessage(ChatColor.GRAY + "-------------- " + ChatColor.WHITE + "Seite " + ChatColor.GOLD + page + ChatColor.WHITE + "/" + ChatColor.GOLD + pages + ChatColor.GRAY + " --------------"); + sender.sendMessage(color("&7-------------- &fSeite &6" + page + "&f/&6" + pages + " &7--------------")); ListIterator iter = strings.listIterator((page - 1) * 7); for (int i = 0; i < 7; i++) { if (iter.hasNext()) { - sender.sendMessage(iter.next()); + sender.sendMessage(color(iter.next())); } else { break; } } } - public String white() { - return ChatColor.WHITE.toString(); + public String color(String msg) { + if (msg != null) { + msg = msg.replace("&0", ChatColor.getByChar("0").toString()); + msg = msg.replace("&1", ChatColor.getByChar("1").toString()); + msg = msg.replace("&2", ChatColor.getByChar("2").toString()); + msg = msg.replace("&3", ChatColor.getByChar("3").toString()); + msg = msg.replace("&4", ChatColor.getByChar("4").toString()); + msg = msg.replace("&5", ChatColor.getByChar("5").toString()); + msg = msg.replace("&6", ChatColor.getByChar("6").toString()); + msg = msg.replace("&7", ChatColor.getByChar("7").toString()); + msg = msg.replace("&8", ChatColor.getByChar("8").toString()); + msg = msg.replace("&9", ChatColor.getByChar("9").toString()); + msg = msg.replace("&a", ChatColor.getByChar("a").toString()); + msg = msg.replace("&b", ChatColor.getByChar("b").toString()); + msg = msg.replace("&c", ChatColor.getByChar("c").toString()); + msg = msg.replace("&d", ChatColor.getByChar("d").toString()); + msg = msg.replace("&e", ChatColor.getByChar("e").toString()); + msg = msg.replace("&f", ChatColor.getByChar("f").toString()); + msg = msg.replace("&k", ChatColor.getByChar("k").toString()); + msg = msg.replace("&l", ChatColor.getByChar("l").toString()); + msg = msg.replace("&m", ChatColor.getByChar("m").toString()); + msg = msg.replace("&n", ChatColor.getByChar("n").toString()); + msg = msg.replace("&o", ChatColor.getByChar("o").toString()); + msg = msg.replace("&r", ChatColor.getByChar("r").toString()); + } + + return msg; } diff --git a/src/com/dre/brewery/Wakeup.java b/src/com/dre/brewery/Wakeup.java index b50775d..fc35489 100644 --- a/src/com/dre/brewery/Wakeup.java +++ b/src/com/dre/brewery/Wakeup.java @@ -5,7 +5,6 @@ import java.util.Iterator; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.command.CommandSender; -import org.bukkit.ChatColor; import org.bukkit.Location; import org.bukkit.entity.Player; @@ -13,10 +12,10 @@ public class Wakeup { public static ArrayList wakeups = new ArrayList(); public static P p = P.p; - public static ChatColor g = ChatColor.GOLD; - public static ChatColor w = ChatColor.WHITE; - public static ChatColor r = ChatColor.RED; - public static ChatColor gr = ChatColor.GREEN; + //public static ChatColor g = ChatColor.GOLD; + //public static ChatColor w = ChatColor.WHITE; + //public static ChatColor r = ChatColor.RED; + //public static ChatColor gr = ChatColor.GREEN; public static int checkId = -1; public static Player checkPlayer = null; @@ -51,7 +50,7 @@ public class Wakeup { worldWakes.remove(w1); while (!w1.check()) { - p.errorLog("Please Check Wakeup-Location with id: " + g + wakeups.indexOf(w1)); + p.errorLog("Please Check Wakeup-Location with id: &6" + wakeups.indexOf(w1)); w1 = calcRandom(worldWakes); if (w1 == null) { @@ -65,7 +64,7 @@ public class Wakeup { worldWakes.remove(w2); while (!w2.check()) { - p.errorLog("Please Check Wakeup-Location with id: " + g + wakeups.indexOf(w2)); + p.errorLog("Please Check Wakeup-Location with id: &6" + wakeups.indexOf(w2)); w2 = calcRandom(worldWakes); if (w2 == null) { @@ -94,16 +93,16 @@ public class Wakeup { Player player = (Player) sender; wakeups.add(new Wakeup(player.getLocation())); - p.msg(sender, gr + "Aufwachpunkt mit id: " + g + (wakeups.size() - 1) + gr + " wurde erfolgreich erstellt!"); + p.msg(sender, "&aAufwachpunkt mit id: &6" + (wakeups.size() - 1) + " &awurde erfolgreich erstellt!"); } else { - p.msg(sender, r + "Dieser Befehl kann nur als Spieler ausgeführt werden"); + p.msg(sender, "&cDieser Befehl kann nur als Spieler ausgeführt werden"); } } public static void remove(CommandSender sender, int id) { if (wakeups.isEmpty() || id < 0 || id >= wakeups.size()) { - p.msg(sender, r +"Der Aufwachpunkt mit der id: " + g + id + r + " existiert nicht!"); + p.msg(sender, "&cDer Aufwachpunkt mit der id: &6" + id + " &cexistiert nicht!"); return; } @@ -111,16 +110,16 @@ public class Wakeup { if (wakeup.active) { wakeup.active = false; - p.msg(sender, gr + "Der Aufwachpunkt mit der id: " + g + id + gr + " wurde erfolgreich gelöscht!"); + p.msg(sender, "&aDer Aufwachpunkt mit der id: &6" + id + " &awurde erfolgreich gelöscht!"); } else { - p.msg(sender, r + "Der Aufwachpunkt mit der id: " + g + id + r + " wurde bereits gelöscht!"); + p.msg(sender, "&cDer Aufwachpunkt mit der id: &6" + id + " &cwurde bereits gelöscht!"); } } public static void list(CommandSender sender, int page, String worldOnly) { if (wakeups.isEmpty()) { - p.msg(sender, r + "Es wurden noch keine Aufwachpunkte erstellt!"); + p.msg(sender, "&cEs wurden noch keine Aufwachpunkte erstellt!"); return; } @@ -129,7 +128,7 @@ public class Wakeup { Wakeup wakeup = wakeups.get(id); - String s = ChatColor.STRIKETHROUGH.toString(); + String s = "&m"; if (wakeup.active) { s = ""; } @@ -141,7 +140,7 @@ public class Wakeup { int y = (int) wakeup.loc.getY(); int z = (int) wakeup.loc.getZ(); - locs.add(g + s + id + w + s + ": " + world + " " + x + "," + y + "," + z); + locs.add("&6" + s + id + "&f" + s + ": " + world + " " + x + "," + y + "," + z); } } p.list(sender, locs, page); @@ -153,7 +152,7 @@ public class Wakeup { if (!all) { if (wakeups.isEmpty() || id >= wakeups.size()) { - p.msg(sender, r + "Der Aufwachpunkt mit der id: " + g + id + r + " existiert nicht!"); + p.msg(sender, "&cDer Aufwachpunkt mit der id: &6" + id + "&c existiert nicht!"); return; } @@ -165,12 +164,12 @@ public class Wakeup { int x = (int) wakeup.loc.getX(); int y = (int) wakeup.loc.getY(); int z = (int) wakeup.loc.getZ(); - p.msg(sender, r + "Der Aufwachpunkt mit der id: " + g + id + r + " An Position " + g + world + " " + x + "," + y + "," + z + r + " ist mit Blöcken gefüllt!"); + p.msg(sender, "&cDer Aufwachpunkt mit der id: &6" + id + "&c An Position &6" + world + " " + x + "," + y + "," + z + "&c ist mit Blöcken gefüllt!"); } } else { if (wakeups.isEmpty()) { - p.msg(sender, r + "Es wurden noch keine Aufwachpunkte erstellt!"); + p.msg(sender, "&cEs wurden noch keine Aufwachpunkte erstellt!"); return; } if (checkPlayer != null && checkPlayer != player) { @@ -182,7 +181,7 @@ public class Wakeup { } else { - p.msg(sender, r + "Dieser Befehl kann nur als Spieler ausgeführt werden"); + p.msg(sender, "&cDieser Befehl kann nur als Spieler ausgeführt werden"); } } @@ -193,7 +192,7 @@ public class Wakeup { public static void tpNext() { checkId++; if (checkId >= wakeups.size()) { - p.msg(checkPlayer, gr + "Dies war der letzte Aufwachpunkt"); + p.msg(checkPlayer, "&aDies war der letzte Aufwachpunkt"); checkId = -1; checkPlayer = null; return; @@ -211,23 +210,23 @@ public class Wakeup { int z = (int) wakeup.loc.getZ(); if (wakeup.check()) { - p.msg(checkPlayer, "Teleport zu Aufwachpunkt mit der id: " + g + checkId + w + " An Position: " + g + world + " " + x + "," + y + "," + z); + p.msg(checkPlayer, "Teleport zu Aufwachpunkt mit der id: &6" + checkId + "&f An Position: &6" + world + " " + x + "," + y + "," + z); checkPlayer.teleport(wakeup.loc); } else { - p.msg(checkPlayer, r + "Der Aufwachpunkt mit der id: " + g + checkId + r + " An Position " + g + world + " " + x + "," + y + "," + z + r + " ist mit Blöcken gefüllt!"); + p.msg(checkPlayer, "&cDer Aufwachpunkt mit der id: &6" + checkId + "&c An Position &6" + world + " " + x + "," + y + "," + z + "&c ist mit Blöcken gefüllt!"); } p.msg(checkPlayer, "Zum nächsten Aufwachpunkt: Mit Faust in die Luft schlagen"); - p.msg(checkPlayer, "Zum Abbrechen: " + ChatColor.BLUE + "/br Wakeup Cancel"); + p.msg(checkPlayer, "Zum Abbrechen: &9/br Wakeup Cancel"); } public static void cancel(CommandSender sender) { if (checkPlayer != null) { checkPlayer = null; checkId = -1; - p.msg(sender, g + "Aufwachpunkte-Check wurde abgebrochen"); + p.msg(sender, "&6Aufwachpunkte-Check wurde abgebrochen"); return; } - p.msg(sender, r + "Es läuft kein Aufwachpunkte-Check"); + p.msg(sender, "&cEs läuft kein Aufwachpunkte-Check"); } diff --git a/src/com/dre/brewery/listeners/CommandListener.java b/src/com/dre/brewery/listeners/CommandListener.java index 62760bb..acb5fa6 100644 --- a/src/com/dre/brewery/listeners/CommandListener.java +++ b/src/com/dre/brewery/listeners/CommandListener.java @@ -5,7 +5,6 @@ import java.util.ArrayList; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; -import org.bukkit.ChatColor; import org.bukkit.entity.Player; import com.dre.brewery.P; @@ -15,10 +14,6 @@ import com.dre.brewery.BPlayer; public class CommandListener implements CommandExecutor { public P p = P.p; - public ChatColor g = ChatColor.GOLD; - public ChatColor b = ChatColor.BLUE; - public ChatColor r = ChatColor.RED; - public ChatColor gr = ChatColor.GREEN; @Override public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { @@ -36,9 +31,9 @@ public class CommandListener implements CommandExecutor { if (p.permission.has(sender, "brewery.cmd.reload")) { p.reload(); - p.msg(sender, gr + "Config wurde neu eingelesen"); + p.msg(sender, "&aConfig wurde neu eingelesen"); } else { - p.msg(sender, r + "Du hast keine Rechte dies zu tun!"); + p.msg(sender, "&cDu hast keine Rechte dies zu tun!"); } } else if (cmd.equalsIgnoreCase("wakeup")) { @@ -46,7 +41,7 @@ public class CommandListener implements CommandExecutor { if (p.permission.has(sender, "brewery.cmd.wakeup")) { cmdWakeup(sender, args); } else { - p.msg(sender, r + "Du hast keine Rechte dies zu tun!"); + p.msg(sender, "&cDu hast keine Rechte dies zu tun!"); } } else if (cmd.equalsIgnoreCase("create")) { @@ -59,13 +54,13 @@ public class CommandListener implements CommandExecutor { if (p.permission.has(sender, "brewery.cmd.infoOther")) { cmdInfo(sender, args[1]); } else { - p.msg(sender, r + "Du hast keine Rechte dies zu tun!"); + p.msg(sender, "&cDu hast keine Rechte dies zu tun!"); } } else { if (p.permission.has(sender, "brewery.cmd.info")) { cmdInfo(sender, null); } else { - p.msg(sender, r + "Du hast keine Rechte dies zu tun!"); + p.msg(sender, "&cDu hast keine Rechte dies zu tun!"); } } @@ -81,14 +76,14 @@ public class CommandListener implements CommandExecutor { if (p.permission.has(sender, "brewery.cmd.player")) { cmdPlayer(sender, args); } else { - p.msg(sender, r + "Du hast keine Rechte dies zu tun!"); + p.msg(sender, "&cDu hast keine Rechte dies zu tun!"); } } } else { p.msg(sender, "Unbekannter Befehl."); - p.msg(sender, "benutze " + g + "/br help " + ChatColor.WHITE + "um die Hilfe anzuzeigen"); + p.msg(sender, "benutze &6/br help &fum die Hilfe anzuzeigen"); } } @@ -106,7 +101,7 @@ public class CommandListener implements CommandExecutor { ArrayList commands = getCommands(sender); if (page == 1) { - p.msg(sender, g + p.getDescription().getName() + " v" + p.getDescription().getVersion()); + p.msg(sender, "&6" + p.getDescription().getName() + " v" + p.getDescription().getVersion()); } p.list(sender, commands, page); @@ -116,31 +111,31 @@ public class CommandListener implements CommandExecutor { public ArrayList getCommands(CommandSender sender) { ArrayList cmds = new ArrayList(); - cmds.add(g + "/br help " + b + "Zeigt eine bestimmte Hilfeseite an"); + cmds.add("&6/br help &9Zeigt eine bestimmte Hilfeseite an"); if (p.permission.has(sender, "brewery.cmd.reload")) { - cmds.add(g + "/br reload " + b + " Config neuladen"); + cmds.add("&6/br reload &9Config neuladen"); } if (p.permission.has(sender, "brewery.cmd.wakeup")) { - cmds.add(g + "/br Wakeup List " + b + " Listet alle Aufwachpunkte auf"); - cmds.add(g + "/br Wakeup List " + b + " Listet die Aufwachpunkte einer Welt auf"); - cmds.add(g + "/br Wakeup Check " + b + " Teleportiert zu allen Aufwachpunkten"); - cmds.add(g + "/br Wakeup Check " + b + " Teleportiert zu einem Aufwachpunkt"); - cmds.add(g + "/br Wakeup Add " + b + " Setzt einen Aufwachpunkt"); - cmds.add(g + "/br Wakeup Remove " + b + " Entfernt einen Aufwachpunkt"); + cmds.add("&6/br Wakeup List &9 Listet alle Aufwachpunkte auf"); + cmds.add("&6/br Wakeup List &9 Listet die Aufwachpunkte einer Welt auf"); + cmds.add("&6/br Wakeup Check &9Teleportiert zu allen Aufwachpunkten"); + cmds.add("&6/br Wakeup Check &9Teleportiert zu einem Aufwachpunkt"); + cmds.add("&6/br Wakeup Add &9Setzt einen Aufwachpunkt"); + cmds.add("&6/br Wakeup Remove &9Entfernt einen Aufwachpunkt"); } if (p.permission.has(sender, "brewery.cmd.player")) { - cmds.add (g + "/br <%Trunkenheit> " + b + " Setzt Trunkenheit (und Qualität) eines Spielers"); + cmds.add ("&6/br <%Trunkenheit> &9 Setzt Trunkenheit (und Qualität) eines Spielers"); } if (p.permission.has(sender, "brewery.cmd.info")) { - cmds.add (g + "/br Info" + b + " Zeigt deine aktuelle Trunkenheit und Qualität an"); + cmds.add ("&6/br Info&9 Zeigt deine aktuelle Trunkenheit und Qualität an"); } if (p.permission.has(sender, "brewery.cmd.infoOther")) { - cmds.add (g + "/br Info " + b + " Zeigt die aktuelle Trunkenheit und Qualität von an"); + cmds.add ("&6/br Info &9 Zeigt die aktuelle Trunkenheit und Qualität von an"); } return cmds; @@ -176,7 +171,7 @@ public class CommandListener implements CommandExecutor { Wakeup.remove(sender, id); } else { p.msg(sender, "Benutzung:"); - p.msg(sender, g + "/br Wakeup Remove "); + p.msg(sender, "&6/br Wakeup Remove "); } } else if (args[1].equalsIgnoreCase("check")){ @@ -197,7 +192,7 @@ public class CommandListener implements CommandExecutor { } else { p.msg(sender, "Unbekannter Befehl."); - p.msg(sender, "benutze " + g + "/br help " + ChatColor.WHITE + "um die Hilfe anzuzeigen"); + p.msg(sender, "benutze &6/br help &fum die Hilfe anzuzeigen"); } } @@ -209,7 +204,7 @@ public class CommandListener implements CommandExecutor { if (args.length > 2) { quality = p.parseInt(args[2]); if (quality < 1 || quality > 10) { - p.msg(sender, r + "Die Qualität muss zwischen 1 und 10 liegen!"); + p.msg(sender, "&cDie Qualität muss zwischen 1 und 10 liegen!"); return; } } @@ -230,7 +225,7 @@ public class CommandListener implements CommandExecutor { bPlayer.setData(drunkeness, quality); } - p.msg(sender, gr + playerName + " ist nun " + g + drunkeness + "% " + gr + "betrunken, mit einer Qualität von " + g + bPlayer.getQuality()); + p.msg(sender, "&a" + playerName + " ist nun &6" + drunkeness + "% &abetrunken, mit einer Qualität von &6" + bPlayer.getQuality()); if (drunkeness > 100) { bPlayer.drinkCap(p.getServer().getPlayer(playerName)); } @@ -244,7 +239,7 @@ public class CommandListener implements CommandExecutor { Player player = (Player) sender; playerName = player.getName(); } else { - p.msg(sender, r + "Dieser Befehl kann nur als Spieler ausgeführt werden"); + p.msg(sender, "&cDieser Befehl kann nur als Spieler ausgeführt werden"); return; } } @@ -253,7 +248,7 @@ public class CommandListener implements CommandExecutor { if (bPlayer == null) { p.msg(sender, playerName + " ist nicht betrunken"); } else { - p.msg(sender, playerName + " ist " + g + bPlayer.getDrunkeness() + "% " + ChatColor.WHITE + "betrunken, mit einer Qualität von " + g + bPlayer.getQuality()); + p.msg(sender, playerName + " ist &6" + bPlayer.getDrunkeness() + "% &fbetrunken, mit einer Qualität von &6" + bPlayer.getQuality()); } }