2012-04-03 21:26:19 +02:00
|
|
|
package com.gmail.nossr50.commands;
|
|
|
|
|
|
|
|
import org.bukkit.command.CommandSender;
|
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
|
|
|
|
import com.gmail.nossr50.datatypes.PlayerProfile;
|
2012-04-27 11:47:11 +02:00
|
|
|
import com.gmail.nossr50.locale.LocaleLoader;
|
2013-01-30 17:53:51 +01:00
|
|
|
import com.gmail.nossr50.skills.utilities.SkillTools;
|
|
|
|
import com.gmail.nossr50.skills.utilities.SkillType;
|
2012-04-03 21:26:19 +02:00
|
|
|
|
2013-01-26 23:01:55 +01:00
|
|
|
public final class CommandHelper {
|
|
|
|
private CommandHelper() {}
|
2012-04-03 21:26:19 +02:00
|
|
|
|
2012-04-04 16:34:35 +02:00
|
|
|
public static boolean noConsoleUsage(CommandSender sender) {
|
|
|
|
if (!(sender instanceof Player)) {
|
2012-04-27 11:47:11 +02:00
|
|
|
sender.sendMessage(LocaleLoader.getString("Commands.NoConsole"));
|
2012-04-04 16:34:35 +02:00
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
return false;
|
|
|
|
}
|
2012-04-22 08:55:58 +02:00
|
|
|
|
2012-04-03 21:26:19 +02:00
|
|
|
/**
|
|
|
|
* Print out details on Gathering skills. Only for online players.
|
|
|
|
*
|
|
|
|
* @param inspect The player to retrieve stats for
|
2013-02-01 10:18:57 +01:00
|
|
|
* @param profile The player's profile
|
2012-04-03 21:26:19 +02:00
|
|
|
* @param display The sender to display stats to
|
|
|
|
*/
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printGatheringSkills(Player inspect, PlayerProfile profile, CommandSender display) {
|
|
|
|
if (SkillTools.hasGatheringSkills(inspect)) {
|
2012-04-27 11:47:11 +02:00
|
|
|
display.sendMessage(LocaleLoader.getString("Stats.Header.Gathering"));
|
2012-04-03 21:26:19 +02:00
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.excavation")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Excavation.Listener"), profile.getSkillLevel(SkillType.EXCAVATION), profile.getSkillXpLevel(SkillType.EXCAVATION), profile.getXpToLevel(SkillType.EXCAVATION)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.fishing")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Fishing.Listener"), profile.getSkillLevel(SkillType.FISHING), profile.getSkillXpLevel(SkillType.FISHING), profile.getXpToLevel(SkillType.FISHING)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.fishing")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Herbalism.Listener"), profile.getSkillLevel(SkillType.HERBALISM), profile.getSkillXpLevel(SkillType.HERBALISM), profile.getXpToLevel(SkillType.HERBALISM)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.mining")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Mining.Listener"), profile.getSkillLevel(SkillType.MINING), profile.getSkillXpLevel(SkillType.MINING), profile.getXpToLevel(SkillType.MINING)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.woodcutting")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Woodcutting.Listener"), profile.getSkillLevel(SkillType.WOODCUTTING), profile.getSkillXpLevel(SkillType.WOODCUTTING), profile.getXpToLevel(SkillType.WOODCUTTING)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printGatheringSkills(Player player, PlayerProfile profile) {
|
|
|
|
printGatheringSkills(player, profile, player);
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Print out details on Combat skills. Only for online players.
|
|
|
|
*
|
|
|
|
* @param inspect The player to retrieve stats for
|
2013-02-01 10:18:57 +01:00
|
|
|
* @param profile The player's profile
|
2012-04-03 21:26:19 +02:00
|
|
|
* @param display The sender to display stats to
|
|
|
|
*/
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printCombatSkills(Player inspect, PlayerProfile profile, CommandSender display) {
|
2013-01-26 23:01:55 +01:00
|
|
|
if (SkillTools.hasCombatSkills(inspect)) {
|
2012-04-27 11:47:11 +02:00
|
|
|
display.sendMessage(LocaleLoader.getString("Stats.Header.Combat"));
|
2012-04-03 21:26:19 +02:00
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.axes")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Axes.Listener"), profile.getSkillLevel(SkillType.AXES), profile.getSkillXpLevel(SkillType.AXES), profile.getXpToLevel(SkillType.AXES)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.archery")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Archery.Listener"), profile.getSkillLevel(SkillType.ARCHERY), profile.getSkillXpLevel(SkillType.ARCHERY), profile.getXpToLevel(SkillType.ARCHERY)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.swords")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Swords.Listener"), profile.getSkillLevel(SkillType.SWORDS), profile.getSkillXpLevel(SkillType.SWORDS), profile.getXpToLevel(SkillType.SWORDS)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.taming")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Taming.Listener"), profile.getSkillLevel(SkillType.TAMING), profile.getSkillXpLevel(SkillType.TAMING), profile.getXpToLevel(SkillType.TAMING)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.unarmed")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Unarmed.Listener"), profile.getSkillLevel(SkillType.UNARMED), profile.getSkillXpLevel(SkillType.UNARMED), profile.getXpToLevel(SkillType.UNARMED)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printCombatSkills(Player player, PlayerProfile profile) {
|
|
|
|
printCombatSkills(player, profile, player);
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Print out details on Misc skills. Only for online players.
|
|
|
|
*
|
|
|
|
* @param inspect The player to retrieve stats for
|
2013-02-01 10:18:57 +01:00
|
|
|
* @param profile The player's profile
|
2012-04-03 21:26:19 +02:00
|
|
|
* @param display The sender to display stats to
|
|
|
|
*/
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printMiscSkills(Player inspect, PlayerProfile profile, CommandSender display) {
|
2013-01-26 23:01:55 +01:00
|
|
|
if (SkillTools.hasMiscSkills(inspect)) {
|
2012-04-27 11:47:11 +02:00
|
|
|
display.sendMessage(LocaleLoader.getString("Stats.Header.Misc"));
|
2012-04-03 21:26:19 +02:00
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.acrobatics")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Acrobatics.Listener"), profile.getSkillLevel(SkillType.ACROBATICS), profile.getSkillXpLevel(SkillType.ACROBATICS), profile.getXpToLevel(SkillType.ACROBATICS)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
|
2013-02-15 19:41:04 +01:00
|
|
|
if (inspect.hasPermission("mcmmo.skills.repair")) {
|
2013-02-02 08:55:49 +01:00
|
|
|
display.sendMessage(LocaleLoader.getString("Skills.Stats", LocaleLoader.getString("Repair.Listener"), profile.getSkillLevel(SkillType.REPAIR), profile.getSkillXpLevel(SkillType.REPAIR), profile.getXpToLevel(SkillType.REPAIR)));
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-02-01 10:18:57 +01:00
|
|
|
public static void printMiscSkills(Player player, PlayerProfile profile) {
|
|
|
|
printMiscSkills(player, profile, player);
|
2012-04-03 21:26:19 +02:00
|
|
|
}
|
|
|
|
}
|