SubServers Release v2.11.2h

This commit is contained in:
ME1312 2017-01-26 17:19:48 -05:00
parent 96743ddecf
commit dcd2ad8aa6
44 changed files with 794 additions and 197 deletions

2
.gitignore vendored
View File

@ -28,6 +28,8 @@ crashlytics-build.properties
# Hide Unfinished Project Files
/Artifacts/SubServers.Host.jar
/SubServers.Host/
/Artifacts/SubServers.Test.jar
/SubServers.Test/
# Hide Others
/build.ant

Binary file not shown.

Binary file not shown.

View File

@ -88,6 +88,10 @@
<dd>
<div class="block">Adds a Driver for Hosts</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#addListener-java.lang.Runnable-java.lang.Runnable-">addListener(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>
@ -283,6 +287,10 @@
<dd>
<div class="block">Check if a Handle exists</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Util.html#copyDirectory-java.io.File-java.io.File-">copyDirectory(File, File)</a></span> - Static method in class net.ME1312.SubServers.Bungee.Library.<a href="net/ME1312/SubServers/Bungee/Library/Util.html" title="class in net.ME1312.SubServers.Bungee.Library">Util</a></dt>
<dd>
<div class="block">Copy a Directory</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Util.html#copyFromJar-java.lang.ClassLoader-java.lang.String-java.lang.String-">copyFromJar(ClassLoader, String, String)</a></span> - Static method in class net.ME1312.SubServers.Bungee.Library.<a href="net/ME1312/SubServers/Bungee/Library/Util.html" title="class in net.ME1312.SubServers.Bungee.Library">Util</a></dt>
<dd>
<div class="block">Copy from the Class Loader</div>
@ -599,6 +607,14 @@
<dd>
<div class="block">Get the Server Directory</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Host.html#getDisplayName--">getDisplayName()</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a></dt>
<dd>
<div class="block">Get the Display Name of this Host</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Server.html#getDisplayName--">getDisplayName()</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/Server.html" title="class in net.ME1312.SubServers.Bungee.Host">Server</a></dt>
<dd>
<div class="block">Get the Display Name of this Server</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html#getDouble-java.lang.String-">getDouble(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 Double by Handle</div>
@ -1683,6 +1699,10 @@
</a>
<h2 class="title">R</h2>
<dl>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Util.html#random-int-int-">random(int, int)</a></span> - Static method in class net.ME1312.SubServers.Bungee.Library.<a href="net/ME1312/SubServers/Bungee/Library/Util.html" title="class in net.ME1312.SubServers.Bungee.Library">Util</a></dt>
<dd>
<div class="block">Get a Random Integer</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Util.html#readAll-java.io.Reader-">readAll(Reader)</a></span> - Static method in class net.ME1312.SubServers.Bungee.Library.<a href="net/ME1312/SubServers/Bungee/Library/Util.html" title="class in net.ME1312.SubServers.Bungee.Library">Util</a></dt>
<dd>
<div class="block">Read Everything from Reader</div>
@ -1823,6 +1843,16 @@
<dd>
<div class="block">Sets the Command to be Sent</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Host.html#setDisplayName-java.lang.String-">setDisplayName(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a></dt>
<dd>
<div class="block">Sets the Display Name for this Host</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setDisplayName-java.lang.String-">setDisplayName(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.Internal.<a href="net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html" title="class in net.ME1312.SubServers.Bungee.Host.Internal">InternalSubServer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Server.html#setDisplayName-java.lang.String-">setDisplayName(String)</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/Server.html" title="class in net.ME1312.SubServers.Bungee.Host">Server</a></dt>
<dd>
<div class="block">Sets the Display Name for this Server</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Host/Host.html#setEnabled-boolean-">setEnabled(boolean)</a></span> - Method in class net.ME1312.SubServers.Bungee.Host.<a href="net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a></dt>
<dd>
<div class="block">Set if this Host is Enabled</div>

View File

@ -17,7 +17,7 @@
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":6,"i5":10,"i6":6,"i7":6,"i8":6,"i9":6,"i10":10,"i11":10,"i12":6,"i13":6,"i14":6,"i15":10,"i16":6,"i17":10,"i18":10,"i19":6,"i20":6,"i21":10,"i22":6,"i23":10,"i24":6,"i25":10,"i26":6};
var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":6,"i5":10,"i6":6,"i7":6,"i8":6,"i9":6,"i10":10,"i11":10,"i12":10,"i13":6,"i14":6,"i15":6,"i16":10,"i17":6,"i18":10,"i19":10,"i20":6,"i21":10,"i22":6,"i23":10,"i24":6,"i25":10,"i26":6,"i27":10,"i28":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";
@ -252,105 +252,117 @@ implements <a href="../../../../../net/ME1312/SubServers/Bungee/Library/ExtraDat
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getDisplayName--">getDisplayName</a></span>()</code>
<div class="block">Get the Display Name of this Host</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLSection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra--">getExtra</a></span>()</code>
<div class="block">Get the extra value section</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/YAMLValue.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLValue</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra-java.lang.String-">getExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Get an extra value</div>
</td>
</tr>
<tr id="i12" class="altColor">
<tr id="i13" class="rowColor">
<td class="colFirst"><code>abstract java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getName--">getName</a></span>()</code>
<div class="block">Get the Name of this Host</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<tr id="i14" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="class in net.ME1312.SubServers.Bungee.Host">SubServer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.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="i14" class="altColor">
<tr id="i15" class="rowColor">
<td class="colFirst"><code>abstract java.util.Map&lt;java.lang.String,? extends <a href="../../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="class in net.ME1312.SubServers.Bungee.Host">SubServer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getSubServers--">getSubServers</a></span>()</code>
<div class="block">Gets the SubServers on this Host</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#hasExtra-java.lang.String-">hasExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Determine if an extra value exists</div>
</td>
</tr>
<tr id="i16" class="altColor">
<tr id="i17" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#isEnabled--">isEnabled</a></span>()</code>
<div class="block">Is this Host Enabled?</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeExtra-java.lang.String-">removeExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Remove an extra value from this Server</div>
</td>
</tr>
<tr id="i18" class="altColor">
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeSubServer-java.lang.String-">removeSubServer</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Removes a SubServer</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<tr id="i20" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeSubServer-java.util.UUID-java.lang.String-">removeSubServer</a></span>(java.util.UUID&nbsp;player,
java.lang.String&nbsp;name)</code>
<div class="block">Removes a SubServer</div>
</td>
</tr>
<tr id="i20" class="altColor">
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#setDisplayName-java.lang.String-">setDisplayName</a></span>(java.lang.String&nbsp;value)</code>
<div class="block">Sets the Display Name for this Host</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#setEnabled-boolean-">setEnabled</a></span>(boolean&nbsp;value)</code>
<div class="block">Set if this Host is Enabled</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<tr id="i23" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#start-java.lang.String...-">start</a></span>(java.lang.String...&nbsp;servers)</code>
<div class="block">Starts the Servers Specified</div>
</td>
</tr>
<tr id="i22" class="altColor">
<tr id="i24" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#start-java.util.UUID-java.lang.String...-">start</a></span>(java.util.UUID&nbsp;player,
java.lang.String...&nbsp;servers)</code>
<div class="block">Starts the Servers Specified</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<tr id="i25" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#stop-java.lang.String...-">stop</a></span>(java.lang.String...&nbsp;servers)</code>
<div class="block">Stops the Servers Specified</div>
</td>
</tr>
<tr id="i24" class="altColor">
<tr id="i26" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#stop-java.util.UUID-java.lang.String...-">stop</a></span>(java.util.UUID&nbsp;player,
java.lang.String...&nbsp;servers)</code>
<div class="block">Stops the Servers Specified</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<tr id="i27" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#terminate-java.lang.String...-">terminate</a></span>(java.lang.String...&nbsp;servers)</code>
<div class="block">Terminates the Servers Specified</div>
</td>
</tr>
<tr id="i26" class="altColor">
<tr id="i28" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#terminate-java.util.UUID-java.lang.String...-">terminate</a></span>(java.util.UUID&nbsp;player,
java.lang.String...&nbsp;servers)</code>
@ -481,6 +493,34 @@ implements <a href="../../../../../net/ME1312/SubServers/Bungee/Library/ExtraDat
</dl>
</li>
</ul>
<a name="getDisplayName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDisplayName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getDisplayName()</pre>
<div class="block">Get the Display Name of this Host</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Display Name</dd>
</dl>
</li>
</ul>
<a name="setDisplayName-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisplayName</h4>
<pre>public&nbsp;void&nbsp;setDisplayName(java.lang.String&nbsp;value)</pre>
<div class="block">Sets the Display Name for this Host</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - Value (or null to reset)</dd>
</dl>
</li>
</ul>
<a name="start-java.lang.String...-">
<!-- -->
</a>

View File

@ -277,7 +277,7 @@ extends <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html"
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Host.<a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html" title="class in net.ME1312.SubServers.Bungee.Host">Host</a></h3>
<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#addSubServer-java.lang.String-boolean-int-java.lang.String-boolean-java.lang.String-net.ME1312.SubServers.Bungee.Host.Executable-java.lang.String-boolean-boolean-boolean-boolean-boolean-">addSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#command-java.lang.String-java.lang.String...-">command</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#forceRemoveSubServer-java.lang.String-">forceRemoveSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra--">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeSubServer-java.lang.String-">removeSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#start-java.lang.String...-">start</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#stop-java.lang.String...-">stop</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#terminate-java.lang.String...-">terminate</a></code></li>
<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#addSubServer-java.lang.String-boolean-int-java.lang.String-boolean-java.lang.String-net.ME1312.SubServers.Bungee.Host.Executable-java.lang.String-boolean-boolean-boolean-boolean-boolean-">addSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#command-java.lang.String-java.lang.String...-">command</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#forceRemoveSubServer-java.lang.String-">forceRemoveSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getDisplayName--">getDisplayName</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra--">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#removeSubServer-java.lang.String-">removeSubServer</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#setDisplayName-java.lang.String-">setDisplayName</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#start-java.lang.String...-">start</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#stop-java.lang.String...-">stop</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Host.html#terminate-java.lang.String...-">terminate</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">

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":10,"i19":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":10,"i20":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -263,53 +263,59 @@ extends <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/SubServer.h
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setDisplayName-java.lang.String-">setDisplayName</a></span>(java.lang.String&nbsp;value)</code>
<div class="block">Sets the Display Name for this Server</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setEnabled-boolean-">setEnabled</a></span>(boolean&nbsp;value)</code>
<div class="block">Set if the Server is Enabled</div>
</td>
</tr>
<tr id="i12" class="altColor">
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setLogging-boolean-">setLogging</a></span>(boolean&nbsp;value)</code>
<div class="block">Set if the Server is Logging</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setStopCommand-java.lang.String-">setStopCommand</a></span>(java.lang.String&nbsp;value)</code>
<div class="block">Set the Command that Stops the Server</div>
</td>
</tr>
<tr id="i14" class="altColor">
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#setTemporary-boolean-">setTemporary</a></span>(boolean&nbsp;value)</code>
<div class="block">Set If the Server is Temporary (will start server if not running)</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#start-java.util.UUID-">start</a></span>(java.util.UUID&nbsp;player)</code>
<div class="block">Starts the Server</div>
</td>
</tr>
<tr id="i16" class="altColor">
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#stop-java.util.UUID-">stop</a></span>(java.util.UUID&nbsp;player)</code>
<div class="block">Stops the Server</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#terminate-java.util.UUID-">terminate</a></span>(java.util.UUID&nbsp;player)</code>
<div class="block">Terminates the Server</div>
</td>
</tr>
<tr id="i18" class="altColor">
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#waitFor--">waitFor</a></span>()</code>
<div class="block">Waits for the Server to Stop</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Internal/InternalSubServer.html#willAutoRestart--">willAutoRestart</a></span>()</code>
<div class="block">If the Server will Auto Restart on unexpected shutdowns</div>
@ -328,7 +334,7 @@ extends <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/SubServer.h
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Host.<a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class in net.ME1312.SubServers.Bungee.Host">Server</a></h3>
<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra--">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getMotd--">getMotd</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getSubDataClient--">getSubDataClient</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isHidden--">isHidden</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isRestricted--">isRestricted</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#linkSubDataClient-net.ME1312.SubServers.Bungee.Network.Client-">linkSubDataClient</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setHidden-boolean-">setHidden</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setMotd-java.lang.String-">setMotd</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setRestricted-boolean-">setRestricted</a></code></li>
<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getDisplayName--">getDisplayName</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra--">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getMotd--">getMotd</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getSubDataClient--">getSubDataClient</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isHidden--">isHidden</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isRestricted--">isRestricted</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#linkSubDataClient-net.ME1312.SubServers.Bungee.Network.Client-">linkSubDataClient</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setHidden-boolean-">setHidden</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setMotd-java.lang.String-">setMotd</a>, <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setRestricted-boolean-">setRestricted</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.BungeeServerInfo">
@ -522,6 +528,23 @@ extends <a href="../../../../../../net/ME1312/SubServers/Bungee/Host/SubServer.h
</dl>
</li>
</ul>
<a name="setDisplayName-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisplayName</h4>
<pre>public&nbsp;void&nbsp;setDisplayName(java.lang.String&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setDisplayName-java.lang.String-">Server</a></code></span></div>
<div class="block">Sets the Display Name for this Server</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setDisplayName-java.lang.String-">setDisplayName</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class in net.ME1312.SubServers.Bungee.Host">Server</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - Value (or null to reset)</dd>
</dl>
</li>
</ul>
<a name="getHost--">
<!-- -->
</a>

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};
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};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -171,72 +171,84 @@ implements <a href="../../../../../net/ME1312/SubServers/Bungee/Network/ClientHa
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getDisplayName--">getDisplayName</a></span>()</code>
<div class="block">Get the Display Name of this Server</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/YAMLSection.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLSection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra--">getExtra</a></span>()</code>
<div class="block">Get the extra value section</div>
</td>
</tr>
<tr id="i2" class="altColor">
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Config/YAMLValue.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLValue</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra-java.lang.String-">getExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Get an extra value</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getMotd--">getMotd</a></span>()</code>
<div class="block">Gets the MOTD of the Server</div>
</td>
</tr>
<tr id="i4" class="altColor">
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Bungee/Network/Client.html" title="class in net.ME1312.SubServers.Bungee.Network">Client</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getSubDataClient--">getSubDataClient</a></span>()</code>
<div class="block">Gets the SubData Client</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#hasExtra-java.lang.String-">hasExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Determine if an extra value exists</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/Host/Server.html#isHidden--">isHidden</a></span>()</code>
<div class="block">If the server is hidden from players</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/Host/Server.html#isRestricted--">isRestricted</a></span>()</code>
<div class="block">Gets if the Server is Restricted</div>
</td>
</tr>
<tr id="i8" 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/Host/Server.html#linkSubDataClient-net.ME1312.SubServers.Bungee.Network.Client-">linkSubDataClient</a></span>(<a href="../../../../../net/ME1312/SubServers/Bungee/Network/Client.html" title="class in net.ME1312.SubServers.Bungee.Network">Client</a>&nbsp;client)</code>
<div class="block">Link a SubData Client to this Object</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#removeExtra-java.lang.String-">removeExtra</a></span>(java.lang.String&nbsp;handle)</code>
<div class="block">Remove an extra value from this Server</div>
</td>
</tr>
<tr id="i10" class="altColor">
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setDisplayName-java.lang.String-">setDisplayName</a></span>(java.lang.String&nbsp;value)</code>
<div class="block">Sets the Display Name for this Server</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setHidden-boolean-">setHidden</a></span>(boolean&nbsp;value)</code>
<div class="block">Set if the server is hidden from players</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setMotd-java.lang.String-">setMotd</a></span>(java.lang.String&nbsp;value)</code>
<div class="block">Sets the MOTD of the Server</div>
</td>
</tr>
<tr id="i12" class="altColor">
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setRestricted-boolean-">setRestricted</a></span>(boolean&nbsp;value)</code>
<div class="block">Sets if the Server is Restricted</div>
@ -331,6 +343,34 @@ implements <a href="../../../../../net/ME1312/SubServers/Bungee/Network/ClientHa
</dl>
</li>
</ul>
<a name="getDisplayName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDisplayName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getDisplayName()</pre>
<div class="block">Get the Display Name of this Server</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Display Name</dd>
</dl>
</li>
</ul>
<a name="setDisplayName-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisplayName</h4>
<pre>public&nbsp;void&nbsp;setDisplayName(java.lang.String&nbsp;value)</pre>
<div class="block">Sets the Display Name for this Server</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - Value (or null to reset)</dd>
</dl>
</li>
</ul>
<a name="isHidden--">
<!-- -->
</a>

View File

@ -342,7 +342,7 @@ extends <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html" t
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.ME1312.SubServers.Bungee.Host.<a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class in net.ME1312.SubServers.Bungee.Host">Server</a></h3>
<code><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra--">getExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getMotd--">getMotd</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getSubDataClient--">getSubDataClient</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isHidden--">isHidden</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isRestricted--">isRestricted</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#linkSubDataClient-net.ME1312.SubServers.Bungee.Network.Client-">linkSubDataClient</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setHidden-boolean-">setHidden</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setMotd-java.lang.String-">setMotd</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setRestricted-boolean-">setRestricted</a></code></li>
<code><a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#addExtra-java.lang.String-java.lang.Object-">addExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getDisplayName--">getDisplayName</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra--">getExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getExtra-java.lang.String-">getExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getMotd--">getMotd</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#getSubDataClient--">getSubDataClient</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#hasExtra-java.lang.String-">hasExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isHidden--">isHidden</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#isRestricted--">isRestricted</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#linkSubDataClient-net.ME1312.SubServers.Bungee.Network.Client-">linkSubDataClient</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#removeExtra-java.lang.String-">removeExtra</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setDisplayName-java.lang.String-">setDisplayName</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setHidden-boolean-">setHidden</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setMotd-java.lang.String-">setMotd</a>, <a href="../../../../../net/ME1312/SubServers/Bungee/Host/Server.html#setRestricted-boolean-">setRestricted</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.BungeeServerInfo">

View File

@ -17,7 +17,7 @@
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9};
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -149,31 +149,45 @@ extends java.lang.Object</pre>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#copyDirectory-java.io.File-java.io.File-">copyDirectory</a></span>(java.io.File&nbsp;from,
java.io.File&nbsp;to)</code>
<div class="block">Copy a Directory</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#copyFromJar-java.lang.ClassLoader-java.lang.String-java.lang.String-">copyFromJar</a></span>(java.lang.ClassLoader&nbsp;loader,
java.lang.String&nbsp;resource,
java.lang.String&nbsp;destination)</code>
<div class="block">Copy from the Class Loader</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<tr id="i2" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#deleteDirectory-java.io.File-">deleteDirectory</a></span>(java.io.File&nbsp;folder)</code>
<div class="block">Delete Directory</div>
</td>
</tr>
<tr id="i2" class="altColor">
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#isException-net.ME1312.SubServers.Bungee.Library.Util.ExceptionRunnable-">isException</a></span>(<a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.ExceptionRunnable.html" title="interface in net.ME1312.SubServers.Bungee.Library">Util.ExceptionRunnable</a>&nbsp;runnable)</code>
<div class="block">Determines if an Exception will occur</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<tr id="i4" class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#random-int-int-">random</a></span>(int&nbsp;min,
int&nbsp;max)</code>
<div class="block">Get a Random Integer</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#readAll-java.io.Reader-">readAll</a></span>(java.io.Reader&nbsp;rd)</code>
<div class="block">Read Everything from Reader</div>
</td>
</tr>
<tr id="i4" class="altColor">
<tr id="i6" class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Bungee/Library/Util.html#unescapeJavaString-java.lang.String-">unescapeJavaString</a></span>(java.lang.String&nbsp;str)</code>
<div class="block">Parse escapes in a Java String</div>
@ -268,6 +282,40 @@ extends java.lang.Object</pre>
</dl>
</li>
</ul>
<a name="copyDirectory-java.io.File-java.io.File-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyDirectory</h4>
<pre>public static&nbsp;void&nbsp;copyDirectory(java.io.File&nbsp;from,
java.io.File&nbsp;to)</pre>
<div class="block">Copy a Directory</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>from</code> - Source</dd>
<dd><code>to</code> - Destination</dd>
</dl>
</li>
</ul>
<a name="random-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>random</h4>
<pre>public static&nbsp;int&nbsp;random(int&nbsp;min,
int&nbsp;max)</pre>
<div class="block">Get a Random Integer</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>min</code> - Minimum Value</dd>
<dd><code>max</code> - Maximum Value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Random Integer</dd>
</dl>
</li>
</ul>
<a name="unescapeJavaString-java.lang.String-">
<!-- -->
</a>

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":9,"i8":42,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10};
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":9,"i9":42,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":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";
@ -136,6 +136,13 @@ extends java.lang.Object</pre>
</td>
</tr>
<tr id="i1" class="rowColor">
<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-">addListener</a></span>(java.lang.Runnable&nbsp;enable,
java.lang.Runnable&nbsp;disable)</code>
<div class="block">Adds a SubAPI Listener</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class 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,
@ -146,7 +153,7 @@ extends java.lang.Object</pre>
<div class="block">Adds a Server to the Network</div>
</td>
</tr>
<tr id="i2" class="altColor">
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class 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,
@ -158,37 +165,37 @@ extends java.lang.Object</pre>
<div class="block">Adds a Server to the Network</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<tr id="i4" 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#getBetaVersion--">getBetaVersion</a></span>()</code>
<div class="block">Gets the SubServers Beta Version</div>
</td>
</tr>
<tr id="i4" class="altColor">
<tr id="i5" 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#getGameVersion--">getGameVersion</a></span>()</code>
<div class="block">Gets the Recommended Minecraft Version</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<tr id="i6" 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="i6" class="altColor">
<tr id="i7" class="rowColor">
<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="i7" class="rowColor">
<tr id="i8" class="altColor">
<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="i8" class="altColor">
<tr id="i9" class="rowColor">
<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;
@ -196,67 +203,67 @@ extends java.lang.Object</pre>
</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<tr id="i10" class="altColor">
<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="i10" class="altColor">
<tr id="i11" 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#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="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#getProxyVersion--">getProxyVersion</a></span>()</code>
<div class="block">Gets the BungeeCord Version</div>
</td>
</tr>
<tr id="i12" class="altColor">
<tr id="i13" class="rowColor">
<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="i13" class="rowColor">
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class 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="i14" class="altColor">
<tr id="i15" class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Bungee/Host/Server.html" title="class 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="i15" class="rowColor">
<tr id="i16" class="altColor">
<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="i16" class="altColor">
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="class 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="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/SubServer.html" title="class 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="i18" class="altColor">
<tr id="i19" 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#getWrapperVersion--">getWrapperVersion</a></span>()</code>
<div class="block">Gets the SubServers Version</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<tr id="i20" 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>
@ -315,6 +322,22 @@ public&nbsp;<a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html" ti
</dl>
</li>
</ul>
<a name="addListener-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;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>disable</code> - An Event that will be called before SubAPI is disabled</dd>
</dl>
</li>
</ul>
<a name="getSubDataNetwork--">
<!-- -->
</a>

View File

@ -230,6 +230,8 @@
<dd>
<div class="block">Compare Versions</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#config">config</a></span> - Variable in class net.ME1312.SubServers.Client.Bukkit.<a href="net/ME1312/SubServers/Client/Bukkit/SubPlugin.html" title="class in net.ME1312.SubServers.Client.Bukkit">SubPlugin</a></dt>
<dd>&nbsp;</dd>
<dt><a href="net/ME1312/SubServers/Client/Bukkit/Library/Container.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library"><span class="typeNameLink">Container</span></a>&lt;<a href="net/ME1312/SubServers/Client/Bukkit/Library/Container.html" title="type parameter in Container">V</a>&gt; - Class in <a href="net/ME1312/SubServers/Client/Bukkit/Library/package-summary.html">net.ME1312.SubServers.Client.Bukkit.Library</a></dt>
<dd>
<div class="block">Container Class</div>
@ -242,6 +244,10 @@
<dd>
<div class="block">Check if a Handle exists</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html#copyDirectory-java.io.File-java.io.File-">copyDirectory(File, File)</a></span> - Static method in class net.ME1312.SubServers.Client.Bukkit.Library.<a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library">Util</a></dt>
<dd>
<div class="block">Copy a Directory</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html#copyFromJar-java.lang.ClassLoader-java.lang.String-java.lang.String-">copyFromJar(ClassLoader, String, String)</a></span> - Static method in class net.ME1312.SubServers.Client.Bukkit.Library.<a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library">Util</a></dt>
<dd>
<div class="block">Copy from the Class Loader</div>
@ -258,7 +264,7 @@
<dl>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html#deleteDirectory-java.io.File-">deleteDirectory(File)</a></span> - Static method in class net.ME1312.SubServers.Client.Bukkit.Library.<a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library">Util</a></dt>
<dd>
<div class="block">Delete Directory</div>
<div class="block">Delete a Directory</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Network/SubDataClient.html#destroy-boolean-">destroy(boolean)</a></span> - Method in class net.ME1312.SubServers.Client.Bukkit.Network.<a href="net/ME1312/SubServers/Client/Bukkit/Network/SubDataClient.html" title="class in net.ME1312.SubServers.Client.Bukkit.Network">SubDataClient</a></dt>
<dd>
@ -970,7 +976,7 @@
<dd>
<div class="block">Check if object is a Double</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#isEnabled-java.lang.String-">isEnabled(String)</a></span> - Method in interface net.ME1312.SubServers.Client.Bukkit.Graphic.<a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Graphic">Renderer</a></dt>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#isEnabled-org.json.JSONObject-">isEnabled(JSONObject)</a></span> - Method in interface net.ME1312.SubServers.Client.Bukkit.Graphic.<a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Graphic">Renderer</a></dt>
<dd>
<div class="block">Check if this Renderer is enabled for this Object</div>
</dd>
@ -1118,7 +1124,7 @@
<dd>
<div class="block">Enable Plugin</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#open-org.bukkit.entity.Player-java.lang.String-">open(Player, String)</a></span> - Method in interface net.ME1312.SubServers.Client.Bukkit.Graphic.<a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Graphic">Renderer</a></dt>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#open-org.bukkit.entity.Player-org.json.JSONObject-">open(Player, JSONObject)</a></span> - Method in interface net.ME1312.SubServers.Client.Bukkit.Graphic.<a href="net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Graphic">Renderer</a></dt>
<dd>
<div class="block">Open the GUI</div>
</dd>
@ -1234,14 +1240,16 @@
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Network/Packet/PacketTeleportPlayer.html#PacketTeleportPlayer-java.util.UUID-java.lang.String-java.lang.String-net.ME1312.SubServers.Client.Bukkit.Library.JSONCallback-">PacketTeleportPlayer(UUID, String, String, JSONCallback)</a></span> - Constructor for class net.ME1312.SubServers.Client.Bukkit.Network.Packet.<a href="net/ME1312/SubServers/Client/Bukkit/Network/Packet/PacketTeleportPlayer.html" title="class in net.ME1312.SubServers.Client.Bukkit.Network.Packet">PacketTeleportPlayer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#pluginconf">pluginconf</a></span> - Variable in class net.ME1312.SubServers.Client.Bukkit.<a href="net/ME1312/SubServers/Client/Bukkit/SubPlugin.html" title="class in net.ME1312.SubServers.Client.Bukkit">SubPlugin</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:R">
<!-- -->
</a>
<h2 class="title">R</h2>
<dl>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html#random-int-int-">random(int, int)</a></span> - Static method in class net.ME1312.SubServers.Client.Bukkit.Library.<a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library">Util</a></dt>
<dd>
<div class="block">Get a Random Integer</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html#readAll-java.io.Reader-">readAll(Reader)</a></span> - Static method in class net.ME1312.SubServers.Client.Bukkit.Library.<a href="net/ME1312/SubServers/Client/Bukkit/Library/Util.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library">Util</a></dt>
<dd>
<div class="block">Read Everything from Reader</div>

View File

@ -127,14 +127,14 @@ var activeTableTab = "activeTableTab";
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#isEnabled-java.lang.String-">isEnabled</a></span>(java.lang.String&nbsp;object)</code>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#isEnabled-org.json.JSONObject-">isEnabled</a></span>(org.json.JSONObject&nbsp;object)</code>
<div class="block">Check if this Renderer is enabled for this Object</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#open-org.bukkit.entity.Player-java.lang.String-">open</a></span>(org.bukkit.entity.Player&nbsp;player,
java.lang.String&nbsp;object)</code>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Graphic/Renderer.html#open-org.bukkit.entity.Player-org.json.JSONObject-">open</a></span>(org.bukkit.entity.Player&nbsp;player,
org.json.JSONObject&nbsp;object)</code>
<div class="block">Open the GUI</div>
</td>
</tr>
@ -153,19 +153,19 @@ var activeTableTab = "activeTableTab";
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="open-org.bukkit.entity.Player-java.lang.String-">
<a name="open-org.bukkit.entity.Player-org.json.JSONObject-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>open</h4>
<pre>void&nbsp;open(org.bukkit.entity.Player&nbsp;player,
java.lang.String&nbsp;object)</pre>
org.json.JSONObject&nbsp;object)</pre>
<div class="block">Open the GUI</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>player</code> - Player Opening</dd>
<dd><code>object</code> - Object Name</dd>
<dd><code>object</code> - JSON Representation of an Object</dd>
</dl>
</li>
</ul>
@ -183,17 +183,17 @@ var activeTableTab = "activeTableTab";
</dl>
</li>
</ul>
<a name="isEnabled-java.lang.String-">
<a name="isEnabled-org.json.JSONObject-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isEnabled</h4>
<pre>boolean&nbsp;isEnabled(java.lang.String&nbsp;object)</pre>
<pre>boolean&nbsp;isEnabled(org.json.JSONObject&nbsp;object)</pre>
<div class="block">Check if this Renderer is enabled for this Object</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>object</code> - Object Name</dd>
<dd><code>object</code> - JSON Representation of an Object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Enabled Status</dd>
</dl>

View File

@ -17,7 +17,7 @@
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9};
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
@ -149,31 +149,45 @@ extends java.lang.Object</pre>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#copyDirectory-java.io.File-java.io.File-">copyDirectory</a></span>(java.io.File&nbsp;from,
java.io.File&nbsp;to)</code>
<div class="block">Copy a Directory</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#copyFromJar-java.lang.ClassLoader-java.lang.String-java.lang.String-">copyFromJar</a></span>(java.lang.ClassLoader&nbsp;loader,
java.lang.String&nbsp;resource,
java.lang.String&nbsp;destination)</code>
<div class="block">Copy from the Class Loader</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<tr id="i2" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#deleteDirectory-java.io.File-">deleteDirectory</a></span>(java.io.File&nbsp;folder)</code>
<div class="block">Delete Directory</div>
<div class="block">Delete a Directory</div>
</td>
</tr>
<tr id="i2" class="altColor">
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#isException-net.ME1312.SubServers.Client.Bukkit.Library.Util.ExceptionRunnable-">isException</a></span>(<a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.ExceptionRunnable.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Library">Util.ExceptionRunnable</a>&nbsp;runnable)</code>
<div class="block">Determines if an Exception will occur</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<tr id="i4" class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#random-int-int-">random</a></span>(int&nbsp;min,
int&nbsp;max)</code>
<div class="block">Get a Random Integer</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#readAll-java.io.Reader-">readAll</a></span>(java.io.Reader&nbsp;rd)</code>
<div class="block">Read Everything from Reader</div>
</td>
</tr>
<tr id="i4" class="altColor">
<tr id="i6" class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Util.html#unescapeJavaString-java.lang.String-">unescapeJavaString</a></span>(java.lang.String&nbsp;str)</code>
<div class="block">Parse escapes in a Java String</div>
@ -261,13 +275,47 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>deleteDirectory</h4>
<pre>public static&nbsp;void&nbsp;deleteDirectory(java.io.File&nbsp;folder)</pre>
<div class="block">Delete Directory</div>
<div class="block">Delete a Directory</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>folder</code> - Location</dd>
</dl>
</li>
</ul>
<a name="copyDirectory-java.io.File-java.io.File-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyDirectory</h4>
<pre>public static&nbsp;void&nbsp;copyDirectory(java.io.File&nbsp;from,
java.io.File&nbsp;to)</pre>
<div class="block">Copy a Directory</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>from</code> - Source</dd>
<dd><code>to</code> - Destination</dd>
</dl>
</li>
</ul>
<a name="random-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>random</h4>
<pre>public static&nbsp;int&nbsp;random(int&nbsp;min,
int&nbsp;max)</pre>
<div class="block">Get a Random Integer</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>min</code> - Minimum Value</dd>
<dd><code>max</code> - Maximum Value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Random Integer</dd>
</dl>
</li>
</ul>
<a name="unescapeJavaString-java.lang.String-">
<!-- -->
</a>

View File

@ -107,7 +107,7 @@ var activeTableTab = "activeTableTab";
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">SubAPI</span>
<pre>public final class <span class="typeNameLabel">SubAPI</span>
extends java.lang.Object</pre>
<div class="block">SubAPI Class</div>
</li>

View File

@ -151,17 +151,17 @@ extends org.bukkit.plugin.java.JavaPlugin</pre>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#bversion">bversion</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Config/YAMLConfig.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library.Config">YAMLConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#config">config</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Graphic/UIHandler.html" title="interface in net.ME1312.SubServers.Client.Bukkit.Graphic">UIHandler</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#gui">gui</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Config/YAMLSection.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library.Config">YAMLSection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#lang">lang</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Config/YAMLConfig.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library.Config">YAMLConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#pluginconf">pluginconf</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Network/SubDataClient.html" title="class in net.ME1312.SubServers.Client.Bukkit.Network">SubDataClient</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../net/ME1312/SubServers/Client/Bukkit/SubPlugin.html#subdata">subdata</a></span></code>&nbsp;</td>
@ -250,13 +250,13 @@ extends org.bukkit.plugin.java.JavaPlugin</pre>
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="pluginconf">
<a name="config">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pluginconf</h4>
<pre>public&nbsp;<a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Config/YAMLConfig.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library.Config">YAMLConfig</a> pluginconf</pre>
<h4>config</h4>
<pre>public&nbsp;<a href="../../../../../net/ME1312/SubServers/Client/Bukkit/Library/Config/YAMLConfig.html" title="class in net.ME1312.SubServers.Client.Bukkit.Library.Config">YAMLConfig</a> config</pre>
</li>
</ul>
<a name="lang">

View File

@ -1,5 +1,5 @@
Manifest-Version: 1.0
Class-Path: BungeeCord.jar
Main-Class: net.ME1312.SubServers.Bungee.Launch
Implementation-Version: 2.11.2g
Implementation-Version: 2.11.2h
Specification-Version: 0

View File

@ -18,6 +18,7 @@ import java.util.UUID;
*/
public abstract class Host implements ExtraDataHandler {
private YAMLSection extra = new YAMLSection();
private String nick = null;
/**
* This constructor is required to launch your host from the drivers list. Do not add or remove any arguments.
@ -68,6 +69,24 @@ public abstract class Host implements ExtraDataHandler {
*/
public abstract String getName();
/**
* Get the Display Name of this Host
*
* @return Display Name
*/
public String getDisplayName() {
return (nick == null)?getName():nick;
}
/**
* Sets the Display Name for this Host
*
* @param value Value (or null to reset)
*/
public void setDisplayName(String value) {
this.nick = value;
}
/**
* Starts the Servers Specified
*

View File

@ -264,6 +264,7 @@ public class InternalSubCreator extends SubCreator {
YAMLConfig config = new YAMLConfig(new UniversalFile(dir, "plugins:Subservers:config.yml"));
YAMLSection settings = new YAMLSection();
settings.set("Version", "2.11.2a+");
settings.set("Ingame-Access", true);
settings.set("Use-Title-Messages", true);
YAMLSection subdata = new YAMLSection();
subdata.set("Name", name);

View File

@ -110,12 +110,16 @@ public class InternalSubServer extends SubServer {
}
} else {
if (willAutoRestart() && allowrestart) {
try {
Thread.sleep(2500);
start();
} catch (InterruptedException e) {
e.printStackTrace();
}
new Thread(() -> {
try {
while (thread != null && thread.isAlive()) {
Thread.sleep(250);
}
start();
} catch (InterruptedException e) {
e.printStackTrace();
}
}).start();
}
}
}
@ -203,6 +207,12 @@ public class InternalSubServer extends SubServer {
return process != null && process.isAlive();
}
@Override
public void setDisplayName(String value) {
super.setDisplayName(value);
logger.name = getDisplayName();
}
@Override
public Host getHost() {
return host;

View File

@ -18,6 +18,7 @@ import java.net.InetSocketAddress;
public class Server extends BungeeServerInfo implements ClientHandler, ExtraDataHandler {
private YAMLSection extra = new YAMLSection();
private Client client = null;
private String nick = null;
private String motd;
private boolean restricted;
private boolean hidden;
@ -45,6 +46,24 @@ public class Server extends BungeeServerInfo implements ClientHandler, ExtraData
} else throw new IllegalStateException("A SubData Client is already linked to Server: " + getName());
}
/**
* Get the Display Name of this Server
*
* @return Display Name
*/
public String getDisplayName() {
return (nick == null)?getName():nick;
}
/**
* Sets the Display Name for this Server
*
* @param value Value (or null to reset)
*/
public void setDisplayName(String value) {
this.nick = value;
}
/**
* If the server is hidden from players
*

View File

@ -1,6 +1,7 @@
package net.ME1312.SubServers.Bungee.Library;
import java.io.*;
import java.util.Random;
/**
* SubServers Utility Class
@ -85,6 +86,67 @@ public final class Util {
folder.delete();
}
/**
* Copy a Directory
*
* @param from Source
* @param to Destination
*/
public static void copyDirectory(File from, File to) {
if (from.isDirectory()) {
if (!to.exists()) {
to.mkdirs();
}
String files[] = from.list();
for (String file : files) {
File srcFile = new File(from, file);
File destFile = new File(to, file);
copyDirectory(srcFile, destFile);
}
} else {
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(from);
out = new FileOutputStream(to);
byte[] buffer = new byte[1024];
int length;
while ((length = in.read(buffer)) > 0) {
out.write(buffer, 0, length);
}
} catch (Exception e) {
try {
if (in != null) in.close();
} catch (IOException e1) {
e1.printStackTrace();
}
try {
if (out != null) out.close();
} catch (IOException e2) {
e2.printStackTrace();
}
}
}
}
/**
* Get a Random Integer
*
* @param min Minimum Value
* @param max Maximum Value
* @return Random Integer
*/
public static int random(int min, int max) {
return new Random().nextInt((max - min) + 1) + min;
}
/**
* Parse escapes in a Java String
*

View File

@ -51,6 +51,7 @@ public class PacketDownloadHostInfo implements PacketIn, PacketOut {
json.put("valid", true);
info.put("name", host.getName());
info.put("display", host.getDisplayName());
info.put("enabled", host.isEnabled());
info.put("address", host.getAddress().toString());
info.put("dir", host.getDirectory());

View File

@ -60,6 +60,7 @@ public class PacketDownloadServerInfo implements PacketIn, PacketOut {
info.put("temp", ((SubServer) server).isTemporary());
} if (server != null) {
info.put("name", server.getName());
info.put("display", server.getDisplayName());
info.put("address", server.getAddress().toString());
info.put("restricted", server.isRestricted());
info.put("hidden", server.isHidden());

View File

@ -49,6 +49,7 @@ public class PacketDownloadServerList implements PacketIn, PacketOut {
JSONObject exServers = new JSONObject();
for (Server server : plugin.exServers.values()) {
JSONObject info = new JSONObject();
info.put("display", server.getDisplayName());
JSONObject players = new JSONObject();
for (ProxiedPlayer player : server.getPlayers()) {
JSONObject pinfo = new JSONObject();
@ -68,10 +69,12 @@ public class PacketDownloadServerList implements PacketIn, PacketOut {
if (this.host == null || this.host.equalsIgnoreCase(host.getName())) {
JSONObject hinfo = new JSONObject();
hinfo.put("enabled", host.isEnabled());
hinfo.put("display", host.getDisplayName());
JSONObject servers = new JSONObject();
for (SubServer server : host.getSubServers().values()) {
JSONObject sinfo = new JSONObject();
sinfo.put("enabled", server.isEnabled() && host.isEnabled());
sinfo.put("display", server.getDisplayName());
sinfo.put("running", server.isRunning());
sinfo.put("temp", server.isTemporary());
JSONObject players = new JSONObject();

View File

@ -4,21 +4,20 @@ import net.ME1312.SubServers.Bungee.Event.SubAddServerEvent;
import net.ME1312.SubServers.Bungee.Host.Server;
import net.ME1312.SubServers.Bungee.Host.Host;
import net.ME1312.SubServers.Bungee.Host.SubServer;
import net.ME1312.SubServers.Bungee.Library.NamedContainer;
import net.ME1312.SubServers.Bungee.Library.UniversalFile;
import net.ME1312.SubServers.Bungee.Library.Version.Version;
import net.ME1312.SubServers.Bungee.Network.SubDataServer;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
import java.util.UUID;
import java.util.*;
/**
* SubAPI Class
*/
public final class SubAPI {
LinkedList<NamedContainer<Runnable, Runnable>> listeners = new LinkedList<NamedContainer<Runnable, Runnable>>();
private SubPlugin plugin;
private static SubAPI api;
@ -47,6 +46,16 @@ public final class SubAPI {
return plugin;
}
/**
* 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
*/
public void addListener(Runnable enable, Runnable disable) {
listeners.add(new NamedContainer<Runnable, Runnable>(enable, disable));
}
/**
* Gets the SubData Network Manager
*

View File

@ -56,10 +56,12 @@ public final class SubCommand extends Command implements TabExecutor {
} else if (args[0].equalsIgnoreCase("list")) {
List<String> hosts = new ArrayList<String>();
for (Host host : plugin.hosts.values()) {
hosts.add(host.getName());
hosts.add(host.getDisplayName() + ((host.getName().equals(host.getDisplayName()))?"":" (" + host.getName() + ')'));
}
List<String> servers = new ArrayList<String>();
servers.addAll(plugin.getServers().keySet());
for (Server server : plugin.api.getServers().values()) {
servers.add(server.getDisplayName() + ((server.getName().equals(server.getDisplayName()))?"":" (" + server.getName() + ')'));
}
sender.sendMessages(
"SubServers > Host List:", hosts.toString().substring(1, hosts.toString().length() - 1),
"SubServers > Server List:", servers.toString().substring(1, servers.toString().length() - 1));
@ -379,7 +381,7 @@ public final class SubCommand extends Command implements TabExecutor {
for (Server server : plugin.api.getServers().values()) {
if (!server.isHidden() && (!(server instanceof SubServer) || ((SubServer) server).isRunning())) {
if (i != 0) serverm.addExtra(div);
TextComponent message = new TextComponent(plugin.lang.get().getSection("Lang").getColoredString("Bungee.Server.List", '&').replace("$str$", server.getName()));
TextComponent message = new TextComponent(plugin.lang.get().getSection("Lang").getColoredString("Bungee.Server.List", '&').replace("$str$", server.getDisplayName()));
message.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, new TextComponent[]{new TextComponent(plugin.lang.get().getSection("Lang").getColoredString("Bungee.Server.Hover", '&').replace("$int$", Integer.toString(server.getPlayers().size())))}));
message.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/server " + server.getName()));
serverm.addExtra(message);
@ -447,7 +449,7 @@ public final class SubCommand extends Command implements TabExecutor {
players += server.getPlayers().size();
if (!server.isHidden() && (!(server instanceof SubServer) || ((SubServer) server).isRunning())) {
int i = 0;
String message = plugin.lang.get().getSection("Lang").getColoredString("Bungee.List.Format", '&').replace("$str$", server.getName()).replace("$int$", Integer.toString(server.getPlayers().size()));
String message = plugin.lang.get().getSection("Lang").getColoredString("Bungee.List.Format", '&').replace("$str$", server.getDisplayName()).replace("$int$", Integer.toString(server.getPlayers().size()));
for (ProxiedPlayer player : server.getPlayers()) {
if (i != 0) message += plugin.lang.get().getSection("Lang").getColoredString("Bungee.List.Divider", '&');
message += plugin.lang.get().getSection("Lang").getColoredString("Bungee.List.List", '&').replace("$str$", player.getName());

View File

@ -3,11 +3,11 @@ package net.ME1312.SubServers.Bungee;
import net.ME1312.SubServers.Bungee.Host.Executable;
import net.ME1312.SubServers.Bungee.Host.Server;
import net.ME1312.SubServers.Bungee.Library.Config.YAMLConfig;
import net.ME1312.SubServers.Bungee.Library.Config.YAMLSection;
import net.ME1312.SubServers.Bungee.Library.Exception.InvalidHostException;
import net.ME1312.SubServers.Bungee.Library.Exception.InvalidServerException;
import net.ME1312.SubServers.Bungee.Host.Host;
import net.ME1312.SubServers.Bungee.Host.SubServer;
import net.ME1312.SubServers.Bungee.Library.NamedContainer;
import net.ME1312.SubServers.Bungee.Library.UniversalFile;
import net.ME1312.SubServers.Bungee.Library.Util;
import net.ME1312.SubServers.Bungee.Library.Version.Version;
@ -18,7 +18,6 @@ import org.json.JSONObject;
import java.io.*;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.SocketException;
import java.nio.file.Files;
import java.util.*;
@ -235,7 +234,22 @@ public final class SubPlugin extends BungeeCord {
}
}
System.out.println("SubServers > " + hosts + " Host(s), " + servers + " Server(s), and " + subservers + " SubServer(s) loaded in " + (Calendar.getInstance().getTime().getTime() - begin) + "ms");
int plugins = 0;
if (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();
plugins++;
}
} catch (Throwable e) {
e.printStackTrace();
}
}
}
System.out.println("SubServers > " + ((plugins > 0)?plugins + " Plugin(s), ":"") + hosts + " Host(s), " + servers + " Server(s), and " + subservers + " SubServer(s) loaded in " + (Calendar.getInstance().getTime().getTime() - begin) + "ms");
super.startListeners();
} catch (IOException e) {
@ -283,6 +297,16 @@ public final class SubPlugin extends BungeeCord {
@Override
public void stopListeners() {
try {
if (api.listeners.size() > 0) {
System.out.println("SubServers > Resetting SubAPI Plugins...");
for (NamedContainer<Runnable, Runnable> listener : api.listeners) {
try {
if (listener.get() != null) listener.get().run();
} catch (Throwable e) {
e.printStackTrace();
}
}
}
running = false;
System.out.println("SubServers > Resetting Hosts and Server Data");
List<String> hosts = new ArrayList<String>();

View File

@ -1,5 +1,6 @@
Settings:
Version: '2.11.2a+'
Ingame-Access: true
Use-Title-Messages: true
SubData:
Name: 'undefined'

View File

@ -76,7 +76,13 @@ public class InternalHandler implements UIHandler, Listener {
gui.subserverMenu(1, null);
} else if (!item.equals(ChatColor.RESET.toString()) && !item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.No-Hosts", '&'))) {
player.closeInventory();
gui.hostAdmin(ChatColor.stripColor(item));
String obj;
if (event.getCurrentItem().getItemMeta().getLore().size() > 0 && event.getCurrentItem().getItemMeta().getLore() != null && event.getCurrentItem().getItemMeta().getLore().get(0).startsWith(ChatColor.GRAY.toString())) {
obj = ChatColor.stripColor(event.getCurrentItem().getItemMeta().getLore().get(0));
} else {
obj = ChatColor.stripColor(item);
}
gui.hostAdmin(obj);
}
}
} else if (event.getClickedInventory().getTitle().startsWith(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Creator.Title", '&').split("\\$str\\$")[0]) && // Host Creator
@ -205,14 +211,22 @@ public class InternalHandler implements UIHandler, Listener {
gui.back();
} else {
player.closeInventory();
Renderer plugin = null;
final Container<Renderer> plugin = new Container<Renderer>(null);
for (Renderer renderer : InternalRenderer.hostPlugins.values()) {
if (item.equals(renderer.getIcon().getItemMeta().getDisplayName())) plugin = renderer;
if (item.equals(renderer.getIcon().getItemMeta().getDisplayName())) plugin.set(renderer);
}
if (plugin == null) {
if (plugin.get() == null) {
gui.reopen();
} else {
plugin.open(player, gui.lastVistedObject);
gui.setDownloading(ChatColor.stripColor(this.plugin.lang.getSection("Lang").getColoredString("Interface.Host-Plugin.Title", '&').replace("$str$", gui.lastVistedObject)));
this.plugin.subdata.sendPacket(new PacketDownloadHostInfo(gui.lastVistedObject, UUID.randomUUID().toString(), (json) -> {
if (json.getBoolean("valid")) {
gui.setDownloading(null);
plugin.get().open(player, json.getJSONObject("host"));
} else {
gui.back();
}
}));
}
}
}
@ -237,7 +251,13 @@ public class InternalHandler implements UIHandler, Listener {
gui.back();
} else if (!item.equals(ChatColor.RESET.toString()) && !item.equals(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.No-SubServers", '&'))) {
player.closeInventory();
gui.subserverAdmin(ChatColor.stripColor(item));
String obj;
if (event.getCurrentItem().getItemMeta().getLore().size() > 0 && event.getCurrentItem().getItemMeta().getLore() != null && event.getCurrentItem().getItemMeta().getLore().get(0).startsWith(ChatColor.GRAY.toString())) {
obj = ChatColor.stripColor(event.getCurrentItem().getItemMeta().getLore().get(0));
} else {
obj = ChatColor.stripColor(item);
}
gui.subserverAdmin(obj);
}
}
} else if (event.getClickedInventory().getTitle().startsWith(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Admin.Title", '&').split("\\$str\\$")[0]) && // Host Admin
@ -361,14 +381,22 @@ public class InternalHandler implements UIHandler, Listener {
gui.back();
} else {
player.closeInventory();
Renderer plugin = null;
Container<Renderer> plugin = new Container<Renderer>(null);
for (Renderer renderer : InternalRenderer.subserverPlugins.values()) {
if (item.equals(renderer.getIcon().getItemMeta().getDisplayName())) plugin = renderer;
if (item.equals(renderer.getIcon().getItemMeta().getDisplayName())) plugin.set(renderer);
}
if (plugin == null) {
if (plugin.get() == null) {
gui.reopen();
} else {
plugin.open(player, gui.lastVistedObject);
gui.setDownloading(ChatColor.stripColor(this.plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Plugin.Title", '&').replace("$str$", gui.lastVistedObject)));
this.plugin.subdata.sendPacket(new PacketDownloadServerInfo(gui.lastVistedObject, UUID.randomUUID().toString(), json -> {
if (json.getString("type").equals("subserver")) {
gui.setDownloading(null);
plugin.get().open(player, json.getJSONObject("server"));
} else {
gui.back();
}
}));
}
}
}

View File

@ -107,13 +107,21 @@ public class InternalRenderer extends UIRenderer {
if (json.getJSONObject("hosts").getJSONObject(host).getBoolean("enabled")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, enabled);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.AQUA + host);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Server-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(host).getJSONObject("servers").keySet().size()))));
blockMeta.setDisplayName(ChatColor.AQUA + json.getJSONObject("hosts").getJSONObject(host).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display")))
lore.add(ChatColor.GRAY + host);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Server-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(host).getJSONObject("servers").keySet().size())));
blockMeta.setLore(lore);
} else {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, disabled);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.RED + host);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Disabled", '&')));
blockMeta.setDisplayName(ChatColor.RED + json.getJSONObject("hosts").getJSONObject(host).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display")))
lore.add(ChatColor.GRAY + host);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Disabled", '&'));
blockMeta.setLore(lore);
}
block.setItemMeta(blockMeta);
inv.setItem(i, block);
@ -193,7 +201,7 @@ public class InternalRenderer extends UIRenderer {
divMeta.setDisplayName(ChatColor.RESET.toString());
div.setItemMeta(divMeta);
Inventory inv = Bukkit.createInventory(null, 36, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Admin.Title", '&').replace("$str$", host));
Inventory inv = Bukkit.createInventory(null, 36, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Admin.Title", '&').replace("$str$", json.getJSONObject("host").getString("display")));
int i = 0;
while (i < inv.getSize()) {
@ -215,7 +223,6 @@ public class InternalRenderer extends UIRenderer {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 4);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Admin.Creator", '&'));
}
block.setItemMeta(blockMeta);
inv.setItem(1, block);
@ -251,13 +258,21 @@ public class InternalRenderer extends UIRenderer {
if (json.getJSONObject("host").getBoolean("enabled")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 11);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.AQUA + host);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Server-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("host").getJSONObject("servers").keySet().size()))));
blockMeta.setDisplayName(ChatColor.AQUA + json.getJSONObject("host").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!host.equals(json.getJSONObject("host").getString("display")))
lore.add(ChatColor.GRAY + host);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Server-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("host").getJSONObject("servers").keySet().size())));
blockMeta.setLore(lore);
} else {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 14);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.RED + host);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Disabled", '&')));
blockMeta.setDisplayName(ChatColor.RED + json.getJSONObject("host").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!host.equals(json.getJSONObject("host").getString("display")))
lore.add(ChatColor.GRAY + host);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Disabled", '&'));
blockMeta.setLore(lore);
}
block.setItemMeta(blockMeta);
inv.setItem(30, block);
@ -301,7 +316,7 @@ public class InternalRenderer extends UIRenderer {
divMeta.setDisplayName(ChatColor.RESET.toString());
div.setItemMeta(divMeta);
Inventory inv = Bukkit.createInventory(null, 54, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Creator.Title", '&').replace("$str$", options.getHost()));
Inventory inv = Bukkit.createInventory(null, 54, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Creator.Title", '&').replace("$str$", json.getJSONObject("host").getString("display")));
int i = 0;
while (i < inv.getSize()) {
@ -439,7 +454,7 @@ public class InternalRenderer extends UIRenderer {
lastPage = page;
List<String> renderers = new ArrayList<String>();
for (String renderer : renderers) {
if (subserverPlugins.get(renderer).isEnabled(host)) renderers.add(renderer);
if (subserverPlugins.get(renderer).isEnabled(json.getJSONObject("host"))) renderers.add(renderer);
}
Collections.sort(renderers);
@ -456,7 +471,7 @@ public class InternalRenderer extends UIRenderer {
int count = (renderers.size() == 0)?27:((renderers.size() - min - 1 >= max)?36:renderers.size() - min);
int area = (count % 9 == 0) ? count : (int) (Math.floor(count / 9) + 1) * 9;
Inventory inv = Bukkit.createInventory(null, 18 + area, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Plugin.Title", '&').replace("$str$", host));
Inventory inv = Bukkit.createInventory(null, 18 + area, plugin.lang.getSection("Lang").getColoredString("Interface.Host-Plugin.Title", '&').replace("$str$", json.getJSONObject("host").getString("display")));
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 7);
block.setItemMeta(divMeta);
while (i < area) {
@ -575,7 +590,7 @@ public class InternalRenderer extends UIRenderer {
int count = (subservers.size() == 0)?27:((subservers.size() - min - 1 >= max)?36:subservers.size() - min);
int area = (count % 9 == 0) ? count : (int) (Math.floor(count / 9) + 1) * 9;
Inventory inv = Bukkit.createInventory(null, 18 + area, (host == null)?plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.Title", '&'):plugin.lang.getSection("Lang").getColoredString("Interface.Host-SubServer.Title", '&').replace("$str$", host));
Inventory inv = Bukkit.createInventory(null, 18 + area, (host == null)?plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.Title", '&'):plugin.lang.getSection("Lang").getColoredString("Interface.Host-SubServer.Title", '&').replace("$str$", json.getJSONObject("hosts").getJSONObject(host).getString("display")));
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 7);
block.setItemMeta(divMeta);
while (i < area) {
@ -599,23 +614,40 @@ public class InternalRenderer extends UIRenderer {
if (json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getBoolean("temp")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, temp);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.AQUA + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getJSONObject("players").keySet().size())), plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Temporary", '&')));
blockMeta.setDisplayName(ChatColor.AQUA + json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getJSONObject("players").keySet().size())));
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Temporary", '&'));
blockMeta.setLore(lore);
} else if (json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getBoolean("running")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, online);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.GREEN + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getJSONObject("players").keySet().size()))));
blockMeta.setDisplayName(ChatColor.GREEN + json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getJSONObject("players").keySet().size())));
blockMeta.setLore(lore);
} else if (json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getBoolean("enabled")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, offline);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.YELLOW + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Offline", '&')));
blockMeta.setDisplayName(ChatColor.YELLOW + json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Offline", '&'));
blockMeta.setLore(lore);
} else {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, disabled);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.RED + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Disabled", '&')));
blockMeta.setDisplayName(ChatColor.RED + json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("hosts").getJSONObject(hosts.get(subserver)).getJSONObject("servers").getJSONObject(subserver).getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Disabled", '&'));
blockMeta.setLore(lore);
}
block.setItemMeta(blockMeta);
inv.setItem(i, block);
@ -696,7 +728,7 @@ public class InternalRenderer extends UIRenderer {
divMeta.setDisplayName(ChatColor.RESET.toString());
div.setItemMeta(divMeta);
Inventory inv = Bukkit.createInventory(null, 36, plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Admin.Title", '&').replace("$str$", subserver));
Inventory inv = Bukkit.createInventory(null, 36, plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Admin.Title", '&').replace("$str$", json.getJSONObject("server").getString("display")));
int i = 0;
while (i < inv.getSize()) {
@ -794,23 +826,40 @@ public class InternalRenderer extends UIRenderer {
if (json.getJSONObject("server").getBoolean("temp")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 11);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.AQUA + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("server").getJSONObject("players").keySet().size())), plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Temporary", '&')));
blockMeta.setDisplayName(ChatColor.AQUA + json.getJSONObject("server").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("server").getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("server").getJSONObject("players").keySet().size())));
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Temporary", '&'));
blockMeta.setLore(lore);
} else if (json.getJSONObject("server").getBoolean("running")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 5);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.GREEN + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("server").getJSONObject("players").keySet().size()))));
blockMeta.setDisplayName(ChatColor.GREEN + json.getJSONObject("server").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("server").getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("server").getJSONObject("players").keySet().size())));
blockMeta.setLore(lore);
} else if (json.getJSONObject("server").getBoolean("enabled")) {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 4);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.YELLOW + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Offline", '&')));
blockMeta.setDisplayName(ChatColor.YELLOW + json.getJSONObject("server").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("server").getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Offline", '&'));
blockMeta.setLore(lore);
} else {
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 14);
blockMeta = block.getItemMeta();
blockMeta.setDisplayName(ChatColor.RED + subserver);
blockMeta.setLore(Arrays.asList(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Disabled", '&')));
blockMeta.setDisplayName(ChatColor.RED + json.getJSONObject("server").getString("display"));
LinkedList<String> lore = new LinkedList<String>();
if (!subserver.equals(json.getJSONObject("server").getString("display")))
lore.add(ChatColor.GRAY + subserver);
lore.add(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Disabled", '&'));
blockMeta.setLore(lore);
}
block.setItemMeta(blockMeta);
inv.setItem(30, block);
@ -845,7 +894,7 @@ public class InternalRenderer extends UIRenderer {
lastPage = page;
List<String> renderers = new ArrayList<String>();
for (String renderer : renderers) {
if (subserverPlugins.get(renderer).isEnabled(subserver)) renderers.add(renderer);
if (subserverPlugins.get(renderer).isEnabled(json.getJSONObject("server"))) renderers.add(renderer);
}
Collections.sort(renderers);
@ -862,7 +911,7 @@ public class InternalRenderer extends UIRenderer {
int count = (renderers.size() == 0)?27:((renderers.size() - min - 1 >= max)?36:renderers.size() - min);
int area = (count % 9 == 0) ? count : (int) (Math.floor(count / 9) + 1) * 9;
Inventory inv = Bukkit.createInventory(null, 18 + area, plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Plugin.Title", '&').replace("$str$", subserver));
Inventory inv = Bukkit.createInventory(null, 18 + area, plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Plugin.Title", '&').replace("$str$", json.getJSONObject("server").getString("display")));
block = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 7);
block.setItemMeta(divMeta);
while (i < area) {

View File

@ -2,6 +2,7 @@ package net.ME1312.SubServers.Client.Bukkit.Graphic;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.json.JSONObject;
/**
* GUI Renderer Layout Class
@ -12,9 +13,9 @@ public interface Renderer {
* Open the GUI
*
* @param player Player Opening
* @param object Object Name
* @param object JSON Representation of an Object
*/
void open(Player player, String object);
void open(Player player, JSONObject object);
/**
* Get Renderer Icon
@ -26,8 +27,8 @@ public interface Renderer {
/**
* Check if this Renderer is enabled for this Object
*
* @param object Object Name
* @param object JSON Representation of an Object
* @return Enabled Status
*/
boolean isEnabled(String object);
boolean isEnabled(JSONObject object);
}

View File

@ -89,7 +89,7 @@ public abstract class UIRenderer {
* @return Success Status
*/
public boolean sendTitle(String str, int fadein, int stay, int fadeout) {
if (Bukkit.getPluginManager().getPlugin("TitleManager") != null && plugin.pluginconf.get().getSection("Settings").getBoolean("Use-Title-Messages", true)) {
if (Bukkit.getPluginManager().getPlugin("TitleManager") != null && plugin.config.get().getSection("Settings").getBoolean("Use-Title-Messages", true)) {
String line1, line2;
if (!str.startsWith("\n") && str.contains("\n")) {
line1 = str.split("\\n")[0];
@ -119,7 +119,7 @@ public abstract class UIRenderer {
* @param subtitle Subtitle to display (or null to hide)
*/
public void setDownloading(String subtitle) {
if (subtitle != null && !(Bukkit.getPluginManager().getPlugin("TitleManager") != null && plugin.pluginconf.get().getSection("Settings").getBoolean("Use-Title-Messages", true))) {
if (subtitle != null && !(Bukkit.getPluginManager().getPlugin("TitleManager") != null && plugin.config.get().getSection("Settings").getBoolean("Use-Title-Messages", true))) {
Bukkit.getPlayer(player).sendMessage(plugin.lang.getSection("Lang").getColoredString("Interface.Generic.Downloading", '&').replace("$str$", subtitle));
} if (subtitle != null && downloading == null) {
downloading = new NamedContainer<String, Integer>(subtitle, 0);

View File

@ -1,6 +1,7 @@
package net.ME1312.SubServers.Client.Bukkit.Library;
import java.io.*;
import java.util.Random;
/**
* SubServers Utility Class
@ -66,8 +67,10 @@ public final class Util {
}
}
/**
* Delete Directory
* Delete a Directory
*
* @param folder Location
*/
@ -85,6 +88,67 @@ public final class Util {
folder.delete();
}
/**
* Copy a Directory
*
* @param from Source
* @param to Destination
*/
public static void copyDirectory(File from, File to) {
if (from.isDirectory()) {
if (!to.exists()) {
to.mkdirs();
}
String files[] = from.list();
for (String file : files) {
File srcFile = new File(from, file);
File destFile = new File(to, file);
copyDirectory(srcFile, destFile);
}
} else {
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(from);
out = new FileOutputStream(to);
byte[] buffer = new byte[1024];
int length;
while ((length = in.read(buffer)) > 0) {
out.write(buffer, 0, length);
}
} catch (Exception e) {
try {
if (in != null) in.close();
} catch (IOException e1) {
e1.printStackTrace();
}
try {
if (out != null) out.close();
} catch (IOException e2) {
e2.printStackTrace();
}
}
}
}
/**
* Get a Random Integer
*
* @param min Minimum Value
* @param max Maximum Value
* @return Random Integer
*/
public static int random(int min, int max) {
return new Random().nextInt((max - min) + 1) + min;
}
/**
* Parse escapes in a Java String
*

View File

@ -19,7 +19,7 @@ public final class PacketAuthorization implements PacketIn, PacketOut {
@Override
public JSONObject generate() {
JSONObject json = new JSONObject();
json.put("password", plugin.pluginconf.get().getSection("Settings").getSection("SubData").getString("Password"));
json.put("password", plugin.config.get().getSection("Settings").getSection("SubData").getString("Password"));
return json;
}

View File

@ -11,7 +11,7 @@ import java.util.Map;
/**
* SubAPI Class
*/
public class SubAPI {
public final class SubAPI {
private SubPlugin plugin;
private static SubAPI api;

View File

@ -41,6 +41,7 @@ public final class SubCommand implements CommandExecutor {
} else if (args[0].equalsIgnoreCase("version") || args[0].equalsIgnoreCase("ver")) {
sender.sendMessage(plugin.lang.getSection("Lang").getColoredString("Command.Version", '&').replace("$str$", plugin.version.toString() + ((plugin.bversion != null)?" BETA "+plugin.bversion.toString():"")));
} else if (args[0].equalsIgnoreCase("list")) {
final String fLabel = label;
plugin.subdata.sendPacket(new PacketDownloadServerList(null, UUID.randomUUID().toString(), json -> {
int i = 0;
TreeMap<String, JSONObject> servers = new TreeMap<String, JSONObject>();
@ -56,22 +57,32 @@ public final class SubCommand implements CommandExecutor {
}
for (String host : json.getJSONObject("hosts").keySet()) {
List<net.md_5.bungee.api.chat.TextComponent> hoverm = new LinkedList<net.md_5.bungee.api.chat.TextComponent>();
net.md_5.bungee.api.chat.TextComponent message = new net.md_5.bungee.api.chat.TextComponent(host);
net.md_5.bungee.api.chat.TextComponent hover = new net.md_5.bungee.api.chat.TextComponent(host + '\n');
net.md_5.bungee.api.chat.TextComponent message = new net.md_5.bungee.api.chat.TextComponent(json.getJSONObject("hosts").getJSONObject(host).getString("display"));
net.md_5.bungee.api.chat.TextComponent hover = new net.md_5.bungee.api.chat.TextComponent(json.getJSONObject("hosts").getJSONObject(host).getString("display") + '\n');
if (json.getJSONObject("hosts").getJSONObject(host).getBoolean("enabled")) {
message.setColor(net.md_5.bungee.api.ChatColor.AQUA);
hover.setColor(net.md_5.bungee.api.ChatColor.AQUA);
hoverm.add(hover);
if (!host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(host + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Server-Count", '&').replace("$int$", new DecimalFormat("#,###").format(json.getJSONObject("hosts").getJSONObject(host).getJSONObject("servers").keySet().size())));
} else {
message.setColor(net.md_5.bungee.api.ChatColor.RED);
hover.setColor(net.md_5.bungee.api.ChatColor.RED);
hoverm.add(hover);
if (!host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(host + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.Host-Menu.Host-Disabled", '&'));
}
hoverm.add(hover);
if (i != 0) hostm.addExtra(div);
message.setClickEvent(new net.md_5.bungee.api.chat.ClickEvent(net.md_5.bungee.api.chat.ClickEvent.Action.RUN_COMMAND, "/subservers open Host/ " + host));
message.setClickEvent(new net.md_5.bungee.api.chat.ClickEvent(net.md_5.bungee.api.chat.ClickEvent.Action.RUN_COMMAND, fLabel + " open Host/ " + host));
message.setHoverEvent(new net.md_5.bungee.api.chat.HoverEvent(net.md_5.bungee.api.chat.HoverEvent.Action.SHOW_TEXT, hoverm.toArray(new net.md_5.bungee.api.chat.TextComponent[hoverm.size()])));
hostm.addExtra(message);
i++;
@ -82,19 +93,24 @@ public final class SubCommand implements CommandExecutor {
i = 0;
for (String server : servers.keySet()) {
List<net.md_5.bungee.api.chat.TextComponent> hoverm = new LinkedList<net.md_5.bungee.api.chat.TextComponent>();
net.md_5.bungee.api.chat.TextComponent message = new net.md_5.bungee.api.chat.TextComponent(server);
net.md_5.bungee.api.chat.TextComponent hover = new net.md_5.bungee.api.chat.TextComponent(server + '\n');
net.md_5.bungee.api.chat.TextComponent message = new net.md_5.bungee.api.chat.TextComponent(servers.get(server).getString("display"));
net.md_5.bungee.api.chat.TextComponent hover = new net.md_5.bungee.api.chat.TextComponent(servers.get(server).getString("display") + '\n');
if (!servers.get(server).keySet().contains("enabled")) {
message.setColor(net.md_5.bungee.api.ChatColor.WHITE);
hover.setColor(net.md_5.bungee.api.ChatColor.WHITE);
hoverm.add(hover);
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-External", '&'));
} else {
message.setClickEvent(new net.md_5.bungee.api.chat.ClickEvent(net.md_5.bungee.api.chat.ClickEvent.Action.RUN_COMMAND, "/subservers open SubServer/ " + server));
message.setClickEvent(new net.md_5.bungee.api.chat.ClickEvent(net.md_5.bungee.api.chat.ClickEvent.Action.RUN_COMMAND, fLabel + " open SubServer/ " + server));
if (servers.get(server).getBoolean("temp")) {
message.setColor(net.md_5.bungee.api.ChatColor.AQUA);
hover.setColor(net.md_5.bungee.api.ChatColor.AQUA);
hoverm.add(hover);
if (!server.equals(servers.get(server).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(server + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(servers.get(server).getJSONObject("players").keySet().size())) + '\n');
hoverm.add(hover);
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Temporary", '&'));
@ -102,16 +118,31 @@ public final class SubCommand implements CommandExecutor {
message.setColor(net.md_5.bungee.api.ChatColor.GREEN);
hover.setColor(net.md_5.bungee.api.ChatColor.GREEN);
hoverm.add(hover);
if (!server.equals(servers.get(server).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(server + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Player-Count", '&').replace("$int$", new DecimalFormat("#,###").format(servers.get(server).getJSONObject("players").keySet().size())));
} else if (servers.get(server).getBoolean("enabled")) {
message.setColor(net.md_5.bungee.api.ChatColor.YELLOW);
hover.setColor(net.md_5.bungee.api.ChatColor.YELLOW);
hoverm.add(hover);
if (!server.equals(servers.get(server).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(server + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Offline", '&'));
} else {
message.setColor(net.md_5.bungee.api.ChatColor.RED);
hover.setColor(net.md_5.bungee.api.ChatColor.RED);
hoverm.add(hover);
if (!server.equals(servers.get(server).getString("display"))) {
hover = new net.md_5.bungee.api.chat.TextComponent(server + '\n');
hover.setColor(net.md_5.bungee.api.ChatColor.GRAY);
hoverm.add(hover);
}
hover = new net.md_5.bungee.api.chat.TextComponent(plugin.lang.getSection("Lang").getColoredString("Interface.SubServer-Menu.SubServer-Disabled", '&'));
}
}
@ -136,9 +167,9 @@ public final class SubCommand implements CommandExecutor {
for (String host : json.getJSONObject("hosts").keySet()) {
if (i != 0) hostm += div;
if (json.getJSONObject("hosts").getJSONObject(host).getBoolean("enabled")) {
hostm += ChatColor.AQUA + host;
hostm += ChatColor.AQUA + json.getJSONObject("hosts").getJSONObject(host).getString("display") + ((host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display")))?"":" (" + host + ')');
} else {
hostm += ChatColor.RED + host;
hostm += ChatColor.RED + json.getJSONObject("hosts").getJSONObject(host).getString("display") + ((host.equals(json.getJSONObject("hosts").getJSONObject(host).getString("display")))?"":" (" + host + ')');
}
i++;
for (String subserver : json.getJSONObject("hosts").getJSONObject(host).getJSONObject("servers").keySet()) {
@ -149,15 +180,15 @@ public final class SubCommand implements CommandExecutor {
for (String server : servers.keySet()) {
if (i != 0) serverm += div;
if (!servers.get(server).keySet().contains("enabled")) {
serverm += ChatColor.WHITE + server;
serverm += ChatColor.WHITE + servers.get(server).getString("display") + ((server.equals(servers.get(server).getString("display")))?"":" (" + server + ')');
} else if (servers.get(server).getBoolean("temp")) {
serverm += ChatColor.AQUA + server;
serverm += ChatColor.AQUA + servers.get(server).getString("display") + ((server.equals(servers.get(server).getString("display")))?"":" (" + server + ')');
} else if (servers.get(server).getBoolean("running")) {
serverm += ChatColor.GREEN + server;
serverm += ChatColor.GREEN + servers.get(server).getString("display") + ((server.equals(servers.get(server).getString("display")))?"":" (" + server + ')');
} else if (servers.get(server).getBoolean("enabled")) {
serverm += ChatColor.YELLOW + server;
serverm += ChatColor.YELLOW + servers.get(server).getString("display") + ((server.equals(servers.get(server).getString("display")))?"":" (" + server + ')');
} else {
serverm += ChatColor.RED + server;
serverm += ChatColor.RED + servers.get(server).getString("display") + ((server.equals(servers.get(server).getString("display")))?"":" (" + server + ')');
}
i++;
}
@ -367,7 +398,8 @@ public final class SubCommand implements CommandExecutor {
if (sender.hasPermission("subservers.host.create.*") || sender.hasPermission("subservers.host.create." + args[2].toLowerCase())) plugin.gui.getRenderer((Player) sender).hostCreator(new UIRenderer.CreatorOptions(args[2]));
break;
case "host/plugins":
plugin.gui.getRenderer((Player) sender).hostPlugin(Integer.parseInt(args[2]), args[3]);
if (args.length > 3) plugin.gui.getRenderer((Player) sender).hostPlugin(Integer.parseInt(args[3]), args[2]);
else plugin.gui.getRenderer((Player) sender).hostPlugin(1, args[2]);
break;
case "subserver":
if (args.length > 3) plugin.gui.getRenderer((Player) sender).subserverMenu(Integer.parseInt(args[2]), args[3]);
@ -378,7 +410,8 @@ public final class SubCommand implements CommandExecutor {
plugin.gui.getRenderer((Player) sender).subserverAdmin(args[2]);
break;
case "subserver/plugins":
plugin.gui.getRenderer((Player) sender).subserverPlugin(Integer.parseInt(args[2]), args[3]);
if (args.length > 3) plugin.gui.getRenderer((Player) sender).subserverPlugin(Integer.parseInt(args[3]), args[2]);
else plugin.gui.getRenderer((Player) sender).subserverPlugin(1, args[2]);
break;
}
} catch (Throwable e) {}

View File

@ -19,7 +19,7 @@ import java.nio.file.Files;
* SubServers Client Plugin Class
*/
public final class SubPlugin extends JavaPlugin {
public YAMLConfig pluginconf;
public YAMLConfig config;
public YAMLSection lang = null;
public SubDataClient subdata = null;
@ -50,16 +50,18 @@ public final class SubPlugin extends JavaPlugin {
Util.copyFromJar(SubPlugin.class.getClassLoader(), "config.yml", new UniversalFile(getDataFolder(), "config.yml").getPath());
Bukkit.getLogger().info("SubServers > Updated ~/plugins/SubServers/config.yml");
}
pluginconf = new YAMLConfig(new UniversalFile(getDataFolder(), "config.yml"));
subdata = new SubDataClient(this, pluginconf.get().getSection("Settings").getSection("SubData").getString("Name", "undefined"),
InetAddress.getByName(pluginconf.get().getSection("Settings").getSection("SubData").getString("Address", "127.0.0.1:4391").split(":")[0]),
Integer.parseInt(pluginconf.get().getSection("Settings").getSection("SubData").getString("Address", "127.0.0.1:4391").split(":")[1]));
config = new YAMLConfig(new UniversalFile(getDataFolder(), "config.yml"));
subdata = new SubDataClient(this, config.get().getSection("Settings").getSection("SubData").getString("Name", "undefined"),
InetAddress.getByName(config.get().getSection("Settings").getSection("SubData").getString("Address", "127.0.0.1:4391").split(":")[0]),
Integer.parseInt(config.get().getSection("Settings").getSection("SubData").getString("Address", "127.0.0.1:4391").split(":")[1]));
gui = new InternalHandler(this);
SubCommand cmd = new SubCommand(this);
getCommand("subservers").setExecutor(cmd);
getCommand("subserver").setExecutor(cmd);
getCommand("sub").setExecutor(cmd);
if (config.get().getSection("Settings").getBoolean("Ingame-Access", true)) {
gui = new InternalHandler(this);
SubCommand cmd = new SubCommand(this);
getCommand("subservers").setExecutor(cmd);
getCommand("subserver").setExecutor(cmd);
getCommand("sub").setExecutor(cmd);
}
} catch (IOException e) {
setEnabled(false);
e.printStackTrace();

View File

@ -1,6 +1,6 @@
name: 'SubServers'
main: 'net.ME1312.SubServers.Client.Bukkit.SubPlugin'
version: '2.11.2b'
version: '2.11.2c'
authors: [ME1312]
softdepend: [TitleManager]
website: 'http://www.ME1312.net/'

View File

@ -19,7 +19,7 @@ import java.io.IOException;
import java.util.Collections;
import java.util.HashMap;
public class ConsolePlugin extends Plugin implements Listener {
public final class ConsolePlugin extends Plugin implements Listener {
public HashMap<String, ConsoleWindow> cCurrent = new HashMap<String, ConsoleWindow>();
public HashMap<String, ConsoleWindow> sCurrent = new HashMap<String, ConsoleWindow>();
public YAMLConfig config;

View File

@ -146,6 +146,7 @@
<contentAreaFilled value="false"/>
<focusPainted value="false"/>
<foreground color="-1"/>
<opaque value="true"/>
<text value=" Done "/>
</properties>
</component>

View File

@ -10,6 +10,8 @@ import javax.swing.border.Border;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.List;
@ -17,7 +19,7 @@ import java.util.logging.Level;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ConsoleWindow implements SubLogFilter {
public final class ConsoleWindow implements SubLogFilter {
private ConsolePlugin plugin;
private JFrame window;
private JPanel panel;
@ -59,6 +61,9 @@ public class ConsoleWindow implements SubLogFilter {
if (find.isVisible() && !ifocus)
find(true);
break;
case KeyEvent.VK_TAB:
if (!ifocus) input.requestFocusInWindow();
break;
}
}
@ -98,21 +103,21 @@ public class ConsoleWindow implements SubLogFilter {
menu.addSeparator();
item = new JMenuItem("Reset Text Size");
item.addActionListener(event -> {
log.setFont(new Font(log.getFont().getName(), log.getFont().getStyle(), 12));
log.setFont(log.getFont().deriveFont(12f));
SwingUtilities.invokeLater(this::hScroll);
});
menu.add(item);
item = new JMenuItem("Bigger Text");
item.setAccelerator(KeyStroke.getKeyStroke('=', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), true));
item.addActionListener(event -> {
log.setFont(new Font(log.getFont().getName(), log.getFont().getStyle(), log.getFont().getSize() + 2));
log.setFont(log.getFont().deriveFont((float) log.getFont().getSize() + 2));
SwingUtilities.invokeLater(this::hScroll);
});
menu.add(item);
item = new JMenuItem("Smaller Text");
item.setAccelerator(KeyStroke.getKeyStroke('-', Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), true));
item.addActionListener(event -> {
log.setFont(new Font(log.getFont().getName(), log.getFont().getStyle(), log.getFont().getSize() - 2));
log.setFont(log.getFont().deriveFont((float) log.getFont().getSize() - 2));
SwingUtilities.invokeLater(this::hScroll);
});
menu.add(item);

View File

@ -11,7 +11,7 @@ import javax.swing.*;
import java.util.List;
import java.util.Map;
public class PopoutCommand {
public final class PopoutCommand {
private PopoutCommand() {}
public static class SERVER extends Command {
private ConsolePlugin plugin;