package org.buckit.commands.homes; import java.util.Arrays; import java.util.Collection; import java.util.LinkedHashSet; import org.buckit.Config; import org.buckit.datasource.type.HomesDataSource; import org.buckit.model.Home; import org.bukkit.ChatColor; import org.bukkit.Server; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; public class HomesCommand extends Command { private final HomesDataSource datasource; public HomesCommand(String name, Server server){ super(name); this.datasource = server.getDataSourceManager().getHomesDataSource(); this.description = "Gives a list of your homes."; this.usageMessage = "Usage: /homes"; this.accessname = "buckit.homes.homes"; this.setAliases(Arrays.asList("listhomes")); } @Override public boolean execute(CommandSender sender, String currentAlias, String[] args) { if(!(sender instanceof Player)) return false; if(!Config.HOMES_MULTI_ENABLED) return false; Collection<Home> homes = datasource.getHomes(((Player)sender).getPlayerId()); if(homes.size() == 0) { sender.sendMessage("No homes made yet."); return true; } Collection<String> names = new LinkedHashSet<String>(); for(Home h : homes) names.add(h.getName()); String str = ""; for(String name : names) str += name + ", "; str = str.substring(0,str.length()-2); sender.sendMessage(ChatColor.GREEN + "List of available homes:"); sender.sendMessage(str); return true; } }