2013-01-24 17:45:40 +01:00
|
|
|
package com.gmail.nossr50.util;
|
|
|
|
|
|
|
|
import org.bukkit.entity.Player;
|
2013-01-26 23:01:55 +01:00
|
|
|
import org.bukkit.plugin.PluginDescriptionFile;
|
2013-01-24 17:45:40 +01:00
|
|
|
|
2013-01-26 23:01:55 +01:00
|
|
|
import com.gmail.nossr50.mcMMO;
|
2013-01-24 17:45:40 +01:00
|
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
|
|
|
import com.gmail.nossr50.skills.SkillType;
|
|
|
|
|
2013-01-26 23:01:55 +01:00
|
|
|
public final class Motd {
|
|
|
|
private static final String perkPrefix = LocaleLoader.getString("MOTD.PerksPrefix");
|
|
|
|
private static final PluginDescriptionFile pluginDescription = mcMMO.p.getDescription();
|
2013-01-24 17:45:40 +01:00
|
|
|
|
2013-01-26 23:01:55 +01:00
|
|
|
private Motd() {}
|
|
|
|
|
|
|
|
public static void displayAll(Player player) {
|
|
|
|
displayVersion(player, pluginDescription.getVersion());
|
|
|
|
displayHardcoreSettings(player);
|
|
|
|
displayXpPerks(player);
|
|
|
|
displayCooldownPerks(player);
|
|
|
|
displayActivationPerks(player);
|
|
|
|
displayLuckyPerks(player);
|
|
|
|
displayWebsite(player, pluginDescription.getWebsite());
|
2013-01-24 17:45:40 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display version info.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
|
|
|
* @param version Plugin version
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayVersion(Player player, String version) {
|
2013-01-24 17:45:40 +01:00
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Version", new Object[] {version}));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display Hardcore Mode settings.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayHardcoreSettings(Player player) {
|
2013-01-25 04:22:02 +01:00
|
|
|
if (Hardcore.statLossEnabled) {
|
|
|
|
if (Hardcore.vampirismEnabled) {
|
2013-01-24 17:45:40 +01:00
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Hardcore.VampireOn"));
|
2013-01-25 04:22:02 +01:00
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Hardcore.Stats", new Object[] {Hardcore.statLossPercentage}));
|
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Vampire.Stats", new Object[] {Hardcore.vampirismStatLeechPercentage}));
|
2013-01-24 17:45:40 +01:00
|
|
|
}
|
|
|
|
else {
|
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Hardcore.VampireOff"));
|
2013-01-25 04:22:02 +01:00
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Hardcore.Stats", new Object[] {Hardcore.statLossPercentage }));
|
2013-01-24 17:45:40 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display XP perks.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayXpPerks(Player player) {
|
2013-01-24 17:45:40 +01:00
|
|
|
if (Permissions.xpQuadruple(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.xp.name"), LocaleLoader.getString("Perks.xp.desc", new Object[] { 4 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.xpTriple(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.xp.name"), LocaleLoader.getString("Perks.xp.desc", new Object[] { 3 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.xpDoubleAndOneHalf(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.xp.name"), LocaleLoader.getString("Perks.xp.desc", new Object[] { 2.5 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.xpDouble(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.xp.name"), LocaleLoader.getString("Perks.xp.desc", new Object[] { 2 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.xpOneAndOneHalf(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.xp.name"), LocaleLoader.getString("Perks.xp.desc", new Object[] { 1.5 }) }));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display cooldown perks.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayCooldownPerks(Player player) {
|
2013-01-24 17:45:40 +01:00
|
|
|
if (Permissions.cooldownsHalved(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.cooldowns.name"), LocaleLoader.getString("Perks.cooldowns.desc", new Object[] { "1/2" }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.cooldownsThirded(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.cooldowns.name"), LocaleLoader.getString("Perks.cooldowns.desc", new Object[] { "1/3" }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.cooldownsQuartered(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.cooldowns.name"), LocaleLoader.getString("Perks.cooldowns.desc", new Object[] { "1/4" }) }));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display activiation perks.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayActivationPerks(Player player) {
|
2013-01-24 17:45:40 +01:00
|
|
|
if (Permissions.activationTwelve(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.activationtime.name"), LocaleLoader.getString("Perks.activationtime.desc", new Object[] { 12 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.activationEight(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.activationtime.name"), LocaleLoader.getString("Perks.activationtime.desc", new Object[] { 8 }) }));
|
|
|
|
}
|
|
|
|
else if (Permissions.activationFour(player)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.activationtime.name"), LocaleLoader.getString("Perks.activationtime.desc", new Object[] { 4 }) }));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display "lucky" perks.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayLuckyPerks(Player player) {
|
2013-01-24 17:45:40 +01:00
|
|
|
for (SkillType skill : SkillType.values()) {
|
|
|
|
if (Permissions.lucky(player, skill)) {
|
|
|
|
player.sendMessage(perkPrefix + LocaleLoader.getString("Effects.Template", new Object[] { LocaleLoader.getString("Perks.lucky.name"), LocaleLoader.getString("Perks.lucky.desc.login") }));
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Display website info.
|
2013-01-26 23:01:55 +01:00
|
|
|
* @param player Target player
|
|
|
|
* @param website Plugin website
|
2013-01-24 17:45:40 +01:00
|
|
|
*/
|
2013-01-26 23:01:55 +01:00
|
|
|
public static void displayWebsite(Player player, String website) {
|
2013-01-24 17:45:40 +01:00
|
|
|
player.sendMessage(LocaleLoader.getString("MOTD.Website", new Object[] {website}));
|
|
|
|
}
|
|
|
|
}
|