Java 类org.bukkit.help.HelpMap 实例源码
项目:Skript
文件:ScriptCommand.java
public void registerHelp() {
helps.clear();
final HelpMap help = Bukkit.getHelpMap();
final HelpTopic t = new GenericCommandHelpTopic(bukkitCommand);
help.addTopic(t);
helps.add(t);
final HelpTopic aliases = help.getHelpTopic("Aliases");
if (aliases != null && aliases instanceof IndexHelpTopic) {
aliases.getFullText(Bukkit.getConsoleSender()); // CraftBukkit has a lazy IndexHelpTopic class (org.bukkit.craftbukkit.help.CustomIndexHelpTopic) - maybe its used for aliases as well
try {
final Field topics = IndexHelpTopic.class.getDeclaredField("allTopics");
topics.setAccessible(true);
@SuppressWarnings("unchecked")
final ArrayList<HelpTopic> as = new ArrayList<HelpTopic>((Collection<HelpTopic>) topics.get(aliases));
for (final String alias : activeAliases) {
final HelpTopic at = new CommandAliasHelpTopic("/" + alias, "/" + getLabel(), help);
as.add(at);
helps.add(at);
}
Collections.sort(as, HelpTopicComparator.helpTopicComparatorInstance());
topics.set(aliases, as);
} catch (final Exception e) {
Skript.outdatedError(e);//, "error registering aliases for /" + getName());
}
}
}
项目:Uranium
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Debuggery
文件:OutputFormatter.java
@Nullable
public static String getOutput(@Nullable Object object) {
if (object == null) {
return null;
}
if (object instanceof String) {
return (String) object;
} else if (object instanceof Collection) {
return handleCollection((Collection) object);
} else if (object instanceof Map) {
return handleMap((Map) object);
} else if (object.getClass().isArray()) {
return handleArray(object);
} else if (object instanceof OfflinePlayer) {
return handleOfflinePlayer((OfflinePlayer) object);
} else if (object instanceof BlockState) {
return handleBlockState((BlockState) object);
} else if (object instanceof Inventory) {
return handleInventory((Inventory) object);
} else if (object instanceof WorldBorder) {
return handleWorldBorder((WorldBorder) object);
} else if (object instanceof CommandSender) {
return handleCommandSender((CommandSender) object);
} else if (object instanceof Messenger) {
return handleMessenger((Messenger) object);
} else if (object instanceof HelpMap) {
return handleHelpMap((HelpMap) object);
} else {
return String.valueOf(object);
}
}
项目:Debuggery
文件:OutputFormatter.java
@Nonnull
private static String handleHelpMap(HelpMap helpMap) {
StringBuilder returnString = new StringBuilder("[");
for (HelpTopic topic : helpMap.getHelpTopics()) {
returnString.append("{").append(topic.getName()).append(", ").append(topic.getShortText()).append("}\n");
}
return returnString.append("]").toString();
}
项目:Debuggery
文件:OutputFormatterTest.java
@Test
public void testHelpMap() {
HelpTopic topicTacos = new TestHelpTopic("taco", "Makes tacos", "taco.taco");
HelpTopic topicDebuggery = new TestHelpTopic("debuggery", "Exposes API stuffs", "d.g");
HelpMap helpMap = new TestHelpMap(topicTacos, topicDebuggery);
String out = OutputFormatter.getOutput(helpMap);
assertNotNull(out);
assertTrue(out.contains(topicTacos.getName()));
assertTrue(out.contains(topicTacos.getShortText()));
assertTrue(out.contains(topicDebuggery.getName()));
assertTrue(out.contains(topicDebuggery.getShortText()));
}
项目:Skript
文件:Commands.java
public CommandAliasHelpTopic(final String alias, final String aliasFor, final HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!name.equals(this.aliasFor), "Command " + name + " cannot be alias for itself");
shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:ThermosRebased
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Thermos
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:KCauldron
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:CauldronGit
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Cauldron-Old
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Cauldron-Reloaded
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:FFoKC
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:CraftBukkit
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Craftbukkit
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Almura-Server
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Tweakkit-Server
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Cauldron
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:SpigotSource
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Craft-city
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:MCPBukkit
文件:CommandAliasHelpTopic.java
public CommandAliasHelpTopic(String alias, String aliasFor, HelpMap helpMap) {
this.aliasFor = aliasFor.startsWith("/") ? aliasFor : "/" + aliasFor;
this.helpMap = helpMap;
this.name = alias.startsWith("/") ? alias : "/" + alias;
Validate.isTrue(!this.name.equals(this.aliasFor), "Command " + this.name + " cannot be alias for itself");
this.shortText = ChatColor.YELLOW + "Alias for " + ChatColor.WHITE + this.aliasFor;
}
项目:Uranium
文件:CustomIndexHelpTopic.java
public CustomIndexHelpTopic(HelpMap helpMap, String name, String shortText, String permission, List<String> futureTopics, String preamble) {
super(name, shortText, permission, new HashSet<HelpTopic>(), preamble);
this.helpMap = helpMap;
this.futureTopics = futureTopics;
}
项目:Uranium
文件:CraftServer.java
@Override
public HelpMap getHelpMap() {
return helpMap;
}
项目:MockBukkit
文件:ServerMock.java
@Override
public HelpMap getHelpMap()
{
// TODO Auto-generated method stub
throw new UnimplementedOperationException();
}
项目:FlexMC
文件:FlexServerImpl.java
@Override
public HelpMap getHelpMap() {
throw new UnsupportedOperationException();
}
项目:Bukkit2Sponge
文件:FakeServer.java
@Override
public HelpMap getHelpMap() {
return null; // TODO: Create help map implementation once commands are done.
}
项目:netherrack
文件:NetherServer.java
@Override
public HelpMap getHelpMap() {
// TODO Auto-generated method stub
return null;
}
项目:Karus-Commons
文件:StubServer.java
@Override
public HelpMap getHelpMap() {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
项目:ThermosRebased
文件:CustomIndexHelpTopic.java
public CustomIndexHelpTopic(HelpMap helpMap, String name, String shortText, String permission, List<String> futureTopics, String preamble) {
super(name, shortText, permission, new HashSet<HelpTopic>(), preamble);
this.helpMap = helpMap;
this.futureTopics = futureTopics;
}
项目:ThermosRebased
文件:CraftServer.java
@Override
public HelpMap getHelpMap() {
return helpMap;
}
项目:Thermos-Bukkit
文件:Bukkit.java
/**
* @see Server#getHelpMap()
*/
public static HelpMap getHelpMap() {
return server.getHelpMap();
}
项目:Thermos-Bukkit
文件:HelpCommand.java
@Override
public boolean execute(CommandSender sender, String currentAlias, String[] args) {
if (!testPermission(sender)) return true;
String command;
int pageNumber;
int pageHeight;
int pageWidth;
if (args.length == 0) {
command = "";
pageNumber = 1;
} else if (NumberUtils.isDigits(args[args.length - 1])) {
command = StringUtils.join(ArrayUtils.subarray(args, 0, args.length - 1), " ");
try {
pageNumber = NumberUtils.createInteger(args[args.length - 1]);
} catch (NumberFormatException exception) {
pageNumber = 1;
}
if (pageNumber <= 0) {
pageNumber = 1;
}
} else {
command = StringUtils.join(args, " ");
pageNumber = 1;
}
if (sender instanceof ConsoleCommandSender) {
pageHeight = ChatPaginator.UNBOUNDED_PAGE_HEIGHT;
pageWidth = ChatPaginator.UNBOUNDED_PAGE_WIDTH;
} else {
pageHeight = ChatPaginator.CLOSED_CHAT_PAGE_HEIGHT - 1;
pageWidth = ChatPaginator.GUARANTEED_NO_WRAP_CHAT_PAGE_WIDTH;
}
HelpMap helpMap = Bukkit.getServer().getHelpMap();
HelpTopic topic = helpMap.getHelpTopic(command);
if (topic == null) {
topic = helpMap.getHelpTopic("/" + command);
}
if (topic == null) {
topic = findPossibleMatches(command);
}
if (topic == null || !topic.canSee(sender)) {
sender.sendMessage(ChatColor.RED + "No help for " + command);
return true;
}
ChatPaginator.ChatPage page = ChatPaginator.paginate(topic.getFullText(sender), pageNumber, pageWidth, pageHeight);
StringBuilder header = new StringBuilder();
header.append(ChatColor.YELLOW);
header.append("--------- ");
header.append(ChatColor.WHITE);
header.append("Help: ");
header.append(topic.getName());
header.append(" ");
if (page.getTotalPages() > 1) {
header.append("(");
header.append(page.getPageNumber());
header.append("/");
header.append(page.getTotalPages());
header.append(") ");
}
header.append(ChatColor.YELLOW);
for (int i = header.length(); i < ChatPaginator.GUARANTEED_NO_WRAP_CHAT_PAGE_WIDTH; i++) {
header.append("-");
}
sender.sendMessage(header.toString());
sender.sendMessage(page.getLines());
return true;
}
项目:Brynhildr
文件:NukkitServer.java
@Override
public HelpMap getHelpMap() {
return null;
}
项目:ExilePearl
文件:TestServer.java
@Override
public HelpMap getHelpMap() {
return null;
}
项目:SaneEconomy
文件:MockServer.java
@Override
public HelpMap getHelpMap() {
return null;
}
项目:Pokkit
文件:CraftServer.java
@Override
public HelpMap getHelpMap() {
return helpMap;
}
项目:Bukkit_Bungee_PluginLib
文件:TestBukkitServer.java
@Override
public HelpMap getHelpMap()
{
return null;
}
项目:Thermos
文件:CustomIndexHelpTopic.java
public CustomIndexHelpTopic(HelpMap helpMap, String name, String shortText, String permission, List<String> futureTopics, String preamble) {
super(name, shortText, permission, new HashSet<HelpTopic>(), preamble);
this.helpMap = helpMap;
this.futureTopics = futureTopics;
}
项目:Thermos
文件:CraftServer.java
@Override
public HelpMap getHelpMap() {
return helpMap;
}
项目:KCauldron
文件:CustomIndexHelpTopic.java
public CustomIndexHelpTopic(HelpMap helpMap, String name, String shortText, String permission, List<String> futureTopics, String preamble) {
super(name, shortText, permission, new HashSet<HelpTopic>(), preamble);
this.helpMap = helpMap;
this.futureTopics = futureTopics;
}