forked from Braffolk/distant-horizons-vulkanmod
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsettings.gradle
More file actions
66 lines (55 loc) · 2.05 KB
/
settings.gradle
File metadata and controls
66 lines (55 loc) · 2.05 KB
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
pluginManagement {
repositories {
maven { name "Fabric"; url "https://maven.fabricmc.net/" }
maven { name "Architectury"; url "https://maven.architectury.dev/" }
maven { name "Sponge"; url "https://repo.spongepowered.org/repository/maven-public/" }
maven { name "ParchmentMC"; url "https://maven.parchmentmc.org" }
mavenCentral()
gradlePluginPortal()
mavenLocal()
}
}
/** Loads version properties for the selected Minecraft version. */
def loadProperties() {
def defaultMcVersion = "1.21.11"
def mcVersion = ""
def mcVers = fileTree("versionProperties").files.name
for (int i = 0; i < mcVers.size(); i++) {
mcVers[i] = mcVers[i].replaceAll("\\.properties", "")
}
mcVers.sort((a, b) -> sortSemanticVersionOldestToNewest(a, b))
int mcIndex = -1
println "Avalible MC versions: ${mcVers}"
if (hasProperty("mcVer")) {
mcVersion = mcVer
mcIndex = mcVers.indexOf(mcVer)
}
if (mcIndex == -1) {
println "No mcVer set or invalid. Defaulting to ${defaultMcVersion}."
println "Tip: Use -PmcVer=\"${defaultMcVersion}\" to set."
mcVersion = defaultMcVersion
mcIndex = mcVers.indexOf(defaultMcVersion)
assert mcIndex != -1
}
println "Loading properties file at ${mcVersion}.properties"
def props = new Properties()
props.load(new FileInputStream("$rootDir/versionProperties/${mcVersion}.properties"))
props.each { prop ->
gradle.ext.set(prop.key, prop.value)
}
gradle.ext.mcVers = mcVers
gradle.ext.mcIndex = mcIndex
}
private static int sortSemanticVersionOldestToNewest(String v1, String v2) {
String[] p1 = v1.split("\\.")
String[] p2 = v2.split("\\.")
for (int i = 0; i < Math.min(p1.length, p2.length); i++) {
int cmp = Integer.compare(Integer.parseInt(p1[i]), Integer.parseInt(p2[i]))
if (cmp != 0) return cmp
}
return Integer.compare(p1.length, p2.length)
}
loadProperties()
// Subprojects
include("vulkan")
rootProject.name = "DistantHorizons"