Skip to content

Commit

Permalink
ViaVersion bridge update (#418)
Browse files Browse the repository at this point in the history
* update registration, add new tag

* lib bump

* note

* fixes

* typo
  • Loading branch information
davight committed Aug 26, 2023
1 parent 6d862af commit c37d96a
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 81 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Expand Up @@ -340,7 +340,7 @@
<dependency>
<groupId>us.myles</groupId>
<artifactId>ViaVersion</artifactId>
<version>2.1.3</version>
<version>4.7.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/ViaVersion.jar</systemPath>
</dependency>
Expand Down
@@ -1,14 +1,12 @@
package com.denizenscript.depenizen.bukkit.bridges;

import com.denizenscript.denizen.objects.PlayerTag;
import com.denizenscript.denizencore.objects.properties.PropertyParser;
import com.denizenscript.depenizen.bukkit.Bridge;
import com.denizenscript.depenizen.bukkit.properties.viaversion.ViaVersionPlayerProperties;
import com.denizenscript.depenizen.bukkit.properties.viaversion.ViaVersionPlayerExtensions;

public class ViaVersionBridge extends Bridge {

@Override
public void init() {
PropertyParser.registerProperty(ViaVersionPlayerProperties.class, PlayerTag.class);
ViaVersionPlayerExtensions.register();
}
}
@@ -0,0 +1,48 @@
package com.denizenscript.depenizen.bukkit.properties.viaversion;

import com.denizenscript.denizen.objects.PlayerTag;
import com.denizenscript.denizencore.objects.core.ElementTag;
import com.viaversion.viaversion.api.Via;
import com.viaversion.viaversion.api.protocol.version.ProtocolVersion;

public class ViaVersionPlayerExtensions {

public static void register() {

// <--[tag]
// @attribute <PlayerTag.viaversion>
// @returns ElementTag(Number)
// @plugin Depenizen, ViaVersion
// @deprecated Use 'PlayerTag.viaversion_protocol'
// @description
// Deprecated in favor of <@link tag PlayerTag.viaversion_protocol>.
// -->

// <--[tag]
// @attribute <PlayerTag.viaversion_protocol>
// @returns ElementTag(Number)
// @plugin Depenizen, ViaVersion
// @description
// Returns the protocol version number of the player's client.
// See <@link url https://wiki.vg/Protocol_version_numbers> as a reference list.
// See also <@link tag PlayerTag.viaversion_version>
// -->
PlayerTag.registerOnlineOnlyTag(ElementTag.class, "viaversion_protocol", (attribute, object) -> {
return new ElementTag(Via.getAPI().getPlayerVersion(object.getUUID()));
}, "viaversion");

// <--[tag]
// @attribute <PlayerTag.viaversion_version>
// @returns ElementTag
// @plugin Depenizen, ViaVersion
// @description
// Returns the player's client version ("1.19.4", "1.18.2"...).
// See also <@link tag PlayerTag.viaversion_protocol>
// -->
PlayerTag.registerOnlineOnlyTag(ElementTag.class, "viaversion_version", (attribute, object) -> {
int version = Via.getAPI().getPlayerVersion(object.getUUID());
return new ElementTag(ProtocolVersion.getProtocol(version).getName(), true);
});
}

}

This file was deleted.

0 comments on commit c37d96a

Please sign in to comment.