aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
blob: 6a8004cb880e94b4fd3bb6ec8c9c6f9bdc30e9b5 (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
buildscript {
	repositories {
		maven { url = 'https://maven.minecraftforge.net' }
		maven { url = 'https://repo.spongepowered.org/maven' }
		jcenter()
		mavenCentral()
	}
	dependencies {
		classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true
		classpath group: 'org.spongepowered', name: 'mixingradle', version: '0.7-SNAPSHOT'
	}
}
apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'org.spongepowered.mixin'
apply plugin: 'eclipse'

archivesBaseName = project.name + '-' + project.mcVersion + '-forge'

java.toolchain.languageVersion = JavaLanguageVersion.of(17)

mixin {
	add sourceSets.main, "${project.name.toLowerCase()}.refmap.json"
}

minecraft {
	mappings channel: 'official', version: project.mcVersion
	accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')

	runs {
		client = {
			properties 'forge.logging.markers': ''
			properties 'forge.logging.console.level': 'debug'
			properties 'terminal.ansi': 'true'
			workingDirectory project.file('run').canonicalPath
			source sourceSets.main

			property 'mixin.debug', 'true'
			property 'mixin.checks.interfaces', 'true'
			property 'mixin.config', "${project.name}.mixins.json".toLowerCase()
		}
	}
}

repositories {
	maven {
		name "CurseMaven"
		url "https://www.cursemaven.com"
	}
}

dependencies {
	minecraft "net.minecraftforge:forge:${project.mcVersion}-${project.forgeVersion}"
	annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
	compileClasspath fg.deobf('curse.maven:configmenusforge-544048:3570070')
	compileClasspath fg.deobf(files('lib/configured-2.0.0-1.19.2.jar'))
}

jar {
	manifest {
		attributes(["Specification-Title":		project.name,
					"Specification-Vendor":		project.author,
					"Specification-Version":	project.version,
					"Implementation-Title":		project.name,
					"Implementation-Version":	project.version,
					"Implementation-Vendor" :	project.author,
					"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
					"MixinConfigs":				"${project.name.toLowerCase()}.mixins.json"],)
	}
}