forked from alexandermburke/JurassiCraft2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
96 lines (85 loc) · 2.4 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
buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
}
dependencies {
classpath "net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT"
}
}
apply plugin: "net.minecraftforge.gradle.forge"
def mod_file = getModFile()
version = getVersion("VERSION", mod_file)
def llibrary_version = getVersion("LLIBRARY_VERSION", mod_file)
group = "${MOD_GROUP}"
archivesBaseName = "${MOD_NAME}"
sourceCompatibility = targetCompatibility = "1.8"
minecraft {
version = "${version_minecraft}-${version_forge}"
runDir = "run"
mappings = "${version_mcp}"
}
repositories {
mavenCentral()
maven {
url = "https://maven.mcmoddev.com"
}
maven {
url = "http://dvs1.progwml6.com/files/maven"
}
}
dependencies {
compile "net.ilexiconn:llibrary:$llibrary_version-1.11.2:dev"
deobfCompile "mezz.jei:jei_1.11.2:4.5.1.296:api"
runtime "mezz.jei:jei_1.11.2:4.5.1.296"
testCompile "junit:junit:4.12"
}
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"
}
}
String getModFile() {
String path = ""
FileTree tree = fileTree(dir: 'src/main/java')
tree.include '**/*.java'
tree.visit { element ->
if (element.file.isFile()) {
element.file.eachLine { String s ->
s = s.trim()
if (s.startsWith("@Mod")) {
path = "src/main/java/$element.relativePath"
}
}
}
}
return path
}
String getVersion(String type, String mod_file) {
String major = "0"
String revision = "0"
String patch = "0"
String prefix = "public static final String $type = \""
File file = file(mod_file)
file.eachLine { String s ->
s = s.trim()
if (s.startsWith(prefix)) {
s = s.substring(prefix.length(), s.length() - 2)
String[] pts = s.split("\\.")
major = pts[0]
revision = pts[1]
patch = pts[2]
}
}
return "$major.$revision.$patch"
}
idea { module { inheritOutputDirs = true } }