Implement the proposed TabValidator API

This is how SubServers will implement the Validator API that I suggested. I had to make some assumptions though (like how I don't expect BungeeCord's api to have a setTabValidator() method).
This commit is contained in:
ME1312 2017-12-13 12:29:50 -05:00
parent 2e3525a31a
commit 36ee42a1ab
54 changed files with 2107 additions and 277 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -18,6 +18,8 @@
<li><a href="net/ME1312/SubServers/Bungee/Network/AES.StrongEncryptionNotAvailableException.html" title="class in net.ME1312.SubServers.Bungee.Network" target="classFrame">AES.StrongEncryptionNotAvailableException</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Network/Client.html" title="class in net.ME1312.SubServers.Bungee.Network" target="classFrame">Client</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Network/ClientHandler.html" title="interface in net.ME1312.SubServers.Bungee.Network" target="classFrame"><span class="interfaceName">ClientHandler</span></a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility" target="classFrame">CommandX</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13" target="classFrame">CommandX</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Container.html" title="class in net.ME1312.SubServers.Bungee.Library" target="classFrame">Container</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Host/Executable.html" title="class in net.ME1312.SubServers.Bungee.Host" target="classFrame">Executable</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Host/External/ExternalHost.html" title="class in net.ME1312.SubServers.Bungee.Host.External" target="classFrame">ExternalHost</a></li>

View File

@ -18,6 +18,8 @@
<li><a href="net/ME1312/SubServers/Bungee/Network/AES.StrongEncryptionNotAvailableException.html" title="class in net.ME1312.SubServers.Bungee.Network">AES.StrongEncryptionNotAvailableException</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Network/Client.html" title="class in net.ME1312.SubServers.Bungee.Network">Client</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Network/ClientHandler.html" title="interface in net.ME1312.SubServers.Bungee.Network"><span class="interfaceName">ClientHandler</span></a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Container.html" title="class in net.ME1312.SubServers.Bungee.Library">Container</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Host/Executable.html" title="class in net.ME1312.SubServers.Bungee.Host">Executable</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Host/External/ExternalHost.html" title="class in net.ME1312.SubServers.Bungee.Host.External">ExternalHost</a></li>

View File

@ -106,6 +106,10 @@
<dd>
<div class="block">Adds a SubAPI Listener</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#addListener-java.lang.Runnable-java.lang.Runnable-java.lang.Runnable-">addListener(Runnable, Runnable, Runnable)</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Adds a SubAPI Listener</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#addServer-java.lang.String-java.net.InetAddress-int-java.lang.String-boolean-boolean-">addServer(String, InetAddress, int, String, boolean, boolean)</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Adds a Server to the Network</div>
@ -316,6 +320,28 @@
<dd>
<div class="block">Commands the Server</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#command">command</a></span> - Variable in class net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility"><span class="typeNameLink">CommandX</span></a> - Class in <a href="net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility</a></dt>
<dd>
<div class="block">Command Layout Class that implements all possible features (Base Version)</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#CommandX-java.lang.String-">CommandX(String)</a></span> - Constructor for class net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></dt>
<dd>
<div class="block">Create a Command</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#CommandX-java.lang.String-java.lang.String-java.lang.String...-">CommandX(String, String, String...)</a></span> - Constructor for class net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></dt>
<dd>
<div class="block">Create a Command</div>
</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13"><span class="typeNameLink">CommandX</span></a> - Class in <a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a></dt>
<dd>
<div class="block">Command Layout Class that implements all possible features (1.13 Version)</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#CommandX-net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX-">CommandX(CommandX)</a></span> - Constructor for class net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></dt>
<dd>
<div class="block">Create a Command</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Version/Version.html#compare-net.ME1312.SubServers.Bungee.Library.Version.Version-net.ME1312.SubServers.Bungee.Library.Version.Version-">compare(Version, Version)</a></span> - Static method in class net.ME1312.SubServers.Bungee.Library.Version.<a href="net/ME1312/SubServers/Bungee/Library/Version/Version.html" title="class in net.ME1312.SubServers.Bungee.Library.Version">Version</a></dt>
<dd>
<div class="block">Compare Versions</div>
@ -496,6 +522,10 @@
<dd>
<div class="block">New Executable</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#execute-net.md_5.bungee.api.CommandSender-java.lang.String:A-">execute(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></dt>
<dd>
<div class="block">Override BungeeCord Method for the previously used one</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Network/Packet/PacketAuthorization.html#execute-net.ME1312.SubServers.Bungee.Network.Client-org.json.JSONObject-">execute(Client, JSONObject)</a></span> - Method in class net.ME1312.SubServers.Bungee.Network.Packet.<a href="net/ME1312/SubServers/Bungee/Network/Packet/PacketAuthorization.html" title="class in net.ME1312.SubServers.Bungee.Network.Packet">PacketAuthorization</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Network/Packet/PacketCommandServer.html#execute-net.ME1312.SubServers.Bungee.Network.Client-org.json.JSONObject-">execute(Client, JSONObject)</a></span> - Method in class net.ME1312.SubServers.Bungee.Network.Packet.<a href="net/ME1312/SubServers/Bungee/Network/Packet/PacketCommandServer.html" title="class in net.ME1312.SubServers.Bungee.Network.Packet">PacketCommandServer</a></dt>
@ -1226,6 +1256,10 @@
<dd>
<div class="block">Get a Object by Handle</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#getObjectBySignature-java.lang.String-">getObjectBySignature(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Get an Object by it's Signature</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html#getObjectList-java.lang.String-">getObjectList(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Config.<a href="net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLSection</a></dt>
<dd>
<div class="block">Get a Object List by Handle</div>
@ -1692,6 +1726,10 @@
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Network/AES.InvalidAESStreamException.html#InvalidAESStreamException-java.lang.Exception-">InvalidAESStreamException(Exception)</a></span> - Constructor for exception net.ME1312.SubServers.Bungee.Network.<a href="net/ME1312/SubServers/Bungee/Network/AES.InvalidAESStreamException.html" title="class in net.ME1312.SubServers.Bungee.Network">AES.InvalidAESStreamException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#invalidateObjectSignature-java.lang.String-">invalidateObjectSignature(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Invalidate an Object Signature.</div>
</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Exception/InvalidDriverException.html" title="class in net.ME1312.SubServers.Bungee.Library.Exception"><span class="typeNameLink">InvalidDriverException</span></a> - Exception in <a href="net/ME1312/SubServers/Bungee/Library/Exception/package-summary.html">net.ME1312.SubServers.Bungee.Library.Exception</a></dt>
<dd>
<div class="block">Invalid Driver Exception</div>
@ -2066,6 +2104,10 @@
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/package-summary.html">net.ME1312.SubServers.Bungee.Library</a> - package net.ME1312.SubServers.Bungee.Library</dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility</a> - package net.ME1312.SubServers.Bungee.Library.Compatibility</dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a> - package net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">net.ME1312.SubServers.Bungee.Library.Config</a> - package net.ME1312.SubServers.Bungee.Library.Config</dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Bungee/Library/Exception/package-summary.html">net.ME1312.SubServers.Bungee.Library.Exception</a> - package net.ME1312.SubServers.Bungee.Library.Exception</dt>
@ -2082,13 +2124,9 @@
</a>
<h2 class="title">O</h2>
<dl>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee">SubCommand.BungeeServer</a></dt>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></dt>
<dd>
<div class="block">Tab completer</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubCommand.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee">SubCommand</a></dt>
<dd>
<div class="block">Tab complete for players</div>
<div class="block">Override the BungeeCord Method of <a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-"><code>CommandX.suggestArguments(CommandSender, String[])</code></a></div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#out">out</a></span> - Variable in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dd>&nbsp;</dd>
@ -2804,9 +2842,13 @@
<dd>
<div class="block">Set the Version the Server will use</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#signObject--">signObject()</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#signAnonymousObject--">signAnonymousObject()</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Returns a unique signature for use by signed objects</div>
<div class="block">Get an Object Signature without linking the Signature to any object</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#signObject-java.lang.Object-">signObject(Object)</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></dt>
<dd>
<div class="block">Signs an Object</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/External/ExternalSubLogger.html#start--">start()</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.External.<a href="net/ME1312/SubServers/Bungee/Host/External/ExternalSubLogger.html" title="class in net.ME1312.SubServers.Bungee.Host.External">ExternalSubLogger</a></dt>
<dd>&nbsp;</dd>
@ -3076,6 +3118,20 @@
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#sudo">sudo</a></span> - Variable in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></dt>
<dd>
<div class="block">Suggest Arguments</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee">SubCommand.BungeeServer</a></dt>
<dd>
<div class="block">Suggest command arguments</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubCommand.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments(CommandSender, String[])</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee">SubCommand</a></dt>
<dd>
<div class="block">Suggest command arguments</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html#superSection--">superSection()</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Config.<a href="net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLSection</a></dt>
<dd>
<div class="block">Go up a level in the config (or null if this is the top layer)</div>
@ -3240,6 +3296,10 @@
</a>
<h2 class="title">V</h2>
<dl>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#validateCommand-net.md_5.bungee.api.CommandSender-java.lang.String-">validateCommand(CommandSender, String)</a></span> - Method in class net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></dt>
<dd>
<div class="block">Validate a Command (Override for custom)</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/SubCreator.ServerType.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/SubCreator.ServerType.html" title="enum in net.ME1312.SubServers.Bungee.Host">SubCreator.ServerType</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>

View File

@ -0,0 +1,361 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>CommandX (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="CommandX (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" target="_top">Frames</a></li>
<li><a href="CommandX.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">net.ME1312.SubServers.Bungee.Library.Compatibility</div>
<h2 title="Class CommandX" class="title">Class CommandX</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>net.md_5.bungee.api.plugin.Command</li>
<li>
<ul class="inheritance">
<li>net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>net.md_5.bungee.api.plugin.TabExecutor</dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee">SubCommand</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee">SubCommand.BungeeServer</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">CommandX</span>
extends net.md_5.bungee.api.plugin.Command
implements net.md_5.bungee.api.plugin.TabExecutor</pre>
<div class="block">Command Layout Class that implements all possible features (Base Version)</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#CommandX-java.lang.String-">CommandX</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Create a Command</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#CommandX-java.lang.String-java.lang.String-java.lang.String...-">CommandX</a></span>(java.lang.String&nbsp;name,
java.lang.String&nbsp;permission,
java.lang.String...&nbsp;aliases)</code>
<div class="block">Create a Command</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.lang.Iterable&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Override the BungeeCord Method of <a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-"><code>suggestArguments(CommandSender, String[])</code></a></div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Suggest Arguments</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.plugin.Command">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.md_5.bungee.api.plugin.Command</h3>
<code>equals, execute, getAliases, getName, getPermission, hashCode, toString</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>getClass, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="CommandX-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CommandX</h4>
<pre>public&nbsp;CommandX(java.lang.String&nbsp;name)</pre>
<div class="block">Create a Command</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Command Name</dd>
</dl>
</li>
</ul>
<a name="CommandX-java.lang.String-java.lang.String-java.lang.String...-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CommandX</h4>
<pre>public&nbsp;CommandX(java.lang.String&nbsp;name,
java.lang.String&nbsp;permission,
java.lang.String...&nbsp;aliases)</pre>
<div class="block">Create a Command</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - Command Name</dd>
<dd><code>permission</code> - Command Permission</dd>
<dd><code>aliases</code> - Command Aliases</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>suggestArguments</h4>
<pre>public abstract&nbsp;<a href="../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;suggestArguments(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Suggest Arguments</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments (including the final unfinished one)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An Error Message (if there was one, otherwise null) and a List of Suggestions</dd>
</dl>
</li>
</ul>
<a name="onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>onTabComplete</h4>
<pre>public&nbsp;java.lang.Iterable&lt;java.lang.String&gt;&nbsp;onTabComplete(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Override the BungeeCord Method of <a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-"><code>suggestArguments(CommandSender, String[])</code></a></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>onTabComplete</code>&nbsp;in interface&nbsp;<code>net.md_5.bungee.api.plugin.TabExecutor</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments (including the final unfinished one)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A Collection of Suggestions</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" target="_top">Frames</a></li>
<li><a href="CommandX.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -0,0 +1,19 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<h1 class="bar"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html" target="classFrame">net.ME1312.SubServers.Bungee.Library.Compatibility</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility" target="classFrame">CommandX</a></li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,141 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="net.ME1312.SubServers.Bungee.Library.Compatibility (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;net.ME1312.SubServers.Bungee.Library.Compatibility</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></td>
<td class="colLast">
<div class="block">Command Layout Class that implements all possible features (Base Version)</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -0,0 +1,138 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility Class Hierarchy (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="net.ME1312.SubServers.Bungee.Library.Compatibility Class Hierarchy (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 class="title">Hierarchy For Package net.ME1312.SubServers.Bungee.Library.Compatibility</h1>
<span class="packageHierarchyLabel">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../../../overview-tree.html">All Packages</a></li>
</ul>
</div>
<div class="contentContainer">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li type="circle">java.lang.Object
<ul>
<li type="circle">net.md_5.bungee.api.plugin.Command
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility"><span class="typeNameLink">CommandX</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -0,0 +1,405 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>CommandX (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="CommandX (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" target="_top">Frames</a></li>
<li><a href="CommandX.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</div>
<h2 title="Class CommandX" class="title">Class CommandX</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>net.md_5.bungee.api.plugin.Command</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX</a></li>
<li>
<ul class="inheritance">
<li>net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.CommandX</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>net.md_5.bungee.api.plugin.TabExecutor</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">CommandX</span>
extends <a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></pre>
<div class="block">Command Layout Class that implements all possible features (1.13 Version)</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#command">command</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#CommandX-net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX-">CommandX</a></span>(<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a>&nbsp;other)</code>
<div class="block">Create a Command</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#execute-net.md_5.bungee.api.CommandSender-java.lang.String:A-">execute</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Override BungeeCord Method for the previously used one</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Suggest Arguments</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.lang.Integer&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html#validateCommand-net.md_5.bungee.api.CommandSender-java.lang.String-">validateCommand</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String&nbsp;command)</code>
<div class="block">Validate a Command (Override for custom)</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></h3>
<code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.plugin.Command">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.md_5.bungee.api.plugin.Command</h3>
<code>equals, getAliases, getName, getPermission, hashCode, toString</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>getClass, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="command">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>command</h4>
<pre>public final&nbsp;<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a> command</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="CommandX-net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CommandX</h4>
<pre>public&nbsp;CommandX(<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a>&nbsp;other)</pre>
<div class="block">Create a Command</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>other</code> - CommandX from previous version</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="execute-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre>public&nbsp;void&nbsp;execute(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Override BungeeCord Method for the previously used one</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>execute</code>&nbsp;in class&nbsp;<code>net.md_5.bungee.api.plugin.Command</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments</dd>
</dl>
</li>
</ul>
<a name="suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>suggestArguments</h4>
<pre>public&nbsp;<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;suggestArguments(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">CommandX</a></code></span></div>
<div class="block">Suggest Arguments</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments (including the final unfinished one)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An Error Message (if there was one, otherwise null) and a List of Suggestions</dd>
</dl>
</li>
</ul>
<a name="validateCommand-net.md_5.bungee.api.CommandSender-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>validateCommand</h4>
<pre>public&nbsp;<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.lang.Integer&gt;&nbsp;validateCommand(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String&nbsp;command)</pre>
<div class="block">Validate a Command (Override for custom)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>command</code> - Command to validate</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>NamedContainer with a String error message and a Integer that represents where the command was deemed invalid</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" target="_top">Frames</a></li>
<li><a href="CommandX.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -0,0 +1,19 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13 (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<h1 class="bar"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html" target="classFrame">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13" target="classFrame">CommandX</a></li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,141 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13 (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13 (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13">CommandX</a></td>
<td class="colLast">
<div class="block">Command Layout Class that implements all possible features (1.13 Version)</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -0,0 +1,142 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13 Class Hierarchy (SubServers.Bungee)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13 Class Hierarchy (SubServers.Bungee)";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html">Prev</a></li>
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 class="title">Hierarchy For Package net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</h1>
<span class="packageHierarchyLabel">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../../../../overview-tree.html">All Packages</a></li>
</ul>
</div>
<div class="contentContainer">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li type="circle">java.lang.Object
<ul>
<li type="circle">net.md_5.bungee.api.plugin.Command
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility"><span class="typeNameLink">CommandX</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13"><span class="typeNameLink">CommandX</span></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="navBarCell1Rev">Tree</li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html">Prev</a></li>
<li><a href="../../../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html" target="_top">Frames</a></li>
<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>

View File

@ -41,7 +41,7 @@
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Exception/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
@ -123,7 +123,7 @@
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Exception/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">

View File

@ -41,7 +41,7 @@
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Exception/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
@ -106,7 +106,7 @@
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html">Prev</a></li>
<li><a href="../../../../../../net/ME1312/SubServers/Bungee/Library/Exception/package-tree.html">Next</a></li>
</ul>
<ul class="navList">

View File

@ -42,7 +42,7 @@
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Internal/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">Next&nbsp;Package</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?net/ME1312/SubServers/Bungee/Library/package-summary.html" target="_top">Frames</a></li>
@ -173,7 +173,7 @@
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Internal/package-summary.html">Prev&nbsp;Package</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">Next&nbsp;Package</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?net/ME1312/SubServers/Bungee/Library/package-summary.html" target="_top">Frames</a></li>

View File

@ -42,7 +42,7 @@
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Internal/package-tree.html">Prev</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-tree.html">Next</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?net/ME1312/SubServers/Bungee/Library/package-tree.html" target="_top">Frames</a></li>
@ -124,7 +124,7 @@
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Internal/package-tree.html">Prev</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/package-tree.html">Next</a></li>
<li><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html">Next</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?net/ME1312/SubServers/Bungee/Library/package-tree.html" target="_top">Frames</a></li>

View File

@ -17,7 +17,7 @@
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":9,"i19":42,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10};
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":9,"i20":42,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -166,6 +166,14 @@ extends java.lang.Object</pre>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#addListener-java.lang.Runnable-java.lang.Runnable-java.lang.Runnable-">addListener</a></span>(java.lang.Runnable&nbsp;enable,
java.lang.Runnable&nbsp;reload,
java.lang.Runnable&nbsp;disable)</code>
<div class="block">Adds a SubAPI Listener</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#addServer-java.lang.String-java.net.InetAddress-int-java.lang.String-boolean-boolean-">addServer</a></span>(java.lang.String&nbsp;name,
java.net.InetAddress&nbsp;ip,
@ -176,7 +184,7 @@ extends java.lang.Object</pre>
<div class="block">Adds a Server to the Network</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#addServer-java.util.UUID-java.lang.String-java.net.InetAddress-int-java.lang.String-boolean-boolean-">addServer</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name,
@ -188,87 +196,87 @@ extends java.lang.Object</pre>
<div class="block">Adds a Server to the Network</div>
</td>
</tr>
<tr id="i6" class="altColor">
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#forceRemoveHost-java.lang.String-">forceRemoveHost</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Force Remove a Host from the Network</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#forceRemoveHost-java.util.UUID-java.lang.String-">forceRemoveHost</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name)</code>
<div class="block">Force Remove a Host from the Network</div>
</td>
</tr>
<tr id="i8" class="altColor">
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#forceRemoveServer-java.lang.String-">forceRemoveServer</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Force Remove a Server from the Network</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#forceRemoveServer-java.util.UUID-java.lang.String-">forceRemoveServer</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name)</code>
<div class="block">Force Remove a Server from the Network</div>
</td>
</tr>
<tr id="i10" class="altColor">
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Version/Version.html" title="class in net.ME1312.SubServers.Bungee.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getBetaVersion--">getBetaVersion</a></span>()</code>
<div class="block">Gets the SubServers Beta Version</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Version/Version.html" title="class in net.ME1312.SubServers.Bungee.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getGameVersion--">getGameVersion</a></span>()</code>
<div class="block">Gets the Recommended Minecraft Version</div>
</td>
</tr>
<tr id="i12" class="altColor">
<tr id="i13" class="rowColor">
<td class="colFirst"><code>java.util.Collection&lt;<a href="../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.UUID&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getGlobalPlayers--">getGlobalPlayers</a></span>()</code>
<div class="block">Get players on this network across all known proxies</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<tr id="i14" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getGroup-java.lang.String-">getGroup</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets a Server Group (Group names are case insensitive here)</div>
</td>
</tr>
<tr id="i14" class="altColor">
<tr id="i15" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.util.List&lt;<a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getGroups--">getGroups</a></span>()</code>
<div class="block">Gets the Server Groups (Group names are case sensitive here)</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getHost-java.lang.String-">getHost</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets a Host</div>
</td>
</tr>
<tr id="i16" class="altColor">
<tr id="i17" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getHostDrivers--">getHostDrivers</a></span>()</code>
<div class="block">Get a list of all available Host Drivers</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<tr id="i18" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getHosts--">getHosts</a></span>()</code>
<div class="block">Gets the Hosts</div>
</td>
</tr>
<tr id="i18" class="altColor">
<tr id="i19" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html" title="class in net.ME1312.SubServers.Bungee">SubAPI</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getInstance--">getInstance</a></span>()</code>
<div class="block">Gets the SubAPI Methods</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getInternals--">getInternals</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
@ -276,105 +284,129 @@ extends java.lang.Object</pre>
</div>
</td>
</tr>
<tr id="i20" class="altColor">
<tr id="i21" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getLang--">getLang</a></span>()</code>
<div class="block">Gets the SubServers Lang</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getLang-java.lang.String-">getLang</a></span>(java.lang.String&nbsp;key)</code>
<div class="block">Gets a value from the SubServers Lang</div>
</td>
</tr>
<tr id="i22" class="altColor">
<tr id="i23" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.util.List&lt;<a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getLowercaseGroups--">getLowercaseGroups</a></span>()</code>
<div class="block">Gets the Server Groups (Group names are all lowercase here)</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<tr id="i24" class="altColor">
<td class="colFirst"><code>&lt;R&gt;&nbsp;R</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getObjectBySignature-java.lang.String-">getObjectBySignature</a></span>(java.lang.String&nbsp;signature)</code>
<div class="block">Get an Object by it's Signature</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Version/Version.html" title="class in net.ME1312.SubServers.Bungee.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getProxyVersion--">getProxyVersion</a></span>()</code>
<div class="block">Gets the BungeeCord Version</div>
</td>
</tr>
<tr id="i24" class="altColor">
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/UniversalFile.html" title="class in net.ME1312.SubServers.Bungee.Library">UniversalFile</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getRuntimeDirectory--">getRuntimeDirectory</a></span>()</code>
<div class="block">Gets the Runtime Directory</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getServer-java.lang.String-">getServer</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets a Server</div>
</td>
</tr>
<tr id="i26" class="altColor">
<tr id="i28" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="interface in net.ME1312.SubServers.Bungee.Host">Server</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getServers--">getServers</a></span>()</code>
<div class="block">Gets the Servers (including SubServers)</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Network/SubDataServer.html" title="class in net.ME1312.SubServers.Bungee.Network">SubDataServer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getSubDataNetwork--">getSubDataNetwork</a></span>()</code>
<div class="block">Gets the SubData Network Manager</div>
</td>
</tr>
<tr id="i28" class="altColor">
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="interface in net.ME1312.SubServers.Bungee.Host">SubServer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getSubServer-java.lang.String-">getSubServer</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Gets a SubServer</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<tr id="i31" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="interface in net.ME1312.SubServers.Bungee.Host">SubServer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getSubServers--">getSubServers</a></span>()</code>
<div class="block">Gets the SubServers</div>
</td>
</tr>
<tr id="i30" class="altColor">
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Version/Version.html" title="class in net.ME1312.SubServers.Bungee.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#getWrapperVersion--">getWrapperVersion</a></span>()</code>
<div class="block">Gets the SubServers Version</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<tr id="i33" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#invalidateObjectSignature-java.lang.String-">invalidateObjectSignature</a></span>(java.lang.String&nbsp;signature)</code>
<div class="block">Invalidate an Object Signature.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#removeHost-java.lang.String-">removeHost</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Remove a Host from the Network</div>
</td>
</tr>
<tr id="i32" class="altColor">
<tr id="i35" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#removeHost-java.util.UUID-java.lang.String-">removeHost</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name)</code>
<div class="block">Remove a Host from the Network</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<tr id="i36" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#removeServer-java.lang.String-">removeServer</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Remove a Server from the Network</div>
</td>
</tr>
<tr id="i34" class="altColor">
<tr id="i37" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#removeServer-java.util.UUID-java.lang.String-">removeServer</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name)</code>
<div class="block">Remove a Server from the Network</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<tr id="i38" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#setLang-java.lang.String-java.lang.String-">setLang</a></span>(java.lang.String&nbsp;key,
java.lang.String&nbsp;value)</code>
<div class="block">Adds to the Language Map</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#signAnonymousObject--">signAnonymousObject</a></span>()</code>
<div class="block">Get an Object Signature without linking the Signature to any object</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubAPI.html#signObject-java.lang.Object-">signObject</a></span>(java.lang.Object&nbsp;object)</code>
<div class="block">Signs an Object</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
@ -439,7 +471,25 @@ public&nbsp;<a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html" ti
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>enable</code> - An Event that will be called when SubAPI is ready</dd>
<dd><code>disable</code> - An Event that will be called before SubAPI is disabled</dd>
<dd><code>disable</code> - An Event that will be called before SubAPI is disabled (your plugin should reset it's values in case this is a hard-reset instead of a shutdown)</dd>
</dl>
</li>
</ul>
<a name="addListener-java.lang.Runnable-java.lang.Runnable-java.lang.Runnable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addListener</h4>
<pre>public&nbsp;void&nbsp;addListener(java.lang.Runnable&nbsp;enable,
java.lang.Runnable&nbsp;reload,
java.lang.Runnable&nbsp;disable)</pre>
<div class="block">Adds a SubAPI Listener</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>enable</code> - An Event that will be called when SubAPI is ready</dd>
<dd><code>reload</code> - An Event that will be called after SubAPI is soft-reloaded</dd>
<dd><code>disable</code> - An Event that will be called before SubAPI is disabled (your plugin should reset it's values in case this is a hard-reset instead of a shutdown)</dd>
</dl>
</li>
</ul>
@ -943,6 +993,68 @@ public&nbsp;<a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html" ti
</dl>
</li>
</ul>
<a name="signAnonymousObject--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>signAnonymousObject</h4>
<pre>public&nbsp;java.lang.String&nbsp;signAnonymousObject()</pre>
<div class="block">Get an Object Signature without linking the Signature to any object</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Anonymous Object Signature</dd>
</dl>
</li>
</ul>
<a name="signObject-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>signObject</h4>
<pre>public&nbsp;java.lang.String&nbsp;signObject(java.lang.Object&nbsp;object)</pre>
<div class="block">Signs an Object</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>object</code> - Object to Sign</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Object's Signature (or an empty string if the object was null)</dd>
</dl>
</li>
</ul>
<a name="getObjectBySignature-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObjectBySignature</h4>
<pre>public&nbsp;&lt;R&gt;&nbsp;R&nbsp;getObjectBySignature(java.lang.String&nbsp;signature)</pre>
<div class="block">Get an Object by it's Signature</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>R</code> - Expected Object Type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>signature</code> - Object's Signature</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Object that is tied to this Signature (or null if the signature is unknown)</dd>
</dl>
</li>
</ul>
<a name="invalidateObjectSignature-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidateObjectSignature</h4>
<pre>public&nbsp;void&nbsp;invalidateObjectSignature(java.lang.String&nbsp;signature)</pre>
<div class="block">Invalidate an Object Signature. This will remove the link between the Signature and the Object</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>signature</code> - Object's Signature</dd>
</dl>
</li>
</ul>
<a name="getRuntimeDirectory--">
<!-- -->
</a>

View File

@ -101,12 +101,17 @@ var activeTableTab = "activeTableTab";
<li>net.md_5.bungee.api.plugin.Command</li>
<li>
<ul class="inheritance">
<li><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX</a></li>
<li>
<ul class="inheritance">
<li>net.ME1312.SubServers.Bungee.SubCommand.BungeeServer</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
@ -121,8 +126,7 @@ var activeTableTab = "activeTableTab";
<hr>
<br>
<pre>public static final class <span class="typeNameLabel">SubCommand.BungeeServer</span>
extends net.md_5.bungee.api.plugin.Command
implements net.md_5.bungee.api.plugin.TabExecutor</pre>
extends <a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></pre>
<div class="block">BungeeCord /server</div>
</li>
</ul>
@ -150,14 +154,21 @@ implements net.md_5.bungee.api.plugin.TabExecutor</pre>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.Iterable&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Tab completer</div>
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Suggest command arguments</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></h3>
<code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.plugin.Command">
<!-- -->
</a>
@ -203,23 +214,23 @@ implements net.md_5.bungee.api.plugin.TabExecutor</pre>
</dl>
</li>
</ul>
<a name="onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<a name="suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>onTabComplete</h4>
<pre>public&nbsp;java.lang.Iterable&lt;java.lang.String&gt;&nbsp;onTabComplete(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Tab completer</div>
<h4>suggestArguments</h4>
<pre>public&nbsp;<a href="../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;suggestArguments(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Suggest command arguments</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>onTabComplete</code>&nbsp;in interface&nbsp;<code>net.md_5.bungee.api.plugin.TabExecutor</code></dd>
<dd><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></code>&nbsp;in class&nbsp;<code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Tab completes</dd>
<dd>The validator's response and list of possible arguments</dd>
</dl>
</li>
</ul>

View File

@ -101,12 +101,17 @@ var activeTableTab = "activeTableTab";
<li>net.md_5.bungee.api.plugin.Command</li>
<li>
<ul class="inheritance">
<li><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX</a></li>
<li>
<ul class="inheritance">
<li>net.ME1312.SubServers.Bungee.SubCommand</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
@ -117,8 +122,7 @@ var activeTableTab = "activeTableTab";
<hr>
<br>
<pre>public final class <span class="typeNameLabel">SubCommand</span>
extends net.md_5.bungee.api.plugin.Command
implements net.md_5.bungee.api.plugin.TabExecutor</pre>
extends <a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></pre>
<div class="block">Plugin Command Class</div>
</li>
</ul>
@ -173,14 +177,21 @@ implements net.md_5.bungee.api.plugin.TabExecutor</pre>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.Iterable&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Tab complete for players</div>
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></span>(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</code>
<div class="block">Suggest command arguments</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></h3>
<code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">onTabComplete</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.plugin.Command">
<!-- -->
</a>
@ -226,23 +237,23 @@ implements net.md_5.bungee.api.plugin.TabExecutor</pre>
</dl>
</li>
</ul>
<a name="onTabComplete-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<a name="suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>onTabComplete</h4>
<pre>public&nbsp;java.lang.Iterable&lt;java.lang.String&gt;&nbsp;onTabComplete(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Tab complete for players</div>
<h4>suggestArguments</h4>
<pre>public&nbsp;<a href="../../../../net/ME1312/SubServers/Bungee/Library/NamedContainer.html" title="class in net.ME1312.SubServers.Bungee.Library">NamedContainer</a>&lt;java.lang.String,java.util.List&lt;java.lang.String&gt;&gt;&nbsp;suggestArguments(net.md_5.bungee.api.CommandSender&nbsp;sender,
java.lang.String[]&nbsp;args)</pre>
<div class="block">Suggest command arguments</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>onTabComplete</code>&nbsp;in interface&nbsp;<code>net.md_5.bungee.api.plugin.TabExecutor</code></dd>
<dd><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html#suggestArguments-net.md_5.bungee.api.CommandSender-java.lang.String:A-">suggestArguments</a></code>&nbsp;in class&nbsp;<code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility">CommandX</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sender</code> - Sender</dd>
<dd><code>args</code> - Arguments</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Tab completes</dd>
<dd>The validator's response and list of possible arguments</dd>
</dl>
</li>
</ul>

View File

@ -17,7 +17,7 @@
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -267,18 +267,12 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#resetSudo-net.ME1312.SubServers.Bungee.Event.SubStoppedEvent-">resetSudo</a></span>(<a href="../../../../net/ME1312/SubServers/Bungee/Event/SubStoppedEvent.html" title="class in net.ME1312.SubServers.Bungee.Event">SubStoppedEvent</a>&nbsp;e)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#signObject--">signObject</a></span>()</code>
<div class="block">Returns a unique signature for use by signed objects</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#startListeners--">startListeners</a></span>()</code>
<div class="block">Load SubServers before BungeeCord finishes</div>
</td>
</tr>
<tr id="i10" class="altColor">
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#stopListeners--">stopListeners</a></span>()</code>
<div class="block">Reset all changes made by startListeners</div>
@ -499,20 +493,6 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
</dl>
</li>
</ul>
<a name="signObject--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>signObject</h4>
<pre>public&nbsp;java.lang.String&nbsp;signObject()</pre>
<div class="block">Returns a unique signature for use by signed objects</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Signature</dd>
</dl>
</li>
</ul>
<a name="redis-java.lang.String-net.ME1312.SubServers.Bungee.Library.NamedContainer...-">
<!-- -->
</a>

View File

@ -81,9 +81,13 @@
<ul>
<li type="circle">net.md_5.bungee.api.plugin.Command
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)</li>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="../../../../net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility"><span class="typeNameLink">CommandX</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand</span></a></li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeServer</span></a></li>
</ul>
</li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeList.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeList</span></a></li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeServer</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)</li>
</ul>
</li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="../../../../net/ME1312/SubServers/Bungee/Launch.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">Launch</span></a></li>

View File

@ -18,6 +18,8 @@
<li><a href="net/ME1312/SubServers/Bungee/Host/External/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Host.External</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Host/Internal/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Host.Internal</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library.Compatibility</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Config/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library.Config</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Exception/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library.Exception</a></li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Version/package-frame.html" target="packageFrame">net.ME1312.SubServers.Bungee.Library.Version</a></li>

View File

@ -103,6 +103,14 @@
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-summary.html">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="net/ME1312/SubServers/Bungee/Library/Config/package-summary.html">net.ME1312.SubServers.Bungee.Library.Config</a></td>
<td class="colLast">&nbsp;</td>
</tr>

View File

@ -77,6 +77,8 @@
<li><a href="net/ME1312/SubServers/Bungee/Host/External/package-tree.html">net.ME1312.SubServers.Bungee.Host.External</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Host/Internal/package-tree.html">net.ME1312.SubServers.Bungee.Host.Internal</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/package-tree.html">net.ME1312.SubServers.Bungee.Library</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/package-tree.html">net.ME1312.SubServers.Bungee.Library.Compatibility</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/package-tree.html">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Config/package-tree.html">net.ME1312.SubServers.Bungee.Library.Config</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Exception/package-tree.html">net.ME1312.SubServers.Bungee.Library.Exception</a>, </li>
<li><a href="net/ME1312/SubServers/Bungee/Library/Version/package-tree.html">net.ME1312.SubServers.Bungee.Library.Version</a>, </li>
@ -107,9 +109,14 @@
<li type="circle">net.ME1312.SubServers.Bungee.Network.<a href="net/ME1312/SubServers/Bungee/Network/Client.html" title="class in net.ME1312.SubServers.Bungee.Network"><span class="typeNameLink">Client</span></a></li>
<li type="circle">net.md_5.bungee.api.plugin.Command
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)</li>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility"><span class="typeNameLink">CommandX</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)
<ul>
<li type="circle">net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.<a href="net/ME1312/SubServers/Bungee/Library/Compatibility/v1_13/CommandX.html" title="class in net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13"><span class="typeNameLink">CommandX</span></a></li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand</span></a></li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeServer</span></a></li>
</ul>
</li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeList.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeList</span></a></li>
<li type="circle">net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubCommand.BungeeServer.html" title="class in net.ME1312.SubServers.Bungee"><span class="typeNameLink">SubCommand.BungeeServer</span></a> (implements net.md_5.bungee.api.plugin.TabExecutor)</li>
</ul>
</li>
<li type="circle">net.ME1312.SubServers.Bungee.Library.<a href="net/ME1312/SubServers/Bungee/Library/Container.html" title="class in net.ME1312.SubServers.Bungee.Library"><span class="typeNameLink">Container</span></a>&lt;V&gt;

View File

@ -4,6 +4,8 @@ net.ME1312.SubServers.Bungee.Host
net.ME1312.SubServers.Bungee.Host.External
net.ME1312.SubServers.Bungee.Host.Internal
net.ME1312.SubServers.Bungee.Library
net.ME1312.SubServers.Bungee.Library.Compatibility
net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13
net.ME1312.SubServers.Bungee.Library.Config
net.ME1312.SubServers.Bungee.Library.Exception
net.ME1312.SubServers.Bungee.Library.Version

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -517,7 +517,7 @@
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/SubAPI.html#getGameVersion--">getGameVersion()</a></span> - Method in class net.ME1312.SubServers.Sync.<a href="net/ME1312/SubServers/Sync/SubAPI.html" title="class in net.ME1312.SubServers.Sync">SubAPI</a></dt>
<dd>
<div class="block">Gets the Recommended Minecraft Version</div>
<div class="block">Gets the Latest Supported Minecraft Version</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/Event/SubAddHostEvent.html#getHost--">getHost()</a></span> - Method in class net.ME1312.SubServers.Sync.Event.<a href="net/ME1312/SubServers/Sync/Event/SubAddHostEvent.html" title="class in net.ME1312.SubServers.Sync.Event">SubAddHostEvent</a></dt>
<dd>

View File

@ -144,7 +144,7 @@ extends java.lang.Object</pre>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Sync/Library/Version/Version.html" title="class in net.ME1312.SubServers.Sync.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubAPI.html#getGameVersion--">getGameVersion</a></span>()</code>
<div class="block">Gets the Recommended Minecraft Version</div>
<div class="block">Gets the Latest Supported Minecraft Version</div>
</td>
</tr>
<tr id="i3" class="rowColor">
@ -414,7 +414,7 @@ public&nbsp;<a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html" titl
<li class="blockList">
<h4>getGameVersion</h4>
<pre>public&nbsp;<a href="../../../../net/ME1312/SubServers/Sync/Library/Version/Version.html" title="class in net.ME1312.SubServers.Sync.Library.Version">Version</a>&nbsp;getGameVersion()</pre>
<div class="block">Gets the Recommended Minecraft Version</div>
<div class="block">Gets the Latest Supported Minecraft Version</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Minecraft Version</dd>

Binary file not shown.

View File

@ -36,7 +36,7 @@ public abstract class Host implements ExtraDataHandler {
*/
public Host(SubPlugin plugin, String name, Boolean enabled, InetAddress address, String directory, String gitBash) {
if (name.contains(" ")) throw new InvalidHostException("Host names cannot have spaces: " + name);
signature = plugin.signObject();
signature = plugin.api.signAnonymousObject();
SubDataServer.allowConnection(address.getHostAddress());
}

View File

@ -33,12 +33,11 @@ public class ServerContainer extends BungeeServerInfo implements Server {
private boolean restricted;
private boolean hidden;
@SuppressWarnings("deprecation")
public ServerContainer(String name, InetSocketAddress address, String motd, boolean hidden, boolean restricted) throws InvalidServerException {
super(name, address, ChatColor.translateAlternateColorCodes('&', motd), restricted);
if (Util.isNull(name, address, motd, hidden, restricted)) throw new NullPointerException();
if (name.contains(" ")) throw new InvalidServerException("Server names cannot have spaces: " + name);
signature = SubAPI.getInstance().getInternals().signObject();
signature = SubAPI.getInstance().signAnonymousObject();
SubDataServer.allowConnection(getAddress().getAddress().getHostAddress());
this.motd = motd;
this.restricted = restricted;

View File

@ -0,0 +1,55 @@
package net.ME1312.SubServers.Bungee.Library.Compatibility;
import net.ME1312.SubServers.Bungee.Library.NamedContainer;
import net.md_5.bungee.api.CommandSender;
import net.md_5.bungee.api.plugin.Command;
import net.md_5.bungee.api.plugin.TabExecutor;
import java.util.List;
/**
* Command Layout Class that implements all possible features (Base Version)
*/
public abstract class CommandX extends Command implements TabExecutor {
/**
* Create a Command
*
* @param name Command Name
*/
public CommandX(String name) {
super(name);
}
/**
* Create a Command
*
* @param name Command Name
* @param permission Command Permission
* @param aliases Command Aliases
*/
public CommandX(String name, String permission, String... aliases) {
super(name, permission, aliases);
}
/**
* Suggest Arguments
*
* @param sender Sender
* @param args Arguments (including the final unfinished one)
* @return An Error Message (if there was one, otherwise null) and a List of Suggestions
*/
public abstract NamedContainer<String, List<String>> suggestArguments(CommandSender sender, String[] args);
/**
* Override the BungeeCord Method of {@link #suggestArguments(CommandSender, String[])}
*
* @param sender Sender
* @param args Arguments (including the final unfinished one)
* @return A Collection of Suggestions
*/
@Override
public Iterable<String> onTabComplete(CommandSender sender, String[] args) {
return suggestArguments(sender, args).get();
}
}

View File

@ -0,0 +1,74 @@
package net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13;
import net.ME1312.SubServers.Bungee.Library.NamedContainer;
import net.md_5.bungee.api.CommandSender;
import java.util.LinkedList;
import java.util.List;
/**
* Command Layout Class that implements all possible features (1.13 Version)
*/
public class CommandX extends net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX/* implements TabValidator */ {
public final net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX command;
/**
* Create a Command
*
* @param other CommandX from previous version
*/
public CommandX(net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX other) {
super(other.getName());
command = other;
}
/**
* Override BungeeCord Method for the previously used one
*
* @param sender Sender
* @param args Arguments
*/
@Override
public void execute(CommandSender sender, String[] args) {
command.execute(sender, args);
}
@Override
public NamedContainer<String, List<String>> suggestArguments(CommandSender sender, String[] args) {
return command.suggestArguments(sender, args);
}
/**
* Validate a Command (Override for custom)
*
* @param sender Sender
* @param command Command to validate
* @return NamedContainer with a String error message and a Integer that represents where the command was deemed invalid
*/
public NamedContainer<String, Integer> validateCommand(CommandSender sender, String command) {
List<NamedContainer<String, Integer>> split = new LinkedList<NamedContainer<String, Integer>>();
String cmd = command;
int i;
while ((i = cmd.indexOf((int) ' ')) < 0) {
i++;
String arg = cmd.substring(i);
split.add(new NamedContainer<>(arg.contains(" ")?arg.substring(0, arg.indexOf((int) ' ')):arg, i));
cmd = arg;
}
List<String> args = new LinkedList<String>();
NamedContainer<String, Integer> response = null;
i = 0;
for (NamedContainer<String, Integer> arg : split) {
if (i > 0) {
args.add(arg.name());
NamedContainer<String, List<String>> suggestions = suggestArguments(sender, args.toArray(new String[args.size() - 1]));
if (suggestions.name() != null) response = new NamedContainer<>(suggestions.name(), arg.get());
}
i++;
}
return response;
}
// TODO Override the original validator method
}

View File

@ -1,4 +1,4 @@
Version: '2.12.1e+'
Version: '2.13a+'
Lang:
'Bungee.Server.Current': '&6You are currently connected to $str$'
'Bungee.Server.Available': '&6You may connect to the following servers at this time:'
@ -13,8 +13,12 @@ Lang:
'Command.Generic.Player-Only': '&cSubServers &4&l\u00BB&c Console cannot run this command'
'Command.Generic.Console-Only': '&cSubServers &4&l\u00BB&c This command is for console use only'
'Command.Generic.Usage': '&7SubServers &8&l\u00BB&7 Usage: &f$str$'
'Command.Generic.Exception': '&cSubServers &4&l\u00BB&c An unexpected exception has occurred while parsing this command'
'Command.Generic.Invalid-Subcommand': '&cSubServers &4&l\u00BB&c Unknown sub-command: $str$'
'Command.Generic.Invalid-Permission': '&cSubServers &4&l\u00BB&c You need &4&n$str$&c to use this command'
'Command.Generic.Unknown-Host': '&cSubServers &4&l\u00BB&c There is no Host with that name'
'Command.Generic.Unknown-Server': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Generic.Unknown-SubServer': '&cSubServers &4&l\u00BB&c There is no SubServer with that name'
'Command.Help.Header': '&7SubServers &8&l\u00BB&7 Command Help:'
'Command.Help.Help': ' &7Help:&f $str$'
'Command.Help.List': ' &7List:&f $str$'
@ -36,36 +40,36 @@ Lang:
'Command.List.Divider': '&7, '
'Command.List.Empty': '&7(none)'
'Command.Info': '&7SubServers &8&l\u00BB&7 Info on &f$str$&7:'
'Command.Info.Unknown': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Info.Unknown': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Info.Invalid': '&cSubServers &4&l\u00BB&c That Server is not a SubServer'
'Command.Info.Format': '- &f$str$&7: &r'
'Command.Info.List': ' - $str$'
'Command.Start': '&aSubServers &2&l\u00BB&a Starting SubServer'
'Command.Start.Unknown': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Start.Unknown': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Start.Invalid': '&cSubServers &4&l\u00BB&c That Server is not a SubServer'
'Command.Start.Host-Disabled': '&cSubServers &4&l\u00BB&c That SubServer\u0027s Host is not enabled'
'Command.Start.Server-Disabled': '&cSubServers &4&l\u00BB&c That SubServer is not enabled'
'Command.Start.Server-Incompatible': '&cSubServers &4&l\u00BB&c That SubServer cannot start while these server(s) are running: &4$str$'
'Command.Start.Running': '&cSubServers &4&l\u00BB&c That SubServer is already running'
'Command.Stop': '&aSubServers &2&l\u00BB&a Stopping SubServer'
'Command.Stop.Unknown': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Stop.Unknown': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Stop.Invalid': '&cSubServers &4&l\u00BB&c That Server is not a SubServer'
'Command.Stop.Not-Running': '&cSubServers &4&l\u00BB&c That SubServer is not running'
'Command.Terminate': '&aSubServers &2&l\u00BB&a Stopping SubServer'
'Command.Terminate.Unknown': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Terminate.Unknown': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Terminate.Invalid': '&cSubServers &4&l\u00BB&c That Server is not a SubServer'
'Command.Terminate.Not-Running': '&cSubServers &4&l\u00BB&c That SubServer is not running'
'Command.Command': '&aSubServers &2&l\u00BB&a Sending command to SubServer'
'Command.Command.Unknown': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Command.Unknown': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Command.Invalid': '&cSubServers &4&l\u00BB&c That Server is not a SubServer'
'Command.Command.Not-Running': '&cSubServers &4&l\u00BB&c That SubServer is not running'
'Command.Teleport': '&aSubServers &2&l\u00BB&a Teleporting...'
'Command.Teleport.Offline': '&cSubServers &4&l\u00BB&c There is no player online with that name'
'Command.Teleport.Invalid': '&cSubServers &4&l\u00BB&c There is no server with that name'
'Command.Teleport.Invalid': '&cSubServers &4&l\u00BB&c There is no Server with that name'
'Command.Creator': '&aSubServers &2&l\u00BB&a Creating SubServer'
'Command.Creator.Exists': '&cSubServers &4&l\u00BB&c There is already a SubServer with that name'
'Command.Creator.Unknown-Host': '&cSubServers &4&l\u00BB&c There is no host with that name'
'Command.Creator.Invalid-Template': '&cSubServers &4&l\u00BB&c There is no template with that name'
'Command.Creator.Unknown-Host': '&cSubServers &4&l\u00BB&c There is no Host with that name'
'Command.Creator.Invalid-Template': '&cSubServers &4&l\u00BB&c There is no Template with that name'
'Command.Creator.Invalid-Version': '&cSubServers &4&l\u00BB&c SubCreator cannot create servers before Minecraft 1.8'
'Command.Creator.Invalid-Port': '&cSubServers &4&l\u00BB&c Invalid Port Number'
'Interface.Generic.Back': '&cBack'
@ -83,6 +87,7 @@ Lang:
'Interface.Host-Menu.Host-Server-Count': '&9$int$ Server(s)'
'Interface.Host-Menu.No-Hosts': '&c&oThere are No Hosts'
'Interface.Host-Menu.Group-Menu': '&6&lView Servers by Group'
'Interface.Host-Menu.SubServer-Menu': '&a&lView Servers'
'Interface.Host-Admin.Title': 'Host/$str$'
'Interface.Host-Admin.Creator': '&eCreate a SubServer'
'Interface.Host-Admin.SubServers': '&aView SubServers'

View File

@ -26,11 +26,12 @@ import java.util.*;
*/
public final class SubAPI {
LinkedList<NamedContainer<Runnable, Runnable>> listeners = new LinkedList<NamedContainer<Runnable, Runnable>>();
LinkedList<Runnable> reloadListeners = new LinkedList<Runnable>();
private HashMap<String, Object> knownSignatures = new HashMap<String, Object>();
boolean ready = false;
private SubPlugin plugin;
private static SubAPI api;
protected SubAPI(SubPlugin plugin) {
this.plugin = plugin;
api = this;
@ -60,10 +61,22 @@ public final class SubAPI {
* Adds a SubAPI Listener
*
* @param enable An Event that will be called when SubAPI is ready
* @param disable An Event that will be called before SubAPI is disabled
* @param disable An Event that will be called before SubAPI is disabled (your plugin should reset it's values in case this is a hard-reset instead of a shutdown)
*/
public void addListener(Runnable enable, Runnable disable) {
listeners.add(new NamedContainer<Runnable, Runnable>(enable, disable));
if (!Util.isNull(enable, disable)) listeners.add(new NamedContainer<Runnable, Runnable>(enable, disable));
}
/**
* Adds a SubAPI Listener
*
* @param enable An Event that will be called when SubAPI is ready
* @param reload An Event that will be called after SubAPI is soft-reloaded
* @param disable An Event that will be called before SubAPI is disabled (your plugin should reset it's values in case this is a hard-reset instead of a shutdown)
*/
public void addListener(Runnable enable, Runnable reload, Runnable disable) {
addListener(enable, disable);
if (reload != null) reloadListeners.add(reload);
}
/**
@ -490,6 +503,53 @@ public final class SubAPI {
return lang;
}
/**
* Get an Object Signature without linking the Signature to any object
*
* @return Anonymous Object Signature
*/
public String signAnonymousObject() {
return plugin.getNewSignature();
}
/**
* Signs an Object
*
* @param object Object to Sign
* @return Object's Signature (or an empty string if the object was null)
*/
public String signObject(Object object) {
if (object == null) {
return "";
} else {
String signature = signAnonymousObject();
knownSignatures.put(signature, object);
return signature;
}
}
/**
* Get an Object by it's Signature
*
* @param signature Object's Signature
* @param <R> Expected Object Type
* @return Object that is tied to this Signature (or null if the signature is unknown)
*/
@SuppressWarnings("unchecked")
public <R> R getObjectBySignature(String signature) {
if (Util.isNull(signature)) throw new NullPointerException();
return (R) knownSignatures.get(signature);
}
/**
* Invalidate an Object Signature. This will remove the link between the Signature and the Object
*
* @param signature Object's Signature
*/
public void invalidateObjectSignature(String signature) {
knownSignatures.remove(signature);
}
/**
* Gets the Runtime Directory
*
@ -532,6 +592,19 @@ public final class SubAPI {
* @return Minecraft Version
*/
public Version getGameVersion() {
return new Version(plugin.getGameVersion());
if (System.getProperty("subservers.minecraft.version", "").length() > 0) {
return new Version(System.getProperty("subservers.minecraft.version"));
} else {
String raw = plugin.getGameVersion();
if (raw.contains(",")) {
String[] split = raw.split(",\\s*");
return new Version(split[split.length - 1]);
} else if (raw.contains("-")) {
String[] split = raw.split("\\s*-\\s*");
return new Version(split[split.length - 1]);
} else {
return new Version(plugin.getGameVersion());
}
}
}
}

View File

@ -4,6 +4,7 @@ import net.ME1312.SubServers.Bungee.Host.Host;
import net.ME1312.SubServers.Bungee.Host.Server;
import net.ME1312.SubServers.Bungee.Host.SubCreator;
import net.ME1312.SubServers.Bungee.Host.SubServer;
import net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX;
import net.ME1312.SubServers.Bungee.Library.NamedContainer;
import net.ME1312.SubServers.Bungee.Library.Util;
import net.ME1312.SubServers.Bungee.Library.Version.Version;
@ -14,7 +15,6 @@ import net.md_5.bungee.api.chat.HoverEvent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import net.md_5.bungee.api.plugin.Command;
import net.md_5.bungee.api.plugin.TabExecutor;
import net.md_5.bungee.command.ConsoleCommandSender;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
@ -34,11 +34,22 @@ import java.util.*;
* Plugin Command Class
*/
@SuppressWarnings("deprecation")
public final class SubCommand extends Command implements TabExecutor {
public final class SubCommand extends CommandX {
private SubPlugin plugin;
private String label;
protected SubCommand(SubPlugin plugin, String command) {
protected static NamedContainer<SubCommand, CommandX> newInstance(SubPlugin plugin, String command) {
NamedContainer<SubCommand, CommandX> cmd = new NamedContainer<>(new SubCommand(plugin, command), null);
if (plugin.api.getGameVersion().compareTo(new Version("1.13")) < 0) {
cmd.set(cmd.name());
return cmd;
} else {
cmd.set(new net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.CommandX(cmd.name()));
return cmd;
}
}
private SubCommand(SubPlugin plugin, String command) {
super(command);
this.plugin = plugin;
this.label = '/' + command;
@ -50,7 +61,6 @@ public final class SubCommand extends Command implements TabExecutor {
* @param sender Sender
* @param args Arguments
*/
@Override
public void execute(CommandSender sender, String[] args) {
if (sender instanceof ConsoleCommandSender) {
if (args.length > 0) {
@ -384,111 +394,6 @@ public final class SubCommand extends Command implements TabExecutor {
}
}
/**
* Tab complete for players
*
* @param sender Sender
* @param args Arguments
* @return Tab completes
*/
@Override
public Iterable<String> onTabComplete(CommandSender sender, String[] args) {
String last = (args.length > 0)?args[args.length - 1].toLowerCase():"";
if (args.length <= 1) {
List<String> cmds = Arrays.asList("help", "list", "info", "status", "version", "start", "stop", "kill", "terminate", "cmd", "command", "create");
if (last.length() == 0) {
return cmds;
} else {
List<String> list = new ArrayList<String>();
for (String cmd : cmds) {
if (cmd.startsWith(last)) list.add(cmd);
}
return list;
}
} else {
if (args[0].equals("info") || args[0].equals("status") ||
args[0].equals("start") ||
args[0].equals("stop") ||
args[0].equals("kill") || args[0].equals("terminate")) {
if (args.length == 2) {
List<String> list = new ArrayList<String>();
if (last.length() == 0) {
for (SubServer server : plugin.api.getSubServers().values()) list.add(server.getName());
} else {
for (SubServer server : plugin.api.getSubServers().values()) {
if (server.getName().toLowerCase().startsWith(last)) list.add(server.getName());
}
}
return list;
}
return Collections.emptyList();
} else if (args[0].equals("cmd") || args[0].equals("command")) {
if (args.length == 2) {
List<String> list = new ArrayList<String>();
if (last.length() == 0) {
for (SubServer server : plugin.api.getSubServers().values()) list.add(server.getName());
} else {
for (SubServer server : plugin.api.getSubServers().values()) {
if (server.getName().toLowerCase().startsWith(last)) list.add(server.getName());
}
}
return list;
} else if (args.length == 3) {
if (last.length() == 0) {
return Collections.singletonList("<Command>");
}
} else {
if (last.length() == 0) {
return Collections.singletonList("[Args...]");
}
}
return Collections.emptyList();
} else if (args[0].equals("create")) {
if (args.length == 2) {
if (last.length() == 0) {
return Collections.singletonList("<Name>");
}
} else if (args.length == 3) {
List<String> list = new ArrayList<String>();
if (last.length() == 0) {
for (Host host : plugin.api.getHosts().values()) list.add(host.getName());
} else {
for (Host host : plugin.api.getHosts().values()) {
if (host.getName().toLowerCase().startsWith(last)) list.add(host.getName());
}
}
return list;
} else if (args.length == 4) {
List<String> list = new ArrayList<String>();
Map<String, Host> hosts = plugin.api.getHosts();
if (hosts.keySet().contains(args[2].toLowerCase())) {
if (last.length() == 0) {
for (SubCreator.ServerTemplate template : hosts.get(args[2].toLowerCase()).getCreator().getTemplates().values()) list.add(template.toString());
} else {
for (SubCreator.ServerTemplate template : hosts.get(args[2].toLowerCase()).getCreator().getTemplates().values()) {
if (template.toString().toLowerCase().startsWith(last)) list.add(template.toString());
}
}
} else {
list.add("<Template>");
}
return list;
} else if (args.length == 5) {
if (last.length() == 0) {
return Collections.singletonList("<Version>");
}
} else if (args.length == 6) {
if (last.length() == 0) {
return Collections.singletonList("<Port>");
}
}
return Collections.emptyList();
} else {
return Collections.emptyList();
}
}
}
private String[] printHelp() {
return new String[]{
"SubServers > Console Command Help:",
@ -510,16 +415,139 @@ public final class SubCommand extends Command implements TabExecutor {
};
}
/**
* Suggest command arguments
*
* @param sender Sender
* @param args Arguments
* @return The validator's response and list of possible arguments
*/
public NamedContainer<String, List<String>> suggestArguments(CommandSender sender, String[] args) {
String last = (args.length > 0)?args[args.length - 1].toLowerCase():"";
if (args.length <= 1) {
List<String> cmds = Arrays.asList("help", "list", "info", "status", "version", "start", "stop", "kill", "terminate", "cmd", "command", "create");
if (last.length() == 0) {
return new NamedContainer<>(null, cmds);
} else {
List<String> list = new ArrayList<String>();
for (String cmd : cmds) {
if (cmd.startsWith(last)) list.add(last + cmd.substring(last.length()));
}
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Command.Generic.Invalid-Subcommand", '&').replace("$str$", args[0]):null, list);
}
} else {
if (args[0].equals("info") || args[0].equals("status") ||
args[0].equals("start") ||
args[0].equals("stop") ||
args[0].equals("kill") || args[0].equals("terminate")) {
List<String> list = new ArrayList<String>();
if (args.length == 2) {
if (last.length() == 0) {
for (SubServer server : plugin.api.getSubServers().values()) list.add(server.getName());
} else {
for (SubServer server : plugin.api.getSubServers().values()) {
if (server.getName().toLowerCase().startsWith(last))
list.add(last + server.getName().substring(last.length()));
}
}
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Command.Generic.Unknown-SubServer", '&').replace("$str$", args[0]):null, list);
} else {
return new NamedContainer<>(null, Collections.emptyList());
}
} else if (args[0].equals("cmd") || args[0].equals("command")) {
if (args.length == 2) {
List<String> list = new ArrayList<String>();
if (last.length() == 0) {
for (SubServer server : plugin.api.getSubServers().values()) list.add(server.getName());
} else {
for (SubServer server : plugin.api.getSubServers().values()) {
if (server.getName().toLowerCase().startsWith(last)) list.add(last + server.getName().substring(last.length()));
}
}
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Command.Generic.Unknown-SubServer", '&').replace("$str$", args[0]):null, list);
} else if (args.length == 3) {
return new NamedContainer<>(null, Collections.singletonList("<Command>"));
} else {
return new NamedContainer<>(null, Collections.singletonList("[Args...]"));
}
} else if (args[0].equals("create")) {
if (args.length == 2) {
return new NamedContainer<>(null, Collections.singletonList("<Name>"));
} else if (args.length == 3) {
List<String> list = new ArrayList<String>();
if (last.length() == 0) {
for (Host host : plugin.api.getHosts().values()) list.add(host.getName());
} else {
for (Host host : plugin.api.getHosts().values()) {
if (host.getName().toLowerCase().startsWith(last)) list.add(last + host.getName().substring(last.length()));
}
}
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Command.Generic.Unknown-Host", '&').replace("$str$", args[0]):null, list);
} else if (args.length == 4) {
List<String> list = new ArrayList<String>();
Map<String, Host> hosts = plugin.api.getHosts();
if (last.length() == 0) {
for (SubCreator.ServerTemplate template : hosts.get(args[2].toLowerCase()).getCreator().getTemplates().values()) list.add(template.toString());
} else {
for (SubCreator.ServerTemplate template : hosts.get(args[2].toLowerCase()).getCreator().getTemplates().values()) {
if (template.toString().toLowerCase().startsWith(last)) list.add(last + template.toString().substring(last.length()));
}
}
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Command.Creator.Invalid-Template", '&').replace("$str$", args[0]):null, list);
} else if (args.length == 5) {
if (last.length() > 0) {
if (new Version("1.8").compareTo(new Version(last)) > 0) {
return new NamedContainer<>(plugin.lang.get().getSection("Lang").getColoredString("Command.Creator.Invalid-Version", '&'), Collections.emptyList());
}
}
return new NamedContainer<>(null, Collections.singletonList("<Version>"));
} else if (args.length == 6) {
if (last.length() > 0) {
if (Util.isException(() -> Integer.parseInt(last)) || Integer.parseInt(last) <= 0 || Integer.parseInt(last) > 65535) {
return new NamedContainer<>(plugin.lang.get().getSection("Lang").getColoredString("Command.Creator.Invalid-Port", '&'), Collections.emptyList());
}
}
return new NamedContainer<>(null, Collections.singletonList("<Port>"));
} else {
return new NamedContainer<>(null, Collections.emptyList());
}
} else {
return new NamedContainer<>(plugin.lang.get().getSection("Lang").getColoredString("Command.Generic.Invalid-Subcommand", '&').replace("$str$", args[0]), Collections.emptyList());
}
}
}
/**
* BungeeCord /server
*/
public static final class BungeeServer extends Command implements TabExecutor {
public static final class BungeeServer extends net.ME1312.SubServers.Bungee.Library.Compatibility.CommandX {
private SubPlugin plugin;
protected BungeeServer(SubPlugin plugin, String command) {
private BungeeServer(SubPlugin plugin, String command) {
super(command, "bungeecord.command.server");
this.plugin = plugin;
}
protected static NamedContainer<BungeeServer, CommandX> newInstance(SubPlugin plugin, String command) {
NamedContainer<BungeeServer, CommandX> cmd = new NamedContainer<>(new BungeeServer(plugin, command), null);
if (plugin.api.getGameVersion().compareTo(new Version("1.13")) < 0) {
cmd.set(cmd.name());
return cmd;
} else {
cmd.set(new net.ME1312.SubServers.Bungee.Library.Compatibility.v1_13.CommandX(new CommandX(command) {
@Override
public void execute(CommandSender sender, String[] args) {
cmd.name().suggestArguments(sender, args);
}
@Override
public NamedContainer<String, List<String>> suggestArguments(CommandSender sender, String[] args) {
return cmd.name().suggestArguments(sender, args);
}
}));
return cmd;
}
}
/**
* Override /server
*
@ -566,27 +594,26 @@ public final class SubCommand extends Command implements TabExecutor {
}
/**
* Tab completer
* Suggest command arguments
*
* @param sender Sender
* @param args Arguments
* @return Tab completes
* @return The validator's response and list of possible arguments
*/
@Override
public Iterable<String> onTabComplete(CommandSender sender, String[] args) {
public NamedContainer<String, List<String>> suggestArguments(CommandSender sender, String[] args) {
if (args.length <= 1) {
String last = (args.length > 0)?args[args.length - 1].toLowerCase():"";
if (last.length() == 0) {
return plugin.getServers().keySet();
return new NamedContainer<>(null, new LinkedList<>(plugin.getServers().keySet()));
} else {
List<String> list = new ArrayList<String>();
for (String server : plugin.getServers().keySet()) {
if (server.toLowerCase().startsWith(last)) list.add(server);
}
return list;
return new NamedContainer<>((list.size() <= 0)?plugin.lang.get().getSection("Lang").getColoredString("Bungee.Server.Invalid", '&').replace("$str$", args[0]):null, list);
}
} else {
return Collections.emptyList();
return new NamedContainer<>(null, Collections.emptyList());
}
}
}

View File

@ -63,7 +63,7 @@ public final class SubPlugin extends BungeeCord implements Listener {
private BigInteger lastSignature = new BigInteger("-1");
protected SubPlugin(PrintStream out) throws IOException {
System.out.println("SubServers > Loading SubServers.Bungee v" + version.toString() + " Libraries... ");
System.out.println("SubServers > Loading SubServers.Bungee v" + version.toString() + " Libraries (for Minecraft " + api.getGameVersion() + ")");
this.out = out;
if (!(new UniversalFile(dir, "config.yml").exists())) {
@ -91,7 +91,7 @@ public final class SubPlugin extends BungeeCord implements Listener {
if (!(new UniversalFile(dir, "lang.yml").exists())) {
Util.copyFromJar(SubPlugin.class.getClassLoader(), "net/ME1312/SubServers/Bungee/Library/Files/lang.yml", new UniversalFile(dir, "lang.yml").getPath());
System.out.println("SubServers > Created ~/SubServers/lang.yml");
} else if ((new Version((new YAMLConfig(new UniversalFile(dir, "lang.yml"))).get().getString("Version", "0")).compareTo(new Version("2.12.1e+"))) != 0) {
} else if ((new Version((new YAMLConfig(new UniversalFile(dir, "lang.yml"))).get().getString("Version", "0")).compareTo(new Version("2.13a+"))) != 0) {
Files.move(new UniversalFile(dir, "lang.yml").toPath(), new UniversalFile(dir, "lang.old" + Math.round(Math.random() * 100000) + ".yml").toPath());
Util.copyFromJar(SubPlugin.class.getClassLoader(), "net/ME1312/SubServers/Bungee/Library/Files/lang.yml", new UniversalFile(dir, "lang.yml").getPath());
System.out.println("SubServers > Updated ~/SubServers/lang.yml");
@ -426,16 +426,27 @@ public final class SubPlugin extends BungeeCord implements Listener {
legServers.clear();
int plugins = 0;
if (!status && api.listeners.size() > 0) {
System.out.println("SubServers > Loading SubAPI Plugins...");
for (NamedContainer<Runnable, Runnable> listener : api.listeners) {
try {
if (listener.name() != null) {
listener.name().run();
List<?> listeners = (status)?api.reloadListeners:api.listeners;
if (listeners.size() > 0) {
System.out.println("SubServers > "+((status)?"Rel":"L")+"oading SubAPI Plugins...");
for (Object obj : listeners) {
if (status) {
try {
((Runnable) obj).run();
plugins++;
} catch (Throwable e) {
new InvocationTargetException(e, "Problem enabling plugin").printStackTrace();
}
} else {
NamedContainer<Runnable, Runnable> listener = (NamedContainer<Runnable, Runnable>) obj;
try {
if (listener.name() != null) {
listener.name().run();
plugins++;
}
} catch (Throwable e) {
new InvocationTargetException(e, "Problem enabling plugin").printStackTrace();
}
} catch (Throwable e) {
new InvocationTargetException(e, "Problem enabling plugin").printStackTrace();
}
}
}
@ -446,12 +457,12 @@ public final class SubPlugin extends BungeeCord implements Listener {
private void post() {
if (getPluginManager().getPlugin("RedisBungee") != null) redis = true;
if (config.get().getSection("Settings").getBoolean("Override-Bungee-Commands", true)) {
getPluginManager().registerCommand(null, new SubCommand.BungeeServer(this, "server"));
getPluginManager().registerCommand(null, SubCommand.BungeeServer.newInstance(this, "server").get());
getPluginManager().registerCommand(null, new SubCommand.BungeeList(this, "glist"));
}
getPluginManager().registerCommand(null, new SubCommand(this, "subservers"));
getPluginManager().registerCommand(null, new SubCommand(this, "subserver"));
getPluginManager().registerCommand(null, new SubCommand(this, "sub"));
getPluginManager().registerCommand(null, SubCommand.newInstance(this, "subservers").get());
getPluginManager().registerCommand(null, SubCommand.newInstance(this, "subserver").get());
getPluginManager().registerCommand(null, SubCommand.newInstance(this, "sub").get());
new Metrics(this);
new Timer().schedule(new TimerTask() {
@ -533,13 +544,19 @@ public final class SubPlugin extends BungeeCord implements Listener {
exServers.clear();
}
/**
* Returns a unique signature for use by signed objects
*
* @return Signature
*/
public String signObject() {
return (lastSignature = lastSignature.add(BigInteger.ONE)).toString();
String getNewSignature() {
BigInteger number = (lastSignature = lastSignature.add(BigInteger.ONE));
final BigInteger BASE = BigInteger.valueOf(64);
final String DIGITS = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/";
StringBuilder result = new StringBuilder();
while (number.compareTo(BigInteger.ZERO) == 1) { // number > 0
BigInteger[] divmod = number.divideAndRemainder(BASE);
number = divmod[0];
int digit = divmod[1].intValue();
result.insert(0, DIGITS.charAt(digit));
}
return (result.length() == 0) ? DIGITS.substring(0, 1) : result.toString();
}
/**

Binary file not shown.

View File

@ -74,7 +74,7 @@ public class InternalUIHandler implements UIHandler, Listener {
} else if (item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Group-Menu", '&'))) {
player.closeInventory();
gui.groupMenu(1);
} else if (item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.Group-Menu.Server-Menu", '&'))) {
} else if (item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Server-Menu", '&'))) {
player.closeInventory();
gui.serverMenu(1, null, null);
} else if (!item.equals(ChatColor.RESET.toString()) && !item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.No-Hosts", '&'))) {

View File

@ -63,12 +63,12 @@ public class InternalUIRenderer extends UIRenderer {
reopen();
}
ItemStack createItem(String material, String newdata, short olddata) {
ItemStack createItem(String material, String name, short damage) {
try {
if (plugin.api.getGameVersion().compareTo(new Version("1.13")) < 0) {
return ItemStack.class.getConstructor(Material.class, int.class, short.class).newInstance(Material.valueOf(material), 1, olddata);
return ItemStack.class.getConstructor(Material.class, int.class, short.class).newInstance(Material.valueOf(material), 1, damage);
} else {
return new ItemStack(Material.valueOf(newdata), 1);
return new ItemStack(Material.valueOf(name), 1);
}
} catch (Exception e) {
return new ItemStack(Material.AIR);
@ -181,7 +181,7 @@ public class InternalUIRenderer extends UIRenderer {
if (json.getJSONObject("groups").length() <= 0) {
block = createItem("STAINED_GLASS_PANE", "LIME_STAINED_GLASS_PANE", (short) 5);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(plugin.lang.getSection("Lang").getColoredString("Interface.Group-Menu.Server-Menu", '&'));
blockMeta.setDisplayName(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Server-Menu", '&'));
} else {
block = createItem("STAINED_GLASS_PANE", "ORANGE_STAINED_GLASS_PANE", (short) 1);
blockMeta = block.getItemMeta();

View File

@ -1,17 +1,13 @@
package net.ME1312.SubServers.Client.Bukkit.Graphic;
import net.ME1312.SubServers.Client.Bukkit.Library.Container;
import net.ME1312.SubServers.Client.Bukkit.Library.NamedContainer;
import net.ME1312.SubServers.Client.Bukkit.Library.Util;
import net.ME1312.SubServers.Client.Bukkit.Library.Version.Version;
import net.ME1312.SubServers.Client.Bukkit.Network.Packet.PacketCreateServer;
import net.ME1312.SubServers.Client.Bukkit.SubPlugin;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.scheduler.BukkitTask;
import java.util.*;
import java.util.regex.Matcher;

View File

@ -127,10 +127,14 @@ public final class SubAPI {
* @return Minecraft Version
*/
public Version getGameVersion() {
try {
return new Version(Bukkit.getBukkitVersion().split("-")[0]);
} catch (ArrayIndexOutOfBoundsException e) {
return new Version(plugin.version.toString().substring(0, plugin.version.toString().length() - 1));
if (System.getProperty("subservers.minecraft.version", "").length() > 0) {
return new Version(System.getProperty("subservers.minecraft.version"));
} else {
try {
return new Version(Bukkit.getBukkitVersion().split("-")[0]);
} catch (ArrayIndexOutOfBoundsException e) {
return new Version(plugin.version.toString().substring(0, plugin.version.toString().length() - 1));
}
}
}
}

View File

@ -49,7 +49,7 @@ public final class SubPlugin extends JavaPlugin {
@Override
public void onEnable() {
try {
Bukkit.getLogger().info("SubServers > Loading SubServers.Client.Bukkit v" + version.toString() + " Libraries... ");
Bukkit.getLogger().info("SubServers > Loading SubServers.Client.Bukkit v" + version.toString() + " Libraries (for Minecraft " + api.getGameVersion() + ")");
getDataFolder().mkdirs();
if (new UniversalFile(getDataFolder().getParentFile(), "SubServers-Client:config.yml").exists()) {
Files.move(new UniversalFile(getDataFolder().getParentFile(), "SubServers-Client:config.yml").toPath(), new UniversalFile(getDataFolder(), "config.yml").toPath(), StandardCopyOption.REPLACE_EXISTING);

Binary file not shown.

View File

@ -73,7 +73,7 @@ public final class ExHost {
log = new Logger("SubServers");
try {
Logger.setup(System.out, System.err, dir);
log.info.println("Loading SubServers.Host v" + version.toString() + " Libraries... ");
log.info.println("Loading SubServers.Host v" + version.toString() + " Libraries");
dir.mkdirs();
new File(dir, "Plugins").mkdir();
if (!(new UniversalFile(dir, "config.yml").exists())) {

Binary file not shown.

View File

@ -142,11 +142,24 @@ public final class SubAPI {
}
/**
* Gets the Recommended Minecraft Version
* Gets the Latest Supported Minecraft Version
*
* @return Minecraft Version
*/
public Version getGameVersion() {
return new Version(plugin.getGameVersion());
if (System.getProperty("subservers.minecraft.version", "").length() > 0) {
return new Version(System.getProperty("subservers.minecraft.version"));
} else {
String raw = plugin.getGameVersion();
if (raw.contains(",")) {
String[] split = raw.split(",\\s*");
return new Version(split[split.length - 1]);
} else if (raw.contains("-")) {
String[] split = raw.split("\\s*-\\s*");
return new Version(split[split.length - 1]);
} else {
return new Version(plugin.getGameVersion());
}
}
}
}

View File

@ -55,7 +55,7 @@ public final class SubPlugin extends BungeeCord implements Listener {
private boolean posted = false;
protected SubPlugin(PrintStream out) throws IOException {
System.out.println("SubServers > Loading SubServers.Sync v" + version.toString() + " Libraries... ");
System.out.println("SubServers > Loading SubServers.Sync v" + version.toString() + " Libraries (for Minecraft " + api.getGameVersion() + ")");
this.out = out;
if (!(new UniversalFile(dir, "config.yml").exists())) {