Mirror von
https://github.com/ViaVersion/ViaVersion.git
synchronisiert 2024-12-27 08:30:09 +01:00
Merge branch 'master' of https://github.com/MylesIsCool/ViaVersion into 1.10
Dieser Commit ist enthalten in:
Commit
082db38c40
@ -38,8 +38,10 @@ public class PacketWrapper {
|
|||||||
* Get a part from the output
|
* Get a part from the output
|
||||||
*
|
*
|
||||||
* @param type The type of the part you wish to get.
|
* @param type The type of the part you wish to get.
|
||||||
|
* @param <T> The return type of the type you wish to get.
|
||||||
* @param index The index of the part (relative to the type)
|
* @param index The index of the part (relative to the type)
|
||||||
* @return The requested type or throws ArrayIndexOutOfBounds
|
* @return The requested type or throws ArrayIndexOutOfBounds
|
||||||
|
* @throws Exception If it fails to find it, an exception will be thrown.
|
||||||
*/
|
*/
|
||||||
public <T> T get(Type<T> type, int index) throws Exception {
|
public <T> T get(Type<T> type, int index) throws Exception {
|
||||||
int currentIndex = 0;
|
int currentIndex = 0;
|
||||||
@ -80,8 +82,10 @@ public class PacketWrapper {
|
|||||||
* Set a currently existing part in the output
|
* Set a currently existing part in the output
|
||||||
*
|
*
|
||||||
* @param type The type of the part you wish to set.
|
* @param type The type of the part you wish to set.
|
||||||
|
* @param <T> The return type of the type you wish to set.
|
||||||
* @param index The index of the part (relative to the type)
|
* @param index The index of the part (relative to the type)
|
||||||
* @param value The value of the part you wish to set it to.
|
* @param value The value of the part you wish to set it to.
|
||||||
|
* @throws Exception If it fails to set it, an exception will be thrown.
|
||||||
*/
|
*/
|
||||||
public <T> void set(Type<T> type, int index, T value) throws Exception {
|
public <T> void set(Type<T> type, int index, T value) throws Exception {
|
||||||
int currentIndex = 0;
|
int currentIndex = 0;
|
||||||
@ -102,6 +106,7 @@ public class PacketWrapper {
|
|||||||
* Read a type from the input.
|
* Read a type from the input.
|
||||||
*
|
*
|
||||||
* @param type The type you wish to read
|
* @param type The type you wish to read
|
||||||
|
* @param <T> The return type of the type you wish to read.
|
||||||
* @return The requested type
|
* @return The requested type
|
||||||
* @throws Exception If it fails to read
|
* @throws Exception If it fails to read
|
||||||
*/
|
*/
|
||||||
@ -134,6 +139,7 @@ public class PacketWrapper {
|
|||||||
* Write a type to the output.
|
* Write a type to the output.
|
||||||
*
|
*
|
||||||
* @param type The type to write.
|
* @param type The type to write.
|
||||||
|
* @param <T> The return type of the type you wish to write.
|
||||||
* @param value The value of the type to write.
|
* @param value The value of the type to write.
|
||||||
*/
|
*/
|
||||||
public <T> void write(Type<T> type, T value) {
|
public <T> void write(Type<T> type, T value) {
|
||||||
@ -154,6 +160,7 @@ public class PacketWrapper {
|
|||||||
* Take a value from the input and write to the output.
|
* Take a value from the input and write to the output.
|
||||||
*
|
*
|
||||||
* @param type The type to read and write.
|
* @param type The type to read and write.
|
||||||
|
* @param <T> The return type of the type you wish to pass through.
|
||||||
* @return The type which was read/written.
|
* @return The type which was read/written.
|
||||||
* @throws Exception If it failed to read or write
|
* @throws Exception If it failed to read or write
|
||||||
*/
|
*/
|
||||||
|
@ -38,7 +38,7 @@ public interface ViaVersionAPI {
|
|||||||
/**
|
/**
|
||||||
* Is player using 1.9?
|
* Is player using 1.9?
|
||||||
*
|
*
|
||||||
* @param playerUUID
|
* @param playerUUID UUID of a player
|
||||||
* @return True if the client is on 1.9
|
* @return True if the client is on 1.9
|
||||||
*/
|
*/
|
||||||
boolean isPorted(UUID playerUUID);
|
boolean isPorted(UUID playerUUID);
|
||||||
|
@ -111,7 +111,7 @@ public interface ViaVersionConfig {
|
|||||||
/**
|
/**
|
||||||
* Get the kick message sent if the user hits the max packets per second.
|
* Get the kick message sent if the user hits the max packets per second.
|
||||||
*
|
*
|
||||||
* @return Kick message, with colour codes using '&'
|
* @return Kick message, with colour codes using '&'
|
||||||
*/
|
*/
|
||||||
String getMaxPPSKickMessage();
|
String getMaxPPSKickMessage();
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ public interface ViaVersionConfig {
|
|||||||
/**
|
/**
|
||||||
* Get the kick message sent if the user goes over the warnings in the interval
|
* Get the kick message sent if the user goes over the warnings in the interval
|
||||||
*
|
*
|
||||||
* @return Kick message, with colour codes using '&'
|
* @return Kick message, with colour codes using '&'
|
||||||
*/
|
*/
|
||||||
String getMaxWarningsKickMessage();
|
String getMaxWarningsKickMessage();
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ public interface BossBar {
|
|||||||
* Change the title
|
* Change the title
|
||||||
*
|
*
|
||||||
* @param title Title can be in either JSON or just text
|
* @param title Title can be in either JSON or just text
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar setTitle(String title);
|
BossBar setTitle(String title);
|
||||||
|
|
||||||
@ -31,13 +32,14 @@ public interface BossBar {
|
|||||||
* Change the health
|
* Change the health
|
||||||
*
|
*
|
||||||
* @param health this float has to be between 0F - 1F
|
* @param health this float has to be between 0F - 1F
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar setHealth(float health);
|
BossBar setHealth(float health);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the bossbar color
|
* Get the bossbar color
|
||||||
*
|
*
|
||||||
* @return
|
* @return The colour
|
||||||
*/
|
*/
|
||||||
BossColor getColor();
|
BossColor getColor();
|
||||||
|
|
||||||
@ -45,6 +47,7 @@ public interface BossBar {
|
|||||||
* Yay colors!
|
* Yay colors!
|
||||||
*
|
*
|
||||||
* @param color Whatever color you want!
|
* @param color Whatever color you want!
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar setColor(BossColor color);
|
BossBar setColor(BossColor color);
|
||||||
|
|
||||||
@ -59,13 +62,15 @@ public interface BossBar {
|
|||||||
* Change the bosbar style
|
* Change the bosbar style
|
||||||
*
|
*
|
||||||
* @param style BossStyle
|
* @param style BossStyle
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar setStyle(BossStyle style);
|
BossBar setStyle(BossStyle style);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the bossbar to a player.
|
* Show the bossbar to a player.
|
||||||
*
|
*
|
||||||
* @param player
|
* @param player The player
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar addPlayer(Player player);
|
BossBar addPlayer(Player player);
|
||||||
|
|
||||||
@ -73,7 +78,7 @@ public interface BossBar {
|
|||||||
* Show the bossbar to a player (uuid)
|
* Show the bossbar to a player (uuid)
|
||||||
*
|
*
|
||||||
* @param player uuid of the player
|
* @param player uuid of the player
|
||||||
* @return the BossBar instance
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar addPlayer(UUID player);
|
BossBar addPlayer(UUID player);
|
||||||
|
|
||||||
@ -81,34 +86,37 @@ public interface BossBar {
|
|||||||
* add multiple players
|
* add multiple players
|
||||||
*
|
*
|
||||||
* @param players list of players
|
* @param players list of players
|
||||||
* @return the bossbar instance
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar addPlayers(Player... players);
|
BossBar addPlayers(Player... players);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the bossbar from a player
|
* Remove the bossbar from a player
|
||||||
*
|
*
|
||||||
* @param player
|
* @param player The player
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar removePlayer(Player player);
|
BossBar removePlayer(Player player);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add flags
|
* Add flags
|
||||||
*
|
*
|
||||||
* @param flag
|
* @param flag The flag to add
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar addFlag(BossFlag flag);
|
BossBar addFlag(BossFlag flag);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove flags.
|
* Remove flags.
|
||||||
*
|
*
|
||||||
* @param flag
|
* @param flag The flag to remove
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar removeFlag(BossFlag flag);
|
BossBar removeFlag(BossFlag flag);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param flag
|
* @param flag The flag to check against
|
||||||
* @return
|
* @return True if it has the flag
|
||||||
*/
|
*/
|
||||||
boolean hasFlag(BossFlag flag);
|
boolean hasFlag(BossFlag flag);
|
||||||
|
|
||||||
@ -121,11 +129,15 @@ public interface BossBar {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the bossbar to everyone (In the getPlayer set)
|
* Show the bossbar to everyone (In the getPlayer set)
|
||||||
|
*
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar show();
|
BossBar show();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hide the bossbar from everyone (In the getPlayer set)
|
* Hide the bossbar from everyone (In the getPlayer set)
|
||||||
|
*
|
||||||
|
* @return The BossBar object
|
||||||
*/
|
*/
|
||||||
BossBar hide();
|
BossBar hide();
|
||||||
|
|
||||||
|
@ -10,14 +10,14 @@ public abstract class ViaSubCommand {
|
|||||||
/**
|
/**
|
||||||
* Subcommand name
|
* Subcommand name
|
||||||
*
|
*
|
||||||
* @return your input
|
* @return The command name
|
||||||
*/
|
*/
|
||||||
public abstract String name();
|
public abstract String name();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* subcommand description, this'll show in /viaversion list
|
* subcommand description, this'll show in /viaversion list
|
||||||
*
|
*
|
||||||
* @return your input
|
* @return The command description
|
||||||
*/
|
*/
|
||||||
public abstract String description();
|
public abstract String description();
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ public abstract class ViaSubCommand {
|
|||||||
* Usage example:
|
* Usage example:
|
||||||
* "playerversion [name]"
|
* "playerversion [name]"
|
||||||
*
|
*
|
||||||
* @return your input
|
* @return The command usage
|
||||||
*/
|
*/
|
||||||
public String usage() {
|
public String usage() {
|
||||||
return name();
|
return name();
|
||||||
@ -34,7 +34,7 @@ public abstract class ViaSubCommand {
|
|||||||
/**
|
/**
|
||||||
* Permission, null for everyone
|
* Permission, null for everyone
|
||||||
*
|
*
|
||||||
* @return
|
* @return The permission required to use the command
|
||||||
*/
|
*/
|
||||||
public String permission() {
|
public String permission() {
|
||||||
return "viaversion.admin";
|
return "viaversion.admin";
|
||||||
@ -59,7 +59,7 @@ public abstract class ViaSubCommand {
|
|||||||
public List<String> onTabComplete(CommandSender sender, String[] args) {
|
public List<String> onTabComplete(CommandSender sender, String[] args) {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String color(String s) {
|
public String color(String s) {
|
||||||
return ViaCommandHandler.color(s);
|
return ViaCommandHandler.color(s);
|
||||||
}
|
}
|
||||||
|
@ -39,6 +39,7 @@ public class UserConnection {
|
|||||||
* Get an object from the storage
|
* Get an object from the storage
|
||||||
*
|
*
|
||||||
* @param objectClass The class of the object to get
|
* @param objectClass The class of the object to get
|
||||||
|
* @param <T> The type of the class you want to get.
|
||||||
* @return The requested object
|
* @return The requested object
|
||||||
*/
|
*/
|
||||||
public <T extends StoredObject> T get(Class<T> objectClass) {
|
public <T extends StoredObject> T get(Class<T> objectClass) {
|
||||||
@ -102,6 +103,8 @@ public class UserConnection {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Used for incrementing the number of packets received from the client
|
* Used for incrementing the number of packets received from the client
|
||||||
|
*
|
||||||
|
* @return True if the interval has reset
|
||||||
*/
|
*/
|
||||||
public boolean incrementReceived() {
|
public boolean incrementReceived() {
|
||||||
// handle stats
|
// handle stats
|
||||||
@ -125,8 +128,8 @@ public class UserConnection {
|
|||||||
* @param reason The reason to use, not used if player is not active.
|
* @param reason The reason to use, not used if player is not active.
|
||||||
*/
|
*/
|
||||||
public void disconnect(final String reason) {
|
public void disconnect(final String reason) {
|
||||||
if(!getChannel().isOpen()) return;
|
if (!getChannel().isOpen()) return;
|
||||||
if(pendingDisconnect) return;
|
if (pendingDisconnect) return;
|
||||||
pendingDisconnect = true;
|
pendingDisconnect = true;
|
||||||
if (get(ProtocolInfo.class).getUuid() != null) {
|
if (get(ProtocolInfo.class).getUuid() != null) {
|
||||||
final UUID uuid = get(ProtocolInfo.class).getUuid();
|
final UUID uuid = get(ProtocolInfo.class).getUuid();
|
||||||
|
@ -157,6 +157,7 @@ public class ChunkSection {
|
|||||||
* Get expected size of this chunk section.
|
* Get expected size of this chunk section.
|
||||||
*
|
*
|
||||||
* @return Amount of bytes sent by this section
|
* @return Amount of bytes sent by this section
|
||||||
|
* @throws Exception If it failed to calculate bits properly
|
||||||
*/
|
*/
|
||||||
public int getExpectedSize() throws Exception {
|
public int getExpectedSize() throws Exception {
|
||||||
int bitsPerBlock = palette.size() > 255 ? 16 : 8;
|
int bitsPerBlock = palette.size() > 255 ? 16 : 8;
|
||||||
|
@ -39,7 +39,9 @@ public abstract class PacketRemapper {
|
|||||||
* Map a type from an old type to a transformed new type.
|
* Map a type from an old type to a transformed new type.
|
||||||
*
|
*
|
||||||
* @param oldType The old type
|
* @param oldType The old type
|
||||||
|
* @param <T1> The old return type.
|
||||||
* @param transformer The transformer to use to produce the new type.
|
* @param transformer The transformer to use to produce the new type.
|
||||||
|
* @param <T2> The new return type.
|
||||||
*/
|
*/
|
||||||
public <T1, T2> void map(Type<T1> oldType, ValueTransformer<T1, T2> transformer) {
|
public <T1, T2> void map(Type<T1> oldType, ValueTransformer<T1, T2> transformer) {
|
||||||
map(new TypeRemapper(oldType), transformer);
|
map(new TypeRemapper(oldType), transformer);
|
||||||
@ -49,7 +51,8 @@ public abstract class PacketRemapper {
|
|||||||
* Map a type using a basic ValueReader to a ValueWriter
|
* Map a type using a basic ValueReader to a ValueWriter
|
||||||
*
|
*
|
||||||
* @param inputReader The reader to read with.
|
* @param inputReader The reader to read with.
|
||||||
* @param outputWriter The writer to write with.
|
* @param outputWriter The writer to write with
|
||||||
|
* @param <T> The return type
|
||||||
*/
|
*/
|
||||||
public <T> void map(ValueReader<T> inputReader, ValueWriter<T> outputWriter) {
|
public <T> void map(ValueReader<T> inputReader, ValueWriter<T> outputWriter) {
|
||||||
valueRemappers.add(new Pair<ValueReader, ValueWriter>(inputReader, outputWriter));
|
valueRemappers.add(new Pair<ValueReader, ValueWriter>(inputReader, outputWriter));
|
||||||
|
@ -3,7 +3,7 @@ main: us.myles.ViaVersion.ViaVersionPlugin
|
|||||||
author: _MylesC
|
author: _MylesC
|
||||||
version: ${project.version}
|
version: ${project.version}
|
||||||
load: startup
|
load: startup
|
||||||
loadbefore: [ProtocolLib, ProxyPipe, SpigotLib, PacketListenerApi]
|
loadbefore: [ProtocolLib, ProxyPipe, SpigotLib, PacketListenerApi, SkinRestorer]
|
||||||
commands:
|
commands:
|
||||||
viaversion:
|
viaversion:
|
||||||
description: Shows ViaVersion Version and more.
|
description: Shows ViaVersion Version and more.
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren