Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
8b89097
Just have packets and testing left for 1.20.1
AzureDoom Feb 13, 2025
8f8724c
More back port work, 19 classes left.
AzureDoom Apr 7, 2025
1934d61
Update changelog.txt
AzureDoom Apr 7, 2025
bc59371
Move changelog to markdown
AzureDoom Apr 7, 2025
2c7bff8
Update AzCommand.java
AzureDoom Apr 7, 2025
beb1ec4
Found missing class that needs backported as well.
AzureDoom Apr 8, 2025
e12b6bc
Update changelog.md
AzureDoom Apr 8, 2025
81a4eac
Adds examples for testing, will be removed by release.
AzureDoom Apr 8, 2025
ee2157c
Fixes items not getting proper tag
AzureDoom Apr 8, 2025
f946104
Port back latest 3.x changes
AzureDoom Apr 23, 2025
2b3e645
Update tooling for discord posting of updates
AzureDoom Apr 28, 2025
121f4ae
Fixes black rendering
AzureDoom Apr 28, 2025
8a864dc
Update AzEntityModelRenderer.java
AzureDoom Apr 28, 2025
0ab322c
Part 1 of StreamCodec backporting, still getting nulls for some reason.
AzureDoom Apr 28, 2025
879d78b
Use a base variable for NTB tag name.
AzureDoom May 7, 2025
7cdc7be
Clean up ItemStackMixin_AzItemStackIdentityRegistry to remove unneede…
AzureDoom May 7, 2025
070fa74
Fixed AzID being copied to a new stack on menu creation, now ensures …
AzureDoom May 7, 2025
770883f
Update PistolItem.java
AzureDoom May 7, 2025
ba2ccb5
Remove Optifine warning screen.
AzureDoom May 7, 2025
a6c4c15
Update Forge
AzureDoom May 7, 2025
d95e03e
Use ModDevGradle Legacy instead of VanillaGradle/ForgeGradle
AzureDoom May 7, 2025
5c3762c
Fixes Java doc
AzureDoom May 7, 2025
5995a38
Update gradle.properties
AzureDoom May 7, 2025
d02ff63
Update NeoForgeAzureLibMod.java
AzureDoom May 7, 2025
d2a5015
Fixes Item IDs not applying on Forge.
AzureDoom May 8, 2025
c5475b4
Update README.md
AzureDoom May 8, 2025
6f91a35
Update MDG
AzureDoom May 8, 2025
44448c0
Update multiloader-common.gradle
AzureDoom May 8, 2025
ad4cd53
Update build.gradle
AzureDoom May 8, 2025
fd6443d
More Deprecated
AzureDoom May 8, 2025
f4d8684
Now properly hide player outlayers on equipping armor
AzureDoom May 9, 2025
8d104a4
Fix spinning entities
Vetpetmon May 13, 2025
0bbf6fc
Merge pull request #98 from Vetpetmon/1.20
AzureDoom May 13, 2025
e85bb62
Convert to Java Doc
AzureDoom May 13, 2025
7ef1efa
Lint
AzureDoom May 13, 2025
57e1593
Back port 1.21.1 changes/fixes.
AzureDoom May 15, 2025
07569a8
IT'S FINALLY DONE
AzureDoom May 15, 2025
3a8c0bf
Update AzureLib.java
AzureDoom May 15, 2025
9a30044
Remove examples
AzureDoom May 16, 2025
326a9f6
v3.0.0
AzureDoom May 16, 2025
924db48
Update AzureNavigation.java
AzureDoom May 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 0 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,6 @@

AzureLib represents a branch derived from Geckolib 4.x, serving as an animation engine tailored for Minecraft Mods. It boasts various features, including support for intricate 3D keyframe-driven animations, over 30 different easing functions, concurrent animation capabilities, sound and particle keyframes, event-based keyframes, and numerous other functionalities. Currently, I'll focus on maintaining and supporting AzureLib; no help will be given to Geckolib.

<br>
Are you a developer and want to use this library in your mod? Add the following to your build.gradle
</p>
</center>

```
repositories {
// The Maven with the mods source
maven {url 'https://maven.azuredoom.com/mods'}
}

dependencies {

//Common 1.20.1+ Latest Only
compileOnly "mod.azure.azurelib:azurelib-common-MCVERSION:MODVERSION"

//Fabric or Quilt
modImplementation "mod.azure.azurelib:azurelib-fabric-MCVERSION:MODVERSION"

//NeoForge or Forge 1.20.1
implementation fg.deobf("mod.azure.azurelib:azurelib-neo-MCVERSION:MODVERSION")
}
```

<center>

<h1 style="font-size:10vw" align="center">Wiki</h1>
<p align="center">
You can find the AzureLib Wiki here: https://wiki.azuredoom.com/
Expand Down
120 changes: 3 additions & 117 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,119 +1,5 @@
import groovy.json.JsonOutput
import groovy.json.JsonSlurper

plugins {
id 'fabric-loom' version '1.2-SNAPSHOT' apply(false)
id 'net.minecraftforge.gradle' version '[6.0,6.2)' apply(false)
id 'org.spongepowered.gradle.vanilla' version '0.2.1-SNAPSHOT' apply(false)
id "org.spongepowered.mixin" version "0.7-SNAPSHOT" apply(false)
}

version = version
group = maven_group

subprojects {
apply plugin: 'java'

java.toolchain.languageVersion = JavaLanguageVersion.of(17)
java.withSourcesJar()
java.withJavadocJar()

jar {
from(rootProject.file("LICENSE")) {
rename { "${it}_${mod_name}" }
}
manifest {
attributes([
"Specification-Title" : "AzureLib",
"Specification-Vendor" : "AzureDoom",
"Specification-Version" : "1", // We are version 1 of ourselves
"Implementation-Title" : project.name,
"Implementation-Version" : project.version,
"Implementation-Vendor" : "AzureDoom",
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
])
}
}

sourcesJar {
from(rootProject.file("LICENSE")) {
rename { "${it}_${mod_name}" }
}
}

repositories {
mavenCentral()
maven {
name = 'Sponge / Mixin'
url = 'https://repo.spongepowered.org/repository/maven-public/'
}
maven {
name = 'BlameJared Maven (JEI / CraftTweaker / Bookshelf)'
url = 'https://maven.blamejared.com'
}
}

tasks.withType(JavaCompile).configureEach {

it.options.encoding = 'UTF-8'
it.options.getRelease().set(17)
}

processResources {
def expandProps = [
"version" : project.version,
"group" : project.group, //Else we target the task's group.
"minecraft_version" : project.minecraft_version,
"neo_version" : project.neo_version,
"loader_version_range" : project.loader_version_range,
"neo_version_range" : project.neo_version_range,
"minecraft_version_range" : project.minecraft_version_range,
"fabric_version" : project.fabric_version,
"fabric_loader_version" : project.fabric_loader_version,
"mod_name" : project.mod_name,
"mod_author" : project.mod_author,
"mod_id" : project.mod_id,
"mod_license" : project.mod_license,
"mod_description" : project.mod_description,
"mod_credits" : project.mod_credits,
"mod_logo" : project.mod_logo,
"mod_url" : project.mod_url,
"mod_issues" : project.mod_issues,
"mod_sources" : project.mod_sources,
]

filesMatching(['pack.mcmeta', 'fabric.mod.json', '*.mixins.json', 'META-INF/mods.toml']) {
expand expandProps
}
inputs.properties(expandProps)
doLast {
def jsonMinifyStart = System.currentTimeMillis()
def jsonMinified = 0
def jsonBytesSaved = 0
fileTree(dir: outputs.files.asPath, include: '**/*.json').each {
File file = it
jsonMinified++
def oldLength = file.length()
file.text = JsonOutput.toJson(new JsonSlurper().parse(file))
jsonBytesSaved += oldLength - file.length()
}
println('Minified ' + jsonMinified + ' json files. Saved ' + jsonBytesSaved + ' bytes. Took ' + (System.currentTimeMillis() - jsonMinifyStart) + 'ms.')
}
}

// Disables Gradle's custom module metadata from being published to maven. The
// metadata includes mapped dependencies which are not reasonably consumable by
// other mod developers.
tasks.withType(GenerateModuleMetadata).configureEach {

enabled = false
}

// Tells gradle to show 1000 errors instead of the default count of 100.
// See: https://stackoverflow.com/a/31905248
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xmaxerrs" << "1000"
}
}
id 'fabric-loom' version '1.9-SNAPSHOT' apply(false)
id 'net.neoforged.moddev.legacyforge' version '2.0.88' apply(false)
id 'me.modmuss50.mod-publish-plugin' version "${modmuss50_mod_publish_version}" apply(false)
}
3 changes: 3 additions & 0 deletions buildSrc/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
plugins {
id 'groovy-gradle-plugin'
}
185 changes: 185 additions & 0 deletions buildSrc/src/main/groovy/multiloader-common.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
plugins {
id 'com.diffplug.spotless'
id 'java-library'
id 'maven-publish'
id 'idea'
}

base {
archivesName = "${mod_id}-${project.name}-${minecraft_version}"
}

java {
toolchain.languageVersion = JavaLanguageVersion.of(java_version)
withSourcesJar()
withJavadocJar()
}

repositories {
mavenCentral()
// https://docs.gradle.org/current/userguide/declaring_repositories.html#declaring_content_exclusively_found_in_one_repository
exclusiveContent {
forRepository {
maven {
name = 'Sponge'
url = 'https://repo.spongepowered.org/repository/maven-public'
}
}
filter { includeGroupAndSubgroups('org.spongepowered') }
}
exclusiveContent {
forRepositories(
maven {
name = 'ParchmentMC'
url = 'https://maven.parchmentmc.org/'
},
maven {
name = "NeoForge"
url = 'https://maven.neoforged.net/releases'
}
)
filter { includeGroup('org.parchmentmc.data') }
}
maven {
name = 'BlameJared'
url = 'https://maven.blamejared.com'
}
maven { url "https://api.modrinth.com/maven" }
maven { url "https://cfa2.cursemaven.com" }
maven { url "https://maven.terraformersmc.com/" }
maven { url "https://maven.terraformersmc.com/releases" } // modmenu
}

dependencies {
implementation 'org.jetbrains:annotations:24.1.0'
}

['apiElements', 'runtimeElements', 'sourcesElements', 'javadocElements'].each { variant ->
configurations."$variant".outgoing {
capability("$group:${project.name}:$version")
capability("$group:${base.archivesName.get()}:$version")
capability("$group:$mod_id-${project.name}-${minecraft_version}:$version")
capability("$group:$mod_id:$version")
}
publishing.publications.configureEach {
suppressPomMetadataWarningsFor(variant)
}
}

sourcesJar {
from(rootProject.file('LICENSE')) {
rename { "${it}_${mod_name}" }
}
}

jar {
from(rootProject.file('LICENSE')) {
rename { "${it}_${mod_name}" }
}

manifest {
attributes([
'Specification-Title' : mod_name,
'Specification-Vendor' : mod_author,
'Specification-Version' : project.jar.archiveVersion,
'Implementation-Title' : project.name,
'Implementation-Version': project.jar.archiveVersion,
'Implementation-Vendor' : mod_author,
'Built-On-Minecraft' : minecraft_version
])
}
}

processResources {
var expandProps = [
"version" : project.version,
"group" : project.group, //Else we target the task's group.
"minecraft_version" : project.minecraft_version,
"neo_version" : project.neo_version,
"loader_version_range" : project.loader_version_range,
"neo_version_range" : project.neo_version_range,
"minecraft_version_range" : project.minecraft_version_range,
"fabric_version" : project.fabric_version,
"fabric_loader_version" : project.fabric_loader_version,
"mod_name" : project.mod_name,
"mod_author" : project.mod_author,
"mod_id" : project.mod_id,
"mod_license" : project.mod_license,
"mod_description" : project.mod_description,
"mod_credits" : project.mod_credits,
"mod_logo" : project.mod_logo,
"mod_url" : project.mod_url,
"mod_issues" : project.mod_issues,
"mod_sources" : project.mod_sources,
]

var jsonExpandProps = expandProps.collectEntries {
key, value -> [(key): value instanceof String ? value.replace("\n", "\\\\n") : value]
}

filesMatching(['META-INF/mods.toml']) {
expand expandProps
}

filesMatching(['pack.mcmeta', 'fabric.mod.json', '*.mixins.json']) {
expand jsonExpandProps
}

inputs.properties(expandProps)
}

publishing {
repositories {
maven {
name = project.mod_id
url = project.maven_url
credentials(PasswordCredentials)
authentication {
basic(BasicAuthentication)
}
}
}
publications {
maven(MavenPublication) {
artifactId base.archivesName.get()
from components.java
pom.withXml {
asNode().dependencies.dependency.each { dep ->
if (dep.groupId.text() == 'com.terraformersmc' && dep.artifactId.text() == 'modmenu') {
dep.parent().remove(dep)
}
}
}
}
}
}


// Disables Gradle's custom module metadata from being published to maven. The
// metadata includes mapped dependencies which are not reasonably consumable by
// other mod developers.
tasks.withType(GenerateModuleMetadata).configureEach {
enabled = false
}

idea {
module {
downloadSources = true
downloadJavadoc = true
}
}

spotless {
java {
eclipse().configFile("$rootDir/eclipse-formatter.xml")
endWithNewline()
importOrder("", "java", group.toString(), "\\#")
indentWithSpaces(4)
removeUnusedImports()
trimTrailingWhitespace()
}
}

tasks.build {
dependsOn("spotlessApply")
}
44 changes: 44 additions & 0 deletions buildSrc/src/main/groovy/multiloader-loader.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
plugins {
id 'multiloader-common'
}

configurations {
commonJava{
canBeResolved = true
}
commonResources{
canBeResolved = true
}
}

dependencies {
compileOnly(project(':common')) {
capabilities {
requireCapability "$group:$mod_id"
}
}
commonJava project(path: ':common', configuration: 'commonJava')
commonResources project(path: ':common', configuration: 'commonResources')
}

tasks.named('compileJava', JavaCompile) {
dependsOn(configurations.commonJava)
source(configurations.commonJava)
}

processResources {
dependsOn(configurations.commonResources)
from(configurations.commonResources)
}

tasks.named('javadoc', Javadoc).configure {
dependsOn(configurations.commonJava)
source(configurations.commonJava)
}

tasks.named('sourcesJar', Jar) {
dependsOn(configurations.commonJava)
from(configurations.commonJava)
dependsOn(configurations.commonResources)
from(configurations.commonResources)
}
3 changes: 3 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
v3.0.0

- Complete backport of AzureLib 3.x, please see: https://moddedmc.wiki/en/project/azurelib/docs Updating Guide for updating to this version.
Loading