Skip to content
Open
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
192 changes: 67 additions & 125 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,158 +1,100 @@
buildscript {
repositories {
maven { url = 'https://files.minecraftforge.net/maven' }
maven { url = 'https://maven.parchmentmc.org' }
plugins {
id 'java-library'
id 'eclipse'
id 'idea'
id 'maven-publish'
id 'net.neoforged.gradle.userdev' version '7.0.97'
}

version = mod_version
group = mod_group_id

repositories {
mavenLocal()

maven {
url = "https://maven.blamejared.com/"
}
dependencies {
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true
classpath 'org.parchmentmc:librarian:1.+'
maven {
url "https://cursemaven.com"
content {
includeGroup "curse.maven"
}
}
}

plugins {
id 'com.matthewprenger.cursegradle' version '1.4.0'
id 'java'
base {
archivesName = mod_id
}

apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'org.parchmentmc.librarian.forgegradle'
apply plugin: 'maven-publish'
java.toolchain.languageVersion = JavaLanguageVersion.of(17)

version = "$minecraft_version-$mod_version"
group = 'com.smashingmods'
archivesBaseName = 'chemlib'
runs {
configureEach {
systemProperty 'forge.logging.markers', 'REGISTRIES'

java.toolchain.languageVersion = JavaLanguageVersion.of(17)
systemProperty 'forge.logging.console.level', 'debug'

minecraft {
mappings channel: 'parchment', version: "$parchment_version-$minecraft_version"
runs {
client {
workingDirectory project.file('run')
property 'forge.logging.markers', 'REGISTRIES'
property 'forge.logging.console.level', 'debug'
jvmArgs '-XX:+AllowEnhancedClassRedefinition'

mods {
chemlib {
source sourceSets.main
}
}
}
modSource project.sourceSets.main
}

server {
workingDirectory project.file('run')
property 'forge.logging.markers', 'REGISTRIES'
property 'forge.logging.console.level', 'debug'
jvmArgs '-XX:+AllowEnhancedClassRedefinition'

mods {
chemlib {
source sourceSets.main
}
}
}
client {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
}

data {
workingDirectory project.file('run')
property 'forge.logging.markers', 'REGISTRIES'
property 'forge.logging.console.level', 'debug'
jvmArgs '-XX:+AllowEnhancedClassRedefinition'
args '--mod', "$archivesBaseName", '--all', '--output', file('src/generated/resources'), '--existing', file('src/main/resources')

mods {
chemlib {
source sourceSets.main
}
}
}
server {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
programArgument '--nogui'
}
gameTestServer {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
}

data {
programArguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath()
}
}

sourceSets.main.resources { srcDir 'src/generated/resources' }

repositories {
maven { url "https://dvs1.progwml6.com/files/maven/" }
maven {
url "https://www.cursemaven.com"
content {
includeGroup "curse.maven"
}
}
}

dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
implementation fg.deobf("mezz.jei:jei-${minecraft_version}-common-api:${jei_version}")
runtimeOnly fg.deobf("mezz.jei:jei-${minecraft_version}-forge:${jei_version}")
}

implementation "net.neoforged:neoforge:${neo_version}"

jar {
manifest {
attributes([
"Specification-Title" : "$archivesBaseName",
"Specification-Vendor" : "SmashingMods",
"Specification-Version" : "1",
"Implementation-Title" : project.name,
"Implementation-Version" : project.version,
"Implementation-Vendor" : "SmashingMods",
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
])
}
compileOnly "mezz.jei:jei-${mc_version}-common-api:${jei_version}"
compileOnly "mezz.jei:jei-${mc_version}-neoforge-api:${jei_version}"
runtimeOnly "mezz.jei:jei-${mc_version}-neoforge:${jei_version}"
}

def secrets = new Properties()
file('secrets.properties').withInputStream {
stream -> secrets.load(stream)
}

fileTree("secrets").matching {
include "**/*.properties"
}.each {
File file ->
file.withInputStream {
stream -> secrets.load(stream)
}
tasks.withType(ProcessResources).configureEach {
var replaceProperties = [
minecraft_version : minecraft_version, minecraft_version_range: minecraft_version_range,
neo_version : neo_version, neo_version_range: neo_version_range,
loader_version_range: loader_version_range,
mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version,
mod_authors : mod_authors, mod_description: mod_description,
]
inputs.properties replaceProperties

filesMatching(['META-INF/mods.toml']) {
expand replaceProperties + [project: project]
}
}

jar.finalizedBy('reobfJar')

publishing {
publications {
mavenJava(MavenPublication) {
afterEvaluate {
artifact project.jar
}
setGroupId 'smashingmods'
setArtifactId 'chemlib'
register('mavenJava', MavenPublication) {
from components.java
}
}
repositories {
maven {
url "https://maven.tamaized.com/releases"
credentials {
username secrets.getProperty("maven_username")
password secrets.getProperty("maven_password")
}
url "file://${project.projectDir}/repo"
}
}
}

curseforge {
apiKey = secrets.getProperty("apiKey")
project {
id = '340666'
releaseType = 'release'
changelogType = 'markdown'
changelog = file("changelog.md")
addGameVersion 'Forge'
addGameVersion 'Java 17'
addGameVersion '1.19.2'
mainArtifact(jar) {
displayName = "ChemLib $project.version"
relations {
optionalDependency 'jei'
}
}
}
}
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
}
7 changes: 4 additions & 3 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# ChemLib 1.19.2-2.0.17
# ChemLib 1.20.4-2.0.19

Changes:
- Update Forge.
- Added addon registry system for mod developers to create and register their own addons for ChemLib. Feel like a chemical or compound is lacking? Add it yourself. This is a new system subject to change and there is no tutorial yet.

- Moved to NeoForge 20.4.221
- Moved to Minecraft 1.20.4
24 changes: 18 additions & 6 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,8 +1,20 @@
org.gradle.jvmargs=-Xmx3G
#org.gradle.jvmargs=
org.gradle.daemon=false
org.gradle.debug=false

mod_version=2.0.17
minecraft_version=1.19.2
forge_version=43.2.0
parchment_version=2022.11.27
jei_version=11.2.0.254
minecraft_version=1.20.4
minecraft_version_range=[1.20.4,1.21)
neo_version=20.4.221
neo_version_range=[20.4,)
loader_version_range=[2,)

mod_id=chemlib
mod_name=ChemLib
mod_license=LGPLv2.1
mod_version=2.0.19
mod_group_id=com.smashingmods.chemlib
mod_authors=DarkArcana
mod_description=ChemLib provides all of the elements of the periodic table and many compounds of those elements. It also includes some items based on the elements and compounds such as ingots and lamps.\nCredits:\n- Andrea Hazard, creator of 'Enhanced Bohr Model' images. Their work is shared under the Creative Commons Attribution-Share Alike 4.0 International license. Read more about the license here: https://creativecommons.org/licenses/by-sa/4.0/deed.en

mc_version=1.20.4
jei_version=17.3.0.49
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-7.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading