Keep BungeeCord versioning intact when patched

This commit is contained in:
ME1312 2018-05-24 14:52:47 -04:00
parent c35a31f803
commit 82b5cd6aae
No known key found for this signature in database
GPG Key ID: FEFFE2F698E88FA8
25 changed files with 135 additions and 101 deletions

View File

@ -39,6 +39,9 @@ if [ $retvala -eq 0 ]
if [ -f "LICENSE" ]; then
rm -Rf LICENSE
fi
if [ -f "META-INF/MANIFEST.MF" ]; then
cat META-INF/MANIFEST.MF | sed -e "/^\s*$/d" -e "/^Main-Class:.*$/d" -e "/^Implementation-Title:.*$/d" -e "/^Build-Jdk:.*$/d" -e "/^Created-By:.*$/d" -e "/^Built-By:.*$/d" > ../MANIFEST.MF
fi
if [ -f "MODIFICATIONS" ]; then
mv -f MODIFICATIONS ../MODIFICATIONS
fi
@ -49,28 +52,33 @@ if [ $retvala -eq 0 ]
if [ $retvalb -eq 0 ]
then
echo ">> Writing Changes..."
yes | cp -rf . ../Modded.jar
printf "\n " >> META-INF/MANIFEST.MF
if [ -f "MODIFICATIONS" ]; then
if [ -f "../MODIFICATIONS" ]; then
cat MODIFICATIONS >> ../MODIFICATIONS
else
mv -f MODIFICATIONS ../MODIFICATIONS
if [ -f "META-INF/MANIFEST.MF" ]
then
cat META-INF/MANIFEST.MF | sed -e "/^\s*$/d" -e "/^Manifest-Version:.*$/d" -e "/^Class-Path:.*$/d" >> ../MANIFEST.MF
else
if [ ! -d "META-INF" ]; then
mkdir META-INF
fi
fi
if [ -f "MODIFICATIONS" ]; then
cat MODIFICATIONS >> ../MODIFICATIONS
fi
yes | cp -rf . ../Modded.jar
cd ../
printf "Built-By: SubServers.Bungee.Patcher\n" >> MANIFEST.MF
cp -f MANIFEST.MF Modded.jar/META-INF
if [ ! -f "MODIFICATIONS" ]; then
printf "# SubServers.Bungee.Patcher generated difference list (may be empty if git is not installed)\n#\n" > MODIFICATIONS
fi
printf "@ `date`\n> git --no-pager diff --no-index --name-status BuildTools/Vanilla.jar BuildTools/Modded.jar\n" >> MODIFICATIONS
git --no-pager diff --no-index --name-status Vanilla.jar Modded.jar | sed -e "s/\tVanilla.jar\//\t\//" -e "s/\tModded.jar\//\t\//" >> MODIFICATIONS
mv -f MODIFICATIONS Modded.jar
cp -f MODIFICATIONS Modded.jar
cd Modded.jar
echo ">> Recompiling..."
if [ -f "../../SubServers.Patched.jar" ]; then
rm -Rf ../../SubServers.Patched.jar
fi
jar cvfm ../../SubServers.Patched.jar META-INF/MANIFEST.MF .; retvalc=$?;
jar cvfm ../../SubServers.Patched.jar ../MANIFEST.MF .; retvalc=$?;
if [ $retvalc -eq 0 ]
then
echo ">> Cleaning Up..."

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -860,6 +860,10 @@
<dd>
<div class="block">Get the Build Options for this Template</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#getBungeeName--">getBungeeName()</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dd>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Library/Util.html#getCaseInsensitively-java.util.Map-java.lang.String-">getCaseInsensitively(Map&lt;String, V&gt;, 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">Get an item from a map ignoring case</div>
@ -1746,10 +1750,6 @@
<dd>
<div class="block">Get Packet Version</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#getVersion--">getVersion()</a></span> - Method in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dd>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubAPI.html#getWrapperVersion--">getWrapperVersion()</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">Gets the SubServers Version</div>
@ -2028,6 +2028,8 @@
<dd>
<div class="block">Check if object is a Number</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/SubPlugin.html#isPatched">isPatched</a></span> - Variable in class net.ME1312.SubServers.Bungee.<a href="net/ME1312/SubServers/Bungee/SubPlugin.html" title="class in net.ME1312.SubServers.Bungee">SubPlugin</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Bungee/Event/SubEditServerEvent.html#isPermanent--">isPermanent()</a></span> - Method in class net.ME1312.SubServers.Bungee.Event.<a href="net/ME1312/SubServers/Bungee/Event/SubEditServerEvent.html" title="class in net.ME1312.SubServers.Bungee.Event">SubEditServerEvent</a></dt>
<dd>
<div class="block">Gets if the edit is permanent</div>

View File

@ -168,34 +168,38 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#hosts">hosts</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#isPatched">isPatched</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Library/Config/YAMLConfig.html" title="class in net.ME1312.SubServers.Bungee.Library.Config">YAMLConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#langconfig">langconfig</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code>java.io.PrintStream</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#out">out</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code>java.util.HashMap&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Bungee/Host/Proxy.html" title="class in net.ME1312.SubServers.Bungee.Host">Proxy</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#proxies">proxies</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#redis">redis</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#resetDate">resetDate</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr 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/SubPlugin.html#subdata">subdata</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Bungee/Host/SubServer.html" title="interface in net.ME1312.SubServers.Bungee.Host">SubServer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#sudo">sudo</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code>static <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/SubPlugin.html#version">version</a></span></code>&nbsp;</td>
</tr>
@ -223,22 +227,22 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#getBungeeName--">getBungeeName</a></span>()</code>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
</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/SubPlugin.html#getName--">getName</a></span>()</code>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,net.md_5.bungee.api.config.ServerInfo&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#getServers--">getServers</a></span>()</code>
<div class="block">Emulate BungeeCord's getServers()</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#getVersion--">getVersion</a></span>()</code>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Bungee/SubPlugin.html#redis-java.lang.String-net.ME1312.SubServers.Bungee.Library.NamedContainer...-">redis</a></span>(java.lang.String&nbsp;method,
@ -278,7 +282,7 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.md_5.bungee.BungeeCord</h3>
<code>addConnection, broadcast, broadcast, broadcast, broadcast, constructServerInfo, createTitle, getChannels, getConfig, getConfigurationAdapter, getConnectionThrottle, getConsole, getConsoleReader, getDisabledCommands, getGameVersion, getInstance, getLogger, getOnlineCount, getPlayer, getPlayer, getPlayerByOfflineUUID, getPlayers, getPluginManager, getPluginsFolder, getProtocolVersion, getReconnectHandler, getScheduler, getServerInfo, getTranslation, matchPlayer, registerChannel, registerChannels, removeConnection, setConfigurationAdapter, setReconnectHandler, start, stop, stop, unregisterChannel</code></li>
<code>addConnection, broadcast, broadcast, broadcast, broadcast, constructServerInfo, createTitle, getChannels, getConfig, getConfigurationAdapter, getConnectionThrottle, getConsole, getConsoleReader, getDisabledCommands, getGameVersion, getInstance, getLogger, getOnlineCount, getPlayer, getPlayer, getPlayerByOfflineUUID, getPlayers, getPluginManager, getPluginsFolder, getProtocolVersion, getReconnectHandler, getScheduler, getServerInfo, getTranslation, getVersion, matchPlayer, registerChannel, registerChannels, removeConnection, setConfigurationAdapter, setReconnectHandler, start, stop, stop, unregisterChannel</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.ProxyServer">
@ -425,6 +429,15 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<pre>public&nbsp;boolean canSudo</pre>
</li>
</ul>
<a name="isPatched">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPatched</h4>
<pre>public final&nbsp;boolean isPatched</pre>
</li>
</ul>
<a name="resetDate">
<!-- -->
</a>
@ -528,19 +541,17 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
</dl>
</li>
</ul>
<a name="getVersion--">
<a name="getBungeeName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVersion</h4>
<pre>public&nbsp;java.lang.String&nbsp;getVersion()</pre>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
<h4>getBungeeName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getBungeeName()</pre>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getVersion</code>&nbsp;in class&nbsp;<code>net.md_5.bungee.BungeeCord</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Software Version</dd>
<dd>BungeeCord Software Name</dd>
</dl>
</li>
</ul>

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -511,6 +511,10 @@
<dd>
<div class="block">Get a Boolean List by Handle</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/SubPlugin.html#getBungeeName--">getBungeeName()</a></span> - Method in class net.ME1312.SubServers.Sync.<a href="net/ME1312/SubServers/Sync/SubPlugin.html" title="class in net.ME1312.SubServers.Sync">SubPlugin</a></dt>
<dd>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/Library/Util.html#getCaseInsensitively-java.util.Map-java.lang.String-">getCaseInsensitively(Map&lt;String, V&gt;, String)</a></span> - Static method in class net.ME1312.SubServers.Sync.Library.<a href="net/ME1312/SubServers/Sync/Library/Util.html" title="class in net.ME1312.SubServers.Sync.Library">Util</a></dt>
<dd>
<div class="block">Get an item from a map ignoring case</div>
@ -985,10 +989,6 @@
<dd>
<div class="block">Get Packet Version</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/SubPlugin.html#getVersion--">getVersion()</a></span> - Method in class net.ME1312.SubServers.Sync.<a href="net/ME1312/SubServers/Sync/SubPlugin.html" title="class in net.ME1312.SubServers.Sync">SubPlugin</a></dt>
<dd>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/SubAPI.html#getWrapperVersion--">getWrapperVersion()</a></span> - Method in class net.ME1312.SubServers.Sync.<a href="net/ME1312/SubServers/Sync/SubAPI.html" title="class in net.ME1312.SubServers.Sync">SubAPI</a></dt>
<dd>
<div class="block">Gets the SubServers.Sync Version</div>
@ -1075,6 +1075,8 @@
<dd>
<div class="block">Check if object is a Number</div>
</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/SubPlugin.html#isPatched">isPatched</a></span> - Variable in class net.ME1312.SubServers.Sync.<a href="net/ME1312/SubServers/Sync/SubPlugin.html" title="class in net.ME1312.SubServers.Sync">SubPlugin</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="net/ME1312/SubServers/Sync/Event/SubEditServerEvent.html#isPermanent--">isPermanent()</a></span> - Method in class net.ME1312.SubServers.Sync.Event.<a href="net/ME1312/SubServers/Sync/Event/SubEditServerEvent.html" title="class in net.ME1312.SubServers.Sync.Event">SubEditServerEvent</a></dt>
<dd>
<div class="block">Gets if the edit is permanent</div>

View File

@ -156,26 +156,30 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#dir">dir</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#isPatched">isPatched</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#lastReload">lastReload</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code>java.io.PrintStream</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#out">out</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#redis">redis</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,<a href="../../../../net/ME1312/SubServers/Sync/Server/Server.html" title="class in net.ME1312.SubServers.Sync.Server">Server</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#servers">servers</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../net/ME1312/SubServers/Sync/Network/SubDataClient.html" title="class in net.ME1312.SubServers.Sync.Network">SubDataClient</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#subdata">subdata</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../net/ME1312/SubServers/Sync/Library/Version/Version.html" title="class in net.ME1312.SubServers.Sync.Library.Version">Version</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#version">version</a></span></code>&nbsp;</td>
</tr>
@ -211,22 +215,22 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#getBungeeName--">getBungeeName</a></span>()</code>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#getName--">getName</a></span>()</code>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,net.md_5.bungee.api.config.ServerInfo&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#getServers--">getServers</a></span>()</code>
<div class="block">Emulate BungeeCord's getServers()</div>
</td>
</tr>
<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/Sync/SubPlugin.html#getVersion--">getVersion</a></span>()</code>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.lang.Boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../net/ME1312/SubServers/Sync/SubPlugin.html#merge-java.lang.String-net.ME1312.SubServers.Sync.Library.Config.YAMLSection-boolean-">merge</a></span>(java.lang.String&nbsp;name,
@ -274,7 +278,7 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;net.md_5.bungee.BungeeCord</h3>
<code>addConnection, broadcast, broadcast, broadcast, broadcast, constructServerInfo, createTitle, getChannels, getConfig, getConfigurationAdapter, getConnectionThrottle, getConsole, getConsoleReader, getDisabledCommands, getGameVersion, getInstance, getLogger, getOnlineCount, getPlayer, getPlayer, getPlayerByOfflineUUID, getPlayers, getPluginManager, getPluginsFolder, getProtocolVersion, getReconnectHandler, getScheduler, getServerInfo, getTranslation, matchPlayer, registerChannel, registerChannels, removeConnection, setConfigurationAdapter, setReconnectHandler, start, stop, stop, unregisterChannel</code></li>
<code>addConnection, broadcast, broadcast, broadcast, broadcast, constructServerInfo, createTitle, getChannels, getConfig, getConfigurationAdapter, getConnectionThrottle, getConsole, getConsoleReader, getDisabledCommands, getGameVersion, getInstance, getLogger, getOnlineCount, getPlayer, getPlayer, getPlayerByOfflineUUID, getPlayers, getPluginManager, getPluginsFolder, getProtocolVersion, getReconnectHandler, getScheduler, getServerInfo, getTranslation, getVersion, matchPlayer, registerChannel, registerChannels, removeConnection, setConfigurationAdapter, setReconnectHandler, start, stop, stop, unregisterChannel</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.net.md_5.bungee.api.ProxyServer">
@ -376,6 +380,15 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
<pre>public static final&nbsp;<a href="../../../../net/ME1312/SubServers/Sync/Library/Version/Version.html" title="class in net.ME1312.SubServers.Sync.Library.Version">Version</a> version</pre>
</li>
</ul>
<a name="isPatched">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPatched</h4>
<pre>public final&nbsp;boolean isPatched</pre>
</li>
</ul>
<a name="lastReload">
<!-- -->
</a>
@ -450,19 +463,17 @@ implements net.md_5.bungee.api.plugin.Listener</pre>
</dl>
</li>
</ul>
<a name="getVersion--">
<a name="getBungeeName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVersion</h4>
<pre>public&nbsp;java.lang.String&nbsp;getVersion()</pre>
<div class="block">Further override BungeeCord's signature when patched into the same jar</div>
<h4>getBungeeName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getBungeeName()</pre>
<div class="block">Get the name from BungeeCord's original signature (for determining which fork is being used)</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getVersion</code>&nbsp;in class&nbsp;<code>net.md_5.bungee.BungeeCord</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Software Version</dd>
<dd>BungeeCord Software Name</dd>
</dl>
</li>
</ul>

Binary file not shown.

View File

@ -1,4 +1,4 @@
Manifest-Version: 1.0
Class-Path: BungeeCord.jar Waterfall.jar
Main-Class: net.ME1312.SubServers.Bungee.Launch
Implementation-Version: SubServers.Bungee
Implementation-Title: SubServers.Bungee

View File

@ -24,7 +24,6 @@ public final class Launch {
System.setProperty("apple.laf.useScreenMenuBar", "true");
Container<Boolean> bungee = new Container<Boolean>(false);
Container<Boolean> waterfall = new Container<Boolean>(false);
if (Util.isException(() -> bungee.set(Class.forName("net.md_5.bungee.BungeeCord") != null)) && !bungee.get()) {
System.out.println("");
System.out.println("*******************************************");
@ -38,6 +37,8 @@ public final class Launch {
} else if (System.getProperty("RM.subservers", "true").equalsIgnoreCase("true")) {
Security.setProperty("networkaddress.cache.ttl", "30");
Security.setProperty("networkaddress.cache.negative.ttl", "10");
final boolean patched = net.md_5.bungee.BungeeCord.class.getPackage().getImplementationTitle() != null && net.md_5.bungee.BungeeCord.class.getPackage().getImplementationTitle().equals("SubServers.Bungee");
joptsimple.OptionParser parser = new joptsimple.OptionParser();
parser.allowsUnrecognizedOptions();
parser.accepts("v");
@ -48,7 +49,7 @@ public final class Launch {
System.out.println("");
System.out.println(System.getProperty("os.name") + " " + System.getProperty("os.version") + ",");
System.out.println("Java " + System.getProperty("java.version") + ",");
System.out.println("BungeeCord " + net.md_5.bungee.Bootstrap.class.getPackage().getImplementationVersion() + ",");
System.out.println("BungeeCord" + ((patched)?" (Patched) ":" ") + net.md_5.bungee.Bootstrap.class.getPackage().getImplementationVersion() + ",");
System.out.println("SubServers.Bungee v" + SubPlugin.version.toExtendedString());
System.out.println("");
} else {
@ -59,13 +60,13 @@ public final class Launch {
System.out.println("*** Please report all issues to ME1312, ***");
System.out.println("*** NOT the Spigot Team. Thank You! ***");
System.out.println("*******************************************");
if (net.md_5.bungee.BungeeCord.class.getPackage().getImplementationVersion() == null || net.md_5.bungee.BungeeCord.class.getPackage().getImplementationVersion().equals("SubServers.Sync")) try {
try {
if (net.md_5.bungee.BungeeCord.class.getPackage().getSpecificationVersion() != null) {
Date date = (new SimpleDateFormat("yyyyMMdd")).parse(net.md_5.bungee.BungeeCord.class.getPackage().getSpecificationVersion());
Calendar line = Calendar.getInstance();
line.add(3, -4);
if (date.before(line.getTime())) {
System.out.println("*** Warning: BungeeCord.jar is outdated ***");
System.out.println("*** Warning: BungeeCord is outdated ***");
System.out.println("*** Please download a new build from: ***");
System.out.println("*** http://ci.md-5.net/job/BungeeCord ***");
System.out.println("*** Errors may arise on older versions! ***");
@ -74,24 +75,22 @@ public final class Launch {
} else throw new Exception();
} catch (Exception e) {
System.out.println("*** Problem checking BungeeCord version ***");
System.out.println("*** BungeeCord.jar could be outdated. ***");
System.out.println("*** BungeeCord could be outdated. ***");
System.out.println("*** ***");
System.out.println("*** Errors may arise on older versions! ***");
System.out.println("*******************************************");
}
System.out.println("");
Util.isException(() -> waterfall.set(Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole") != null));
SubPlugin plugin = new SubPlugin(System.out);
SubPlugin plugin = new SubPlugin(System.out, patched);
net.md_5.bungee.api.ProxyServer.class.getMethod("setInstance", net.md_5.bungee.api.ProxyServer.class).invoke(null, plugin);
plugin.getLogger().info("Enabled BungeeCord version " + plugin.getVersion());
plugin.getLogger().info("Enabled " + plugin.getBungeeName() + " version " + plugin.getVersion());
plugin.start();
if (!options.has("noconsole")) {
try {
if (waterfall.get()) {
plugin.canSudo = false;
Container<Boolean> proprietary = new Container<Boolean>(false);
if (!Util.isException(() -> proprietary.set(Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole") != null)) && proprietary.get()) {
Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole").getMethod("readCommands").invoke(null);
} else {
String line;

View File

@ -60,17 +60,19 @@ public final class SubPlugin extends BungeeCord implements Listener {
public SubServer sudo = null;
//public static final Version version = new Version("2.13a");
//public static final Version version = new Version(new Version("2.13a"), VersionType.BETA, 1); // TODO Beta Version Setting
public static final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 4); // TODO Beta Version Setting
public static final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 5); // TODO Beta Version Setting
public boolean redis = false;
public boolean canSudo = true;
public final boolean isPatched;
public long resetDate = 0;
private boolean running = false;
private boolean posted = false;
private static BigInteger lastSignature = BigInteger.valueOf(-1);
@SuppressWarnings("unchecked")
protected SubPlugin(PrintStream out) throws IOException {
protected SubPlugin(PrintStream out, boolean isPatched) throws IOException {
this.isPatched = isPatched;
System.out.println("SubServers > Loading SubServers.Bungee v" + version.toString() + " Libraries (for Minecraft " + api.getGameVersion()[api.getGameVersion().length - 1] + ")");
this.out = out;
@ -618,17 +620,16 @@ public final class SubPlugin extends BungeeCord implements Listener {
*/
@Override
public String getName() {
return (super.getVersion()).equals("SubServers.Bungee")?"SubServers.Bungee":super.getName();
return (isPatched)?"SubServers.Bungee":super.getName();
}
/**
* Further override BungeeCord's signature when patched into the same jar
* Get the name from BungeeCord's original signature (for determining which fork is being used)
*
* @return Software Version
* @return BungeeCord Software Name
*/
@Override
public String getVersion() {
return (super.getVersion().equals("SubServers.Bungee"))?version.toString():super.getVersion();
public String getBungeeName() {
return super.getName();
}
/**

Binary file not shown.

View File

@ -48,7 +48,7 @@ public final class SubPlugin extends JavaPlugin {
super();
//version = new Version(getDescription().getVersion());
//version = new Version(new Version(getDescription().getVersion()), VersionType.BETA, 1); // TODO Beta Version Setting
version = new Version(new Version(new Version(getDescription().getVersion()), VersionType.PRE_RELEASE, 3), VersionType.BETA, 4); // TODO Beta Version Setting
version = new Version(new Version(new Version(getDescription().getVersion()), VersionType.PRE_RELEASE, 3), VersionType.BETA, 5); // TODO Beta Version Setting
}
/**

Binary file not shown.

View File

@ -53,7 +53,7 @@ public final class ExHost {
//public final Version version = new Version("2.13a");
//public final Version version = new Version(new Version("2.13a"), VersionType.BETA, 1); // TODO Beta Version Setting
public final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 4); // TODO Beta Version Setting
public final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 5); // TODO Beta Version Setting
public final SubAPI api = new SubAPI(this);
private ConsoleReader jline;

Binary file not shown.

View File

@ -1,4 +1,4 @@
Manifest-Version: 1.0
Class-Path: BungeeCord.jar Waterfall.jar
Main-Class: net.ME1312.SubServers.Sync.Launch
Implementation-Version: SubServers.Sync
Implementation-Title: SubServers.Sync

View File

@ -24,7 +24,6 @@ public final class Launch {
System.setProperty("apple.laf.useScreenMenuBar", "true");
Container<Boolean> bungee = new Container<Boolean>(false);
Container<Boolean> waterfall = new Container<Boolean>(false);
if (Util.isException(() -> bungee.set(Class.forName("net.md_5.bungee.BungeeCord") != null)) && !bungee.get()) {
System.out.println("");
System.out.println("*******************************************");
@ -38,6 +37,8 @@ public final class Launch {
} else {
Security.setProperty("networkaddress.cache.ttl", "30");
Security.setProperty("networkaddress.cache.negative.ttl", "10");
final boolean patched = net.md_5.bungee.BungeeCord.class.getPackage().getImplementationTitle() != null && net.md_5.bungee.BungeeCord.class.getPackage().getImplementationTitle().equals("SubServers.Sync");
joptsimple.OptionParser parser = new joptsimple.OptionParser();
parser.allowsUnrecognizedOptions();
parser.accepts("v");
@ -48,7 +49,7 @@ public final class Launch {
System.out.println("");
System.out.println(System.getProperty("os.name") + " " + System.getProperty("os.version") + ",");
System.out.println("Java " + System.getProperty("java.version") + ",");
System.out.println("BungeeCord " + net.md_5.bungee.Bootstrap.class.getPackage().getImplementationVersion() + ",");
System.out.println("BungeeCord" + ((patched)?" (Patched) ":" ") + net.md_5.bungee.Bootstrap.class.getPackage().getImplementationVersion() + ",");
System.out.println("SubServers.Sync v" + SubPlugin.version.toExtendedString());
System.out.println("");
} else {
@ -59,13 +60,13 @@ public final class Launch {
System.out.println("*** Please report all issues to ME1312, ***");
System.out.println("*** NOT the Spigot Team. Thank You! ***");
System.out.println("*******************************************");
if (net.md_5.bungee.BungeeCord.class.getPackage().getImplementationVersion() == null || net.md_5.bungee.BungeeCord.class.getPackage().getImplementationVersion().equals("SubServers.Sync")) try {
try {
if (net.md_5.bungee.BungeeCord.class.getPackage().getSpecificationVersion() != null) {
Date date = (new SimpleDateFormat("yyyyMMdd")).parse(net.md_5.bungee.BungeeCord.class.getPackage().getSpecificationVersion());
Calendar line = Calendar.getInstance();
line.add(3, -4);
if (date.before(line.getTime())) {
System.out.println("*** Warning: BungeeCord.jar is outdated ***");
System.out.println("*** Warning: BungeeCord is outdated ***");
System.out.println("*** Please download a new build from: ***");
System.out.println("*** http://ci.md-5.net/job/BungeeCord ***");
System.out.println("*** Errors may arise on older versions! ***");
@ -74,23 +75,22 @@ public final class Launch {
} else throw new Exception();
} catch (Exception e) {
System.out.println("*** Problem checking BungeeCord Version ***");
System.out.println("*** BungeeCord.jar could be outdated. ***");
System.out.println("*** BungeeCord could be outdated. ***");
System.out.println("*** ***");
System.out.println("*** Errors may arise on older versions! ***");
System.out.println("*******************************************");
}
System.out.println("");
Util.isException(() -> waterfall.set(Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole") != null));
SubPlugin plugin = new SubPlugin(System.out);
SubPlugin plugin = new SubPlugin(System.out, patched);
net.md_5.bungee.api.ProxyServer.class.getMethod("setInstance", net.md_5.bungee.api.ProxyServer.class).invoke(null, plugin);
plugin.getLogger().info("Enabled BungeeCord version " + plugin.getVersion());
plugin.getLogger().info("Enabled " + plugin.getBungeeName() + " version " + plugin.getVersion());
plugin.start();
if (!options.has("noconsole")) {
try {
if (waterfall.get()) {
Container<Boolean> proprietary = new Container<Boolean>(false);
if (!Util.isException(() -> proprietary.set(Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole") != null)) && proprietary.get()) {
Class.forName("io.github.waterfallmc.waterfall.console.WaterfallConsole").getMethod("readCommands").invoke(null);
} else {
String line;

View File

@ -50,13 +50,14 @@ public final class SubPlugin extends BungeeCord implements Listener {
public SubDataClient subdata = null;
//public static final Version version = new Version("2.13a");
//public static final Version version = new Version(new Version("2.13a"), VersionType.BETA, 1); // TODO Beta Version Setting
public static final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 4); // TODO Beta Version Setting
public static final Version version = new Version(new Version(new Version("2.13a"), VersionType.PRE_RELEASE, 3), VersionType.BETA, 5); // TODO Beta Version Setting
public final boolean isPatched;
public long lastReload = -1;
private boolean posted = false;
protected SubPlugin(PrintStream out) throws IOException {
protected SubPlugin(PrintStream out, boolean isPatched) throws IOException {
this.isPatched = isPatched;
System.out.println("SubServers > Loading SubServers.Sync v" + version.toString() + " Libraries (for Minecraft " + api.getGameVersion()[api.getGameVersion().length - 1] + ")");
this.out = out;
@ -184,17 +185,16 @@ public final class SubPlugin extends BungeeCord implements Listener {
*/
@Override
public String getName() {
return (super.getVersion()).equals("SubServers.Sync")?"SubServers.Sync":super.getName();
return (isPatched)?"SubServers.Sync":super.getName();
}
/**
* Further override BungeeCord's signature when patched into the same jar
* Get the name from BungeeCord's original signature (for determining which fork is being used)
*
* @return Software Version
* @return BungeeCord Software Name
*/
@Override
public String getVersion() {
return (super.getVersion().equals("SubServers.Sync"))?version.toString():super.getVersion();
public String getBungeeName() {
return super.getName();
}
/**