aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
blob: 5c9b58595ea01618d90b733333a2c45b89eac082 (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
100
101
102
103
104
import dev.architectury.pack200.java.Pack200Adapter

plugins {
    id 'idea'
    id 'java'
    id 'gg.essential.loom' version '0.10.0.+'
    id 'dev.architectury.architectury-pack200' version '0.1.3'
    id 'com.github.johnrengelman.shadow' version '7.1.2'
}

group = "me.djtheredstoner"

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
compileJava.options.encoding = 'UTF-8'

sourceSets {
    main {
        output.resourcesDir = java.outputDir
    }
}

loom {
    launchConfigs {
        client {
            property("fml.coreMods.load", "me.djtheredstoner.perspectivemod.forge.PerspectiveModTweaker")
            arg("--tweakClass", "gg.essential.loader.stage0.EssentialSetupTweaker")
        }
    }
    forge {
        pack200Provider = new Pack200Adapter()
    }
}

configurations {
    embed
    implementation.extendsFrom(embed)
}

repositories {
    mavenCentral()
    maven { url = "https://repo.sk1er.club/repository/maven-public/" }
    maven { url = "https://jitpack.io/" }
    maven { url = "https://repo.spongepowered.org/repository/maven-public/" }
}

dependencies {
    minecraft 'com.mojang:minecraft:1.8.9'
    mappings 'de.oceanlabs.mcp:mcp_stable:22-1.8.9'
    forge 'net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9'


    embed "gg.essential:loader-launchwrapper:1.1.3"

    implementation "gg.essential:essential-1.8.9-forge:4804+g97db1f45b"
}

jar {
    archiveClassifier.set("deobf")
}

shadowJar {
    archiveClassifier.set("shadow")

    duplicatesStrategy = DuplicatesStrategy.EXCLUDE

    configurations = [project.configurations.embed]

    manifest.attributes(
            'FMLCorePluginContainsFMLMod': true,
            "ForceLoadAsMod": true,
            'ModSide': 'CLIENT',
            "FMLCorePlugin": "me.djtheredstoner.perspectivemod.forge.PerspectiveModTweaker",
            "TweakClass": "gg.essential.loader.stage0.EssentialSetupTweaker"
    )
}

remapJar {
    archiveClassifier.set("")
    from shadowJar
    input.set(shadowJar.archiveFile)
}

processResources
        {
            duplicatesStrategy = DuplicatesStrategy.EXCLUDE
            // this will ensure that this task is redone when the versions change.
            inputs.property "version", project.version

            // replace stuff in mcmod.info, nothing else
            from(sourceSets.main.resources.srcDirs) {
                include 'mcmod.info'

                // replace version and mcversion
                expand 'version': project.version
            }

            // copy everything else, thats not the mcmod.info
            from(sourceSets.main.resources.srcDirs) {
                exclude 'mcmod.info'
            }

            from(file("LICENSE"))
        }