aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
blob: c54ce08b78caf761a3309118183713dc1d991c53 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
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"
}

apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: 'org.spongepowered.mixin'

project.version = "1.1.0-dev"
group = "gq.malwarefight.nosession"
archivesBaseName = "nosession"

compileJava.sourceCompatibility = compileJava.targetCompatibility = 1.8
compileJava.options.encoding = "UTF-8"

minecraft {
    version = "1.8.9-11.15.1.2318-1.8.9"
    runDir = "run"
    mappings = "stable_22" //mappings for 1.8.9
    makeObfSourceJar = false //disable creation of sources jar
}

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.11-SNAPSHOT') {
        exclude module: 'launchwrapper'
        exclude module: 'guava'
        exclude module: 'gson'
        exclude module: 'commons-io'
        exclude module: 'log4j-core'
    }

    compileOnly "net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9:universal"
}

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'
}


jar {
    dependsOn configurations.compile
    from {
        configurations.compile.collect {
            it.isDirectory() ? it : zipTree(it)
        }
    }
    exclude 'META-INF/*.RSA', 'META-INF/*.SF', 'META-INF/*.DSA', 'dummyThing'

    manifest {
        attributes "ForceLoadAsMod": true,
                "TweakOrder": 0,
                "ModSide": "CLIENT",
                'FMLCorePluginContainsFMLMod': true,
                'MixinConfigs': 'mixins.nosession.json',
                "FMLCorePlugin": "gq.malwarefight.nosession.NoSessionLoadingPlugin"
    }
}

sourceSets {
    main {
        ext.refMap = "mixins.nosession.refmap.json"
    }
}