| buildscript { |
| repositories { |
| maven { |
| url = 'https://files.minecraftforge.net/maven' |
| } |
| jcenter() |
| mavenCentral() |
| } |
| dependencies { |
| classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true |
| } |
| } |
| apply plugin: 'net.minecraftforge.gradle' |
| // Only edit below this line, the above code adds and enables the necessary things for Forge to be setup. |
| apply plugin: 'eclipse' |
| apply plugin: 'maven-publish' |
| |
| version = "1.6" |
| group = "org.rivoreo.minecraft.aggressive-chickens" // http://maven.apache.org/guides/mini/guide-naming-conventions.html |
| archivesBaseName = "aggressive-chickens" |
| |
| sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.7' |
| |
| minecraft { |
| // The mappings can be changed at any time, and must be in the following format. |
| // snapshot_YYYYMMDD Snapshot are built nightly. |
| // stable_# Stables are built at the discretion of the MCP team. |
| // Use non-default mappings at your own risk. they may not always work. |
| // Simply re-run your setup task after changing the mappings to update your workspace. |
| mappings channel: 'snapshot', version: '20190719-1.14.3' |
| // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. |
| |
| // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') |
| |
| // Default run configurations. |
| // These can be tweaked, removed, or duplicated as needed. |
| runs { |
| client { |
| workingDirectory project.file('run') |
| |
| // Recommended logging data for a userdev environment |
| property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' |
| |
| // Recommended logging level for the console |
| property 'forge.logging.console.level', 'debug' |
| |
| mods { |
| examplemod { |
| source sourceSets.main |
| } |
| } |
| } |
| |
| server { |
| workingDirectory project.file('run') |
| |
| // Recommended logging data for a userdev environment |
| property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' |
| |
| // Recommended logging level for the console |
| property 'forge.logging.console.level', 'debug' |
| |
| mods { |
| examplemod { |
| source sourceSets.main |
| } |
| } |
| } |
| |
| data { |
| workingDirectory project.file('run') |
| |
| // Recommended logging data for a userdev environment |
| property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' |
| |
| // Recommended logging level for the console |
| property 'forge.logging.console.level', 'debug' |
| |
| args '--mod', 'examplemod', '--all', '--output', file('src/generated/resources/') |
| |
| mods { |
| examplemod { |
| source sourceSets.main |
| } |
| } |
| } |
| } |
| } |
| |
| dependencies { |
| // Specify the version of Minecraft to use, If this is any group other then 'net.minecraft' it is assumed |
| // that the dep is a ForgeGradle 'patcher' dependency. And it's patches will be applied. |
| // The userdev artifact is a special name and will get all sorts of transformations applied to it. |
| minecraft 'net.minecraftforge:forge:1.14.4-28.2.4' |
| |
| // You may put jars on which you depend on in ./libs or you may define them like so.. |
| // compile "some.group:artifact:version:classifier" |
| // compile "some.group:artifact:version" |
| |
| // Real examples |
| // compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env |
| // compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env |
| |
| // The 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime. |
| // provided 'com.mod-buildcraft:buildcraft:6.0.8:dev' |
| |
| // These dependencies get remapped to your current MCP mappings |
| // deobf 'com.mod-buildcraft:buildcraft:6.0.8:dev' |
| |
| // For more info... |
| // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html |
| // http://www.gradle.org/docs/current/userguide/dependency_management.html |
| |
| } |
| |
| // Example for how to get properties into the manifest for reading by the runtime.. |
| /* |
| jar { |
| manifest { |
| attributes([ |
| "Specification-Title": "examplemod", |
| "Specification-Vendor": "examplemodsareus", |
| "Specification-Version": "1", // We are version 1 of ourselves |
| "Implementation-Title": project.name, |
| "Implementation-Version": "${version}", |
| "Implementation-Vendor" :"examplemodsareus", |
| "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") |
| ]) |
| } |
| } |
| */ |
| |
| jar { |
| inputs.property "version", project.version |
| from file("COPYING") |
| from(sourceSets.main.resources.srcDirs) { |
| include "META-INF/mods.toml" |
| expand "version":project.version |
| } |
| } |
| |
| // Example configuration to allow publishing using the maven-publish task |
| // we define a custom artifact that is sourced from the reobfJar output task |
| // and then declare that to be published |
| // Note you'll need to add a repository here |
| def reobfFile = file("$buildDir/reobfJar/output.jar") |
| def reobfArtifact = artifacts.add('default', reobfFile) { |
| type 'jar' |
| builtBy 'reobfJar' |
| } |
| publishing { |
| publications { |
| mavenJava(MavenPublication) { |
| artifact reobfArtifact |
| } |
| } |
| repositories { |
| maven { |
| url "file:///${project.projectDir}/mcmodsrepo" |
| } |
| } |
| } |