diff options
Diffstat (limited to 'build.gradle')
-rw-r--r-- | build.gradle | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..e6d4434 --- /dev/null +++ b/build.gradle @@ -0,0 +1,102 @@ +buildscript { + repositories { + //new forge repository + maven { url "https://maven.minecraftforge.net" } + maven { url 'https://repo.spongepowered.org/maven'} + mavenCentral() + } + dependencies { + classpath "net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT" + classpath 'org.spongepowered:mixingradle:0.6-SNAPSHOT' + } +} + +plugins { + id "java" + id "com.github.johnrengelman.shadow" version "2.0.4" +} + +apply plugin: 'net.minecraftforge.gradle.tweaker-client' +apply plugin: 'org.spongepowered.mixin' + +version = "1.0.0" +group = "gq.malwarefight.nosession" +archivesBaseName = "nosession" + +compileJava.sourceCompatibility = compileJava.targetCompatibility = 1.8 +compileJava.options.encoding = "UTF-8" + +minecraft { + version = "1.8.9" + runDir = "run" + mappings = "stable_22" //mappings for 1.8.9 + makeObfSourceJar = false //disable creation of sources jar + tweakClass = 'gq.malwarefight.nosession.mixin.InitialTweaker' +} + +configurations { + shade + compile.extendsFrom(shade) +} + +repositories { + maven { url 'https://repo.spongepowered.org/maven/' } + maven { url 'https://maven.minecraftforge.net/' } + mavenCentral() +} + +dependencies { + shade('org.spongepowered:mixin:0.7.10-SNAPSHOT') { + exclude module: 'launchwrapper' + exclude module: 'guava' + exclude module: 'gson' + exclude module: 'commons-io' + exclude module: 'log4j-core' + } +} + +processResources { + //replace stuff in mcmod.info, nothing else + from(sourceSets.main.resources.srcDirs) { + include "mcmod.info" + + //replace version and mcversion + expand "version":project.version, "mcversion":project.minecraft.version + } + + //copy everything else, that"s not the mcmod.info + from(sourceSets.main.resources.srcDirs) { + exclude "mcmod.info" + } + + rename '(.+_at.cfg)', 'META-INF/$1' +} + +shadowJar { + dependencies {} + configurations = [project.configurations.shade] + duplicatesStrategy DuplicatesStrategy.EXCLUDE //prevent duplicates + classifier "" //prevent creation of unshadowed jar +} + +reobf { + //reobfuscate the shadowed jar + shadowJar {} +} + +jar { + manifest { + attributes "ForceLoadAsMod": true, + "TweakOrder": 0, + "ModSide": "CLIENT", + 'FMLCorePluginContainsFMLMod': true, + 'TweakClass': 'gq.malwarefight.nosession.mixin.InitialTweaker', + 'MixinConfigs': 'mixins.nosession.json' + } +} + +sourceSets { + main { + ext.refMap = "mixins.nosession.refmap.json" + } +} |