Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
15 changes: 9 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,26 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v5
with:
submodules: recursive
token: ${{ secrets.PAT_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v2
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: '17'
java-version: |
8
16
21
distribution: 'adopt'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
uses: gradle/actions/wrapper-validation@v3
- name: Build with Gradle
run: ./gradlew build copyRelease
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
name: 'Prebuilt Artifacts'
path: build/libs
15 changes: 9 additions & 6 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,23 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v5
with:
submodules: recursive
token: ${{ secrets.PAT_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v2
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: '17'
java-version: |
8
16
21
distribution: 'adopt'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
uses: gradle/actions/wrapper-validation@v3
- name: Build with Gradle and publish all editions
if: ${{ github.event.inputs.publish-all == 'true' }}
run: ./gradlew build publishCurseForge copyRelease
Expand All @@ -42,7 +45,7 @@ jobs:
run: ./gradlew :${{ github.event.inputs.publish-edition }}:build :${{ github.event.inputs.publish-edition }}:publishCurseForge :${{ github.event.inputs.publish-edition }}:copyRelease
env:
CURSE_API: ${{ secrets.CURSE_API }}
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
name: 'Prebuilt Artifacts'
path: build/libs
63 changes: 48 additions & 15 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,15 +1,48 @@
/*
/*/
!/sources/
!/gradlew.bat
!/gradlew
!/build.gradle
!/.gitignore
!/.gitmodules
!/changelog.html
!/gradle/
!/README.md
!/LICENSE
!/.github/
!/settings.gradle
!/gradle.properties
.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/
!**/src/main/**/runs/
!**/src/test/**/runs/
sources/**/runs/

### Minecraft ###
run

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/

### Kotlin ###
.kotlin

### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

### VS Code ###
.vscode/

### Mac OS ###
.DS_Store
10 changes: 7 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
plugins {
id 'fabric-loom' version '1.11-SNAPSHOT' apply false
}

apply plugin: "idea"

def jcpluginVersion = "4.0.4"
Expand All @@ -6,11 +10,11 @@ subprojects {
apply plugin: "java"
apply plugin: "idea"

project.version = "4.0.8"
project.version = "4.0.9"
project.ext.relType = "release"

//Descending version order, Forge first; Fabric last
project.ext.jcplugin_versions = ["4430994", "4430992", "4430990", "4430988"] as String[]
//Descending version order, Forge first; Fabric second-last and NeoForge last
project.ext.jcplugin_versions = ["4573148", "4431129", "4431127", "4573146", "7068700"] as String[]
project.ext.jcplugin_id = "659192"

rootProject.ext.setProperty("JCPluginVersion", jcpluginVersion);
Expand Down
7 changes: 6 additions & 1 deletion changelog.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
<h3>Latest release v4.0.8</h3>
<h3>Latest release v4.0.9</h3>
<ul>
<li><b>Fixed: Keybinding are once again properly applied using Minecraft 1.21.5+</b></li>
</ul>

<h3>v4.0.8</h3>
<ul>
<li><b>Updated: Updated to support Minecraft 1.20.6+</b></li>
</ul>
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
17 changes: 16 additions & 1 deletion settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,26 @@ project(":Core").projectDir = file("./sources/Core")
include("Fabric-1.20")
project(":Fabric-1.20").projectDir = file("./sources/Fabric-1.20")

include("Fabric-1.21.5")
project(":Fabric-1.21.5").projectDir = file("./sources/Fabric-1.21.5")

include("Forge-1.20")
project(":Forge-1.20").projectDir = file("./sources/Forge-1.20")

include("Forge-1.20.6")
project(":Forge-1.20.6").projectDir = file("./sources/Forge-1.20.6")

include("Forge-1.21.5")
project(":Forge-1.21.5").projectDir = file("./sources/Forge-1.21.5")

include("Forge-1.21.6")
project(":Forge-1.21.6").projectDir = file("./sources/Forge-1.21.6")

include("NeoForge-1.20.2")
project(":NeoForge-1.20.2").projectDir = file("./sources/NeoForge-1.20.2")
project(":NeoForge-1.20.2").projectDir = file("./sources/NeoForge-1.20.2")

include("NeoForge-1.21.5")
project(":NeoForge-1.21.5").projectDir = file("./sources/NeoForge-1.21.5")

include("NeoForge-1.21.9")
project(":NeoForge-1.21.9").projectDir = file("./sources/NeoForge-1.21.9")
4 changes: 2 additions & 2 deletions sources/Fabric-1.20/build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id "fabric-loom" version "1.0-SNAPSHOT"
id "fabric-loom" version "1.11-SNAPSHOT"
id 'net.darkhax.curseforgegradle' version '1.1.18'
}

Expand Down Expand Up @@ -119,7 +119,7 @@ task("copyRelease") {
def libDir = project.projectDir.toPath().resolve("build/libs")
from(libDir) {
include "*.jar"
exclude "*-dev.jar", "*-sources.jar"
exclude "*-dev.jar"
}
into "../../build/libs/"
duplicatesStrategy DuplicatesStrategy.INCLUDE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -180,4 +180,9 @@ public void saveServers() throws IOException {
public void restoreKeys(boolean update, boolean initial) throws IOException {
FileUtil.restoreKeys(update, initial);
}

@Override
public void saveOptionsFile() {
Minecraft.getInstance().options.save();
}
}
128 changes: 128 additions & 0 deletions sources/Fabric-1.21.5/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
plugins {
id "fabric-loom" version "1.11-SNAPSHOT"
id 'net.darkhax.curseforgegradle' version '1.1.18'
}

archivesBaseName = "${rootProject.name}"

def file_version = version;

version = "1.21.5-${version}-Fabric"

repositories {
maven {
url "https://cursemaven.com"
content {
includeGroup "curse.maven"
}
}
}

dependencies {
minecraft "com.mojang:minecraft:1.21.5"
mappings loom.officialMojangMappings()

modImplementation "net.fabricmc:fabric-loader:0.16.10"

modImplementation "net.fabricmc.fabric-api:fabric-api:0.128.2+1.21.5"

modImplementation "curse.maven:jcp-${project.ext.jcplugin_id}:${project.ext.jcplugin_versions[3]}"
implementation project(":Core")
}

processResources {
inputs.property "version", file_version
inputs.property "JCPluginVersion", rootProject.JCPluginVersion

filesMatching(["**/fabric.mod.json", "**/mods.toml"]) {
expand "version": file_version, "JCPluginVersion": project.JCPluginVersion
}
}

tasks.withType(JavaCompile).configureEach {
source(project(":Core").sourceSets.main.allSource)
}

loom {

accessWidenerPath = file("src/main/resources/defaultsettings.accesswidener")

runs {
client {
client()
setConfigName("Fabric 1.21.5 Client")
ideConfigGenerated(true)
runDir("./run")
}
server {
server()
setConfigName("Fabric 1.21.5 Server")
ideConfigGenerated(true)
runDir("./run")
}
}

//mixin {
// defaultRefmapName = "${project.rootProject.name}.refmap.json"
//}
}

//java {
// withSourcesJar()
//}

task sourcesJar(type: Jar) {
from sourceSets.main.allSource
from(project(":Core").sourceSets.main.allSource)
archiveClassifier = 'sources'
}

artifacts {
archives jar
archives sourcesJar
}

task publishCurseForge(type: net.darkhax.curseforgegradle.TaskPublishCurseForge) {
dependsOn "build"
if (System.getenv("CURSE_API") != null && !System.getenv("CURSE_API").equals("")) {
disableVersionDetection()
apiToken = System.getenv("CURSE_API")

def mainFile = upload(451860, remapJar.archiveFile)
mainFile.releaseType = project.ext.relType
mainFile.displayName = "$archivesBaseName-$version"
mainFile.changelogType = 'html'
mainFile.changelog = file('../../changelog.html')
mainFile.addRequirement('jcplugin')
mainFile.addModLoader('Fabric')
mainFile.addJavaVersion('Java 17')
mainFile.addGameVersion('Client')
mainFile.addGameVersion('1.20.4')
mainFile.addGameVersion('1.20.3')
mainFile.addGameVersion('1.20.2')
mainFile.addGameVersion('1.20.1')
mainFile.addGameVersion('1.20')

def sourcesFile = mainFile.withAdditionalFile(sourcesJar)
sourcesFile.changelog = file('../../changelog.html')
sourcesFile.addRequirement('jcplugin')
sourcesFile.displayName = "$archivesBaseName-$version-sources"
}
}

task("copyRelease") {
dependsOn "build"

doFirst {
println "Gathering builds"
copy {
def libDir = project.projectDir.toPath().resolve("build/libs")
from(libDir) {
include "*.jar"
exclude "*-dev.jar"
}
into "../../build/libs/"
duplicatesStrategy DuplicatesStrategy.INCLUDE
}
}
}
1 change: 1 addition & 0 deletions sources/Fabric-1.21.5/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
javaVersion = 21
Loading