- core/: Minecraft-independent animation model (Bone, BoneTransform with bend fields, Pose, Animation, AnimationPlayer) with JUnit tests. - src/main: Fabric mod built for 1.21.4-1.21.11 with Stonecutter on Mojang mappings. Samples each player's pose into its render state and applies it at the end of HumanoidModel.setupAnim (armor follows too). - src/testmod: dev-only tester with /emotes play|stop|info and a mixin audit on startup. - Publishing to the saturnclientmc Gitea Maven registry as org.saturnclient:emotes-core and emotes-fabric:<v>+<mc>. Loom is pinned to 1.17 because 1.18 needs a Java 25 JVM. Co-Authored-By: Claude Opus 5.5 <[email protected]>
39 lines
803 B
Kotlin
39 lines
803 B
Kotlin
plugins {
|
|
`java-library`
|
|
`maven-publish`
|
|
}
|
|
|
|
group = "org.saturnclient"
|
|
version = rootProject.property("mod.version") as String
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation(platform("org.junit:junit-bom:5.13.4"))
|
|
testImplementation("org.junit.jupiter:junit-jupiter")
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
}
|
|
|
|
java {
|
|
// Kept at 21 so it runs on every supported Minecraft version.
|
|
toolchain.languageVersion = JavaLanguageVersion.of(21)
|
|
withSourcesJar()
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
create<MavenPublication>("maven") {
|
|
artifactId = "emotes-core"
|
|
from(components["java"])
|
|
}
|
|
}
|
|
}
|
|
|
|
apply(from = rootProject.file("gradle/gitea.gradle.kts"))
|