mirror of
https://github.com/alexcrea/CustomAnvil.git
synced 2026-06-23 16:16:17 +02:00
Add nms for 1.17 and 1.17.1 even if these version will not receive support and will not be tested.
Could not add nms for 1.16.5 bc of missing paper userdev.
This commit is contained in:
parent
2d5e83b87c
commit
4e1976b6bd
5 changed files with 83 additions and 7 deletions
|
|
@ -38,6 +38,7 @@ dependencies {
|
||||||
|
|
||||||
// Include nms
|
// Include nms
|
||||||
implementation(project(":nms:nms-common"))
|
implementation(project(":nms:nms-common"))
|
||||||
|
implementation(project(":nms:v1_17R1", configuration = "reobf"))
|
||||||
implementation(project(":nms:v1_18R1", configuration = "reobf"))
|
implementation(project(":nms:v1_18R1", configuration = "reobf"))
|
||||||
implementation(project(":nms:v1_18R2", configuration = "reobf"))
|
implementation(project(":nms:v1_18R2", configuration = "reobf"))
|
||||||
implementation(project(":nms:v1_19R1", configuration = "reobf"))
|
implementation(project(":nms:v1_19R1", configuration = "reobf"))
|
||||||
|
|
|
||||||
43
nms/v1_17R1/build.gradle.kts
Normal file
43
nms/v1_17R1/build.gradle.kts
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
||||||
|
|
||||||
|
group = rootProject.group
|
||||||
|
version = rootProject.version
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id("io.papermc.paperweight.userdev")
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":nms:nms-common"))
|
||||||
|
|
||||||
|
// Used for nms
|
||||||
|
paperweight.paperDevBundle("1.17.1-R0.1-SNAPSHOT")
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven("https://repo.papermc.io/repository/maven-public/")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// As minecraft 1.17 recommended java version is 1.16. we set language version to 1.16
|
||||||
|
|
||||||
|
// Configure used version of kotlin and java
|
||||||
|
java {
|
||||||
|
disableAutoTargetJvm()
|
||||||
|
toolchain.languageVersion.set(JavaLanguageVersion.of(16))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set target version
|
||||||
|
tasks.withType<JavaCompile>().configureEach {
|
||||||
|
sourceCompatibility = "16"
|
||||||
|
targetCompatibility = "16"
|
||||||
|
|
||||||
|
options.encoding = "UTF-8"
|
||||||
|
}
|
||||||
|
|
||||||
|
kotlin {
|
||||||
|
compilerOptions {
|
||||||
|
apiVersion.set(org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_2_0)
|
||||||
|
jvmTarget.set(JvmTarget.JVM_16)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
package xyz.alexcrea.cuanvil.dependency.packet.versions
|
||||||
|
|
||||||
|
import net.minecraft.network.protocol.game.ClientboundPlayerAbilitiesPacket
|
||||||
|
import net.minecraft.world.entity.player.Abilities
|
||||||
|
import org.bukkit.craftbukkit.v1_17_R1.entity.CraftPlayer
|
||||||
|
import org.bukkit.entity.Player
|
||||||
|
import xyz.alexcrea.cuanvil.dependency.packet.PacketManager
|
||||||
|
import xyz.alexcrea.cuanvil.dependency.packet.PacketManagerBase
|
||||||
|
|
||||||
|
class V1_17R1_PacketManager : PacketManagerBase(), PacketManager {
|
||||||
|
override val canSetInstantBuild: Boolean
|
||||||
|
get() = true
|
||||||
|
|
||||||
|
override fun setInstantBuild(player: Player, instantBuild: Boolean) {
|
||||||
|
val nmsPlayer = (player as CraftPlayer).handle
|
||||||
|
val playerAbilities = nmsPlayer.abilities
|
||||||
|
val sendedAbilities: Abilities
|
||||||
|
if (playerAbilities.instabuild == instantBuild) {
|
||||||
|
sendedAbilities = playerAbilities
|
||||||
|
} else {
|
||||||
|
sendedAbilities = Abilities()
|
||||||
|
sendedAbilities.invulnerable = playerAbilities.invulnerable
|
||||||
|
sendedAbilities.flying = playerAbilities.flying
|
||||||
|
sendedAbilities.mayfly = playerAbilities.mayfly
|
||||||
|
sendedAbilities.instabuild = instantBuild
|
||||||
|
sendedAbilities.mayBuild = playerAbilities.mayBuild
|
||||||
|
sendedAbilities.flyingSpeed = playerAbilities.flyingSpeed
|
||||||
|
sendedAbilities.walkingSpeed = playerAbilities.walkingSpeed
|
||||||
|
}
|
||||||
|
val packet = ClientboundPlayerAbilitiesPacket(sendedAbilities)
|
||||||
|
nmsPlayer.connection.send(packet)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -3,6 +3,8 @@ rootProject.name = "CustomAnvil"
|
||||||
// NMS subproject
|
// NMS subproject
|
||||||
include("nms:nms-common")
|
include("nms:nms-common")
|
||||||
findProject(":nms:nms-common")?.name = "nms-common"
|
findProject(":nms:nms-common")?.name = "nms-common"
|
||||||
|
include("nms:v1_17R1")
|
||||||
|
findProject(":nms:v1_17R1")?.name = "v1_17R1"
|
||||||
include("nms:v1_18R1")
|
include("nms:v1_18R1")
|
||||||
findProject(":nms:v1_18R1")?.name = "v1_18R1"
|
findProject(":nms:v1_18R1")?.name = "v1_18R1"
|
||||||
include("nms:v1_18R2")
|
include("nms:v1_18R2")
|
||||||
|
|
|
||||||
|
|
@ -19,19 +19,16 @@ object PacketManagerSelector {
|
||||||
ProtocoLibWrapper()
|
ProtocoLibWrapper()
|
||||||
else
|
else
|
||||||
NoPacketManager()
|
NoPacketManager()
|
||||||
private val versionSpecificManager: PacketManager?
|
private val versionSpecificManager: PacketManagerBase?
|
||||||
get() {
|
get() {
|
||||||
val versionParts = UpdateUtils.currentMinecraftVersion()
|
val versionParts = UpdateUtils.currentMinecraftVersion()
|
||||||
if (versionParts[0] != 1) return null;
|
if (versionParts[0] != 1) return null
|
||||||
|
|
||||||
return when (versionParts[1]) {
|
return when (versionParts[1]) {
|
||||||
16 -> when (versionParts[2]) {
|
// Can't support 1.16.5 bc 1.16.5 paper userdev do not exist
|
||||||
4, 5 -> null // TODO V1_16R3 (if possible)
|
|
||||||
else -> null
|
|
||||||
}
|
|
||||||
|
|
||||||
17 -> when (versionParts[2]) {
|
17 -> when (versionParts[2]) {
|
||||||
0, 1 -> null // TODO V1_17R1 (if possible)
|
0, 1 -> V1_17R1_PacketManager()
|
||||||
else -> null
|
else -> null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue