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
46 changes: 21 additions & 25 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,33 +8,29 @@ on: [pull_request, push]

jobs:
build:
strategy:
matrix:
# Use these Java versions
java: [
8
]
# and run on both Linux and Windows
os: [ubuntu-20.04]
runs-on: ${{ matrix.os }}
name: "Build Mod"
runs-on: "ubuntu-latest"
steps:
- name: checkout repository
uses: actions/checkout@v2
- name: validate gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: setup jdk ${{ matrix.java }}
uses: actions/setup-java@v1
- name: "Checkout Repository"
uses: actions/checkout@v5

- name: "Setup JDK 17"
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: "17"

- name: "Setup Gradle"
uses: gradle/actions/setup-gradle@v5
with:
java-version: ${{ matrix.java }}
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: chmod +x ./gradlew
- name: build
add-job-summary: "on-failure"

- name: "Build"
run: ./gradlew build
- name: capture build artifacts
if: ${{ runner.os == 'Linux' && matrix.java == '8' }} # Only upload artifacts built from LTS java on one OS
uses: actions/upload-artifact@v2

- name: "Capture Build Artifacts"
uses: actions/upload-artifact@v5
with:
name: Artifacts
path: |
build/libs/
path: build/libs/*.jar
if-no-files-found: error
174 changes: 0 additions & 174 deletions build.gradle

This file was deleted.

121 changes: 121 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
plugins {
idea
java
id("gg.essential.loom") version "1.10.+"
id("com.gradleup.shadow") version "9.2.+"
}

val modID: String by project
val modName: String by project
val mavenGroup: String by project
val modVersion: String by project
val mcVersion: String by project
val occlusionCullingVersion: String by project

group = mavenGroup
version = modVersion
base.archivesName.set("EntityCulling-Forge-mc$mcVersion")

java {
toolchain.languageVersion.set(JavaLanguageVersion.of(8))
}

loom {
runConfigs {
getByName("client") {
property("mixin.debug.verbose", "true")
property("mixin.debug.export", "true")
programArgs("--tweakClass", "org.spongepowered.asm.launch.MixinTweaker", "--mixin", "$modID.mixins.json")
}
remove(getByName("server"))
}

forge {
pack200Provider.set(dev.architectury.pack200.java.Pack200Adapter())
//accessTransformer(rootProject.file("src/main/resources/${modID}_at.cfg"))
mixinConfig("$modID.mixins.json")
}

mixin {
defaultRefmapName.set("$modID.mixins.refmap.json")
}

// For some reason loom defaults to tab indentation
decompilers {
named("vineflower") {
options.put("indent-string", " ")
}
}
}

repositories {
mavenCentral()
maven("https://repo.essential.gg/repository/maven-public")
maven("https://repo.spongepowered.org/repository/maven-public/")
maven("https://repo.codemc.io/repository/maven-public/")
}

val shade: Configuration by configurations.creating {
configurations.implementation.get().extendsFrom(this)
}

dependencies {
minecraft("com.mojang:minecraft:1.8.9")
mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9")
forge("net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9")

shade("com.logisticscraft:occlusionculling:$occlusionCullingVersion")
shade("org.spongepowered:mixin:0.7.11-SNAPSHOT") {
isTransitive = false
}
}

sourceSets.main {
output.setResourcesDir(sourceSets.main.flatMap { it.java.classesDirectory })
}

tasks {
compileJava {
options.encoding = "UTF-8"
}

processResources {
inputs.property("modID", modID)
inputs.property("modName", modName)
inputs.property("version", version)
inputs.property("mcVersion", mcVersion)

filesMatching(listOf("mcmod.info", "$modID.mixins.json")) {
expand(inputs.properties) {
escapeBackslash = true
}
}

//rename("(.+_at.cfg)", "META-INF/$1")
}

shadowJar {
archiveClassifier.set("dev")
configurations = listOf(shade)
exclude("META-INF/maven/**")
}

jar {
dependsOn(shadowJar)
duplicatesStrategy = DuplicatesStrategy.FAIL

manifest.attributes(mapOf(
"ModSide" to "CLIENT",
//"FMLAT" to "${modID}_at.cfg",
"FMLCorePluginContainsFMLMod" to true,
"ForceLoadAsMod" to true,
"TweakClass" to "org.spongepowered.asm.launch.MixinTweaker",
"MixinConfigs" to "$modID.mixins.json",
))
}

remapJar {
inputFile.set(shadowJar.get().archiveFile)
archiveClassifier.set("")
}
}
15 changes: 9 additions & 6 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,15 @@
org.gradle.jvmargs=-Xmx2G
org.gradle.parallel=true

# Build
mod_version=1.6.2
maven_group=de.tr7zw
# Loom
loom.platform=forge

# Forge settings
minecraft_version=1.8.9
# Mod info
modID=entityculling
modName=EntityCulling
mavenGroup=de.tr7zw
modVersion=1.6.2
mcVersion=1.8.9

# Dependencies
occlusionculling_version=0.0.8-SNAPSHOT
occlusionCullingVersion=0.0.8-SNAPSHOT
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 3 additions & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading