-
Notifications
You must be signed in to change notification settings - Fork 11
/
build.gradle
115 lines (97 loc) · 3.01 KB
/
build.gradle
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
105
106
107
108
109
110
111
112
113
114
115
buildscript {
repositories {
mavenCentral()
maven { url = "https://repo.spongepowered.org/maven" }
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
classpath 'org.spongepowered:mixingradle:0.6-SNAPSHOT'
classpath 'com.github.jengelman.gradle.plugins:shadow:4.0.4'
}
}
apply plugin: 'java'
apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: 'org.spongepowered.mixin'
apply plugin: 'com.github.johnrengelman.shadow'
group = project.modGroup
version = project.modVersion
minecraft {
version = project.forgeVersion
mappings = project.mcpVersion
runDir = 'run'
coreMod = 'dev.zihasz.client.core.ClientLoader'
makeObfSourceJar = false
}
repositories {
mavenCentral() // Maven Central
maven { url = 'https://repo.spongepowered.org/maven' } // SpongePowered
maven { url = 'https://jitpack.io/' } // JitPack
}
dependencies {
// Mixin
compile('org.spongepowered:mixin:0.8.2') {
exclude module: 'launchwrapper'
exclude module: 'guava'
exclude module: 'gson'
exclude module: 'commons-io'
}
// Reflections
compile('org.reflections:reflections:0.9.12') {
exclude module: 'guava'
}
// Annotations
compile 'org.jetbrains:annotations:21.0.1'
// Discord RPC
compile 'club.minnced:java-discord-rpc:v2.0.2'
}
processResources {
inputs.property 'version', project.version
inputs.property 'mcversion', project.minecraft.version
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version': project.version, 'mcversion': project.minecraft.version
}
from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' }
rename '(.+_at.cfg)', 'META-INF/$1'
}
shadowJar {
dependencies {
// Mixin
include(dependency('org.spongepowered:mixin'))
// Reflections
include(dependency('org.reflections:reflections'))
include(dependency('net.jodah:typetools'))
include(dependency('org.javassist:javassist'))
// Annotations
include(dependency('org.jetbrains:annotations'))
// Discord RPC
include(dependency('club.minnced:java-discord-rpc'))
}
exclude 'dummyThing'
exclude 'LICENSE.txt'
classifier = 'release'
}
mixin {
defaultObfuscationEnv searge
add sourceSets.main, 'mixins.client.refmap.json'
}
reobf {
shadowJar {
mappingType = 'SEARGE'
classpath = sourceSets.main.compileClasspath
}
}
jar {
manifest {
attributes(
'MixinConfigs': 'mixins.client.json',
'tweakClass': 'org.spongepowered.asm.launch.MixinTweaker',
'TweakOrder': 0,
'FMLCorePluginContainsFMLMod': 'true',
'FMLCorePlugin': 'dev.zihasz.client.core.ClientLoader',
'ForceLoadAsMod': 'true',
'FMLAT': 'client_at.cfg'
)
}
}
build.dependsOn(shadowJar)