diff --git a/.gitignore b/.gitignore index 76b6c11..e000bc0 100644 --- a/.gitignore +++ b/.gitignore @@ -119,3 +119,6 @@ run/ # Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) !gradle-wrapper.jar + +# changelog test +/changelog.html diff --git a/build.gradle b/build.gradle index 22388ad..de84ed5 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { mavenCentral() } dependencies { - classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true - classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT' + classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: "${forgegradle_version}", changing: true + classpath group: 'org.spongepowered', name: 'mixingradle', version: "${mixingradle_version}" } } @@ -16,32 +16,27 @@ plugins { apply plugin: 'net.minecraftforge.gradle' apply plugin: 'org.spongepowered.mixin' +apply plugin: 'maven-publish' +apply plugin: 'idea' group = 'com.teammoeg' -version = '1.16.5-1.1.3' +version = "${minecraft_version}-${mod_version}" +archivesBaseName = 'steampowered' -java { - archivesBaseName = 'steampowered' - toolchain.languageVersion = JavaLanguageVersion.of(8) -} +java.toolchain.languageVersion = JavaLanguageVersion.of(8) minecraft { - mappings channel: 'official', version: '1.16.5' - -// accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') + mappings channel: 'official', version: "${minecraft_version}" + // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { client { + workingDirectory project.file('run') + arg '-mixin.config=steampowered.mixins.json' + property 'forge.logging.console.level', 'info' + property 'fml.earlyprogresswindow', 'false' property 'mixin.env.remapRefMap', 'true' property 'mixin.env.refMapRemappingFile', "${buildDir}/createSrgToMcp/output.srg" - arg "-mixin.config=" + "steampowered.mixins.json" - - workingDirectory project.file('run') - - property 'forge.logging.markers', 'REGISTRIES' - - property 'forge.logging.console.level', 'debug' - mods { steampowered { source sourceSets.main @@ -50,16 +45,11 @@ minecraft { } server { + workingDirectory project.file('run') + arg '-mixin.config=steampowered.mixins.json' + property 'forge.logging.console.level', 'info' property 'mixin.env.remapRefMap', 'true' property 'mixin.env.refMapRemappingFile', "${buildDir}/createSrgToMcp/output.srg" - arg "-mixin.config=" + "steampowered.mixins.json" - - workingDirectory project.file('run') - - property 'forge.logging.markers', 'REGISTRIES' - - property 'forge.logging.console.level', 'debug' - mods { steampowered { source sourceSets.main @@ -68,17 +58,13 @@ minecraft { } data { - property 'mixin.env.remapRefMap', 'true' - property 'mixin.env.refMapRemappingFile', "${buildDir}/createSrgToMcp/output.srg" - workingDirectory project.file('run') - - property 'forge.logging.markers', 'REGISTRIES' - + property 'forge.logging.markers', 'REGISTRIES,REGISTRYDUMP' property 'forge.logging.console.level', 'debug' - + property 'fml.earlyprogresswindow', 'false' + property 'mixin.env.remapRefMap', 'true' + property 'mixin.env.refMapRemappingFile', "${projectDir}/build/createSrgToMcp/output.srg" args '--mod', 'steampowered', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') - mods { steampowered { source sourceSets.main @@ -88,47 +74,50 @@ minecraft { } } -sourceSets.main.resources { srcDir 'src/generated/resources' } +sourceSets.main.resources { + srcDir 'src/generated/resources' +} + +mixin { + add sourceSets.main, "steampowered.refmap.json" +} repositories { - maven { - url "https://www.cursemaven.com" - content { - includeGroup "curse.maven" - } - } + mavenLocal() maven { // location of the maven that hosts JEI files (And TiC) name "Progwml6 maven" url "https://dvs1.progwml6.com/files/maven/" } maven { - //location of the maven for mixed mappings and registrate + //location of the maven for mixed mappings, registrate, and Flywheel name = "tterrag maven" url = "https://maven.tterrag.com/" } - maven { - // location of the maven that hosts JEI files (And TiC) - name "Progwml6 maven" - url "https://dvs1.progwml6.com/files/maven/" - } maven { //location of the maven for vazkii's mods name "blamejared" url "https://maven.blamejared.com/" } + maven { + url "https://www.cursemaven.com" + content { + includeGroup "curse.maven" + } + } } dependencies { - minecraft 'net.minecraftforge:forge:1.16.5-36.2.2' + minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" implementation fg.deobf("curse.maven:create-328085:3499718") implementation fg.deobf("curse.maven:flywheel-486392:3459739") implementation fg.deobf("curse.maven:immersive-engineering-231951:3377691") - compileOnly fg.deobf("mezz.jei:jei-1.16.5:7.6.4.88") + compileOnly fg.deobf("mezz.jei:jei-1.16.5:7.6.4.88:api") runtimeOnly fg.deobf("mezz.jei:jei-1.16.5:7.6.4.88") + // FG5 requires 0.8.3 annotationProcessor "org.spongepowered:mixin:0.8.3:processor" testAnnotationProcessor "org.spongepowered:mixin:0.8.3:processor" } @@ -137,40 +126,104 @@ jar { manifest { attributes([ "Specification-Title" : "steampowered", - "Specification-Vendor" : "YueSha, khjxiaogu, goumo_g", - "Specification-Version" : "1", // We are version 1 of ourselves + "Specification-Vendor" : "TeamMoeg", + "Specification-Version" : "1", "Implementation-Title" : project.name, - "Implementation-Version" : project.jar.archiveVersion, - "Implementation-Vendor" : "YueSha, khjxiaogu, goumo_g", + "Implementation-Version" : "${version}", + "Implementation-Vendor" : "TeamMoeg", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), "MixinConfigs": "steampowered.mixins.json" ]) } } -mixin { - add sourceSets.main, "steampowered.refmap.json" -} + jar.finalizedBy('reobfJar') +task sourcesJar(type: Jar) { + from sourceSets.main.allSource + archiveBaseName.set(project.archivesBaseName) + archiveVersion.set("${project.version}") + archiveClassifier.set('sources') +} + + +artifacts { + archives jar, sourcesJar +} + +//publishing { +//// tasks.publish.dependsOn 'build' +// publications { +// mavenJava(MavenPublication) { +// artifact jar +// artifact sourcesJar +// } +// } +// +// repositories { +// maven { +// name = "TeamMoeg" +// url = "http://server.teammoeg.com:8888/releases" +// credentials { +// username = getPrivateString("mavenUser") +// password = getPrivateString("mavenToken") +// } +// authentication { +// basic(BasicAuthentication) +// } +// } +// } +//} + +String getChangelogText() { + def changelogFile = file('changelog.txt') + String str = '' + int lineCount = 0 + boolean done = false + changelogFile.eachLine { + if (done || it == null) { + return + } + if (it.size() > 1) { + def temp = it + if (lineCount == 0) { + temp = "Create: Steam Powered ${version}" + temp = "Create: Steam Powered v${mod_version}  for Minecraft ${minecraft_version}
" + } else if (it.startsWith('-')) { + temp = "   $temp
" + temp = temp.replaceAll("(\\S+\\/\\S+)#([0-9]+)\\b", "\$0"); + temp = temp.replaceAll("#([0-9]+)\\b(?!<\\/a>)", "\$0"); + } else { + temp = "

$temp

" + } + str += temp + lineCount++ + } else { + str += "

Please submit any Issues you come across on the Issue Tracker.

" + done = true + } + } + return str +} + +// changelog debugging +//new File("changelog.html").write getChangelogText() + curseforge { project { def envApiKey = System.getenv('CURSEFORGE_API_KEY') apiKey = envApiKey == null ? 'nope' : envApiKey - id = '534610' // Steam Powered - changelog = "Add configuration for burning chamber and boilers - Support for Create 0.3.2f" - - changelogType = 'markdown' - - releaseType = 'release' // Default versions are marked release - - addGameVersion "1.16.5" + id = project.projectId + changelog = getChangelogText() + changelogType = 'html' + releaseType = project.curse_type + addGameVersion project.minecraft_version mainArtifact (jar) { relations { requiredDependency 'create' requiredDependency 'flywheel' - optionalDependency 'immersive-engineering' } } } diff --git a/changelog.txt b/changelog.txt new file mode 100644 index 0000000..33e7a27 --- /dev/null +++ b/changelog.txt @@ -0,0 +1,8 @@ +1.1.3: +A new release! +New +- Added Pressurized Gas Container and Pressurized Steam Container +- You can fill it with a bucket of steam with machine and pour it into your steam engine! +Fixes +- Fixes #2 Modded buckets not placeable +- Fixes other mods' steam not work in steam engine \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 29b2ac4..7cfc94e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,21 @@ +# Sets default memory used for gradle commands. Can be overridden by user or command line properties. +# This is required to provide enough memory for the Minecraft decompilation process. org.gradle.jvmargs=-Xmx3G org.gradle.daemon=false + +# mod version info +mod_version = 1.1.3 +minecraft_version = 1.16.5 +forge_version = 36.2.2 + +# build dependency versions +forgegradle_version = 5.1.+ +mixingradle_version = 0.7-SNAPSHOT +cursegradle_version = 1.4.0 + +# curseforge information +projectId = 534610 +curse_type = release + +# github information +github_project = TeamMoegMC/SteamPowered \ No newline at end of file