@@ -179,39 +179,30 @@ dependencies {
179179// A missing property will result in an error. Properties are expanded using ${} Groovy notation.
180180// When "copyIdeResources" is enabled, this will also run before the game launches in IDE environments.
181181// See https://docs.gradle.org/current/dsl/org.gradle.language.jvm.tasks.ProcessResources.html
182- tasks. named( ' processResources ' , ProcessResources ). configure {
182+ var generateModMetadata = tasks. register( " generateModMetadata " , ProcessResources ) {
183183 var replaceProperties = [
184- minecraft_version : minecraft_version, minecraft_version_range : minecraft_version_range,
185- forge_version : forge_version, forge_version_range : forge_version_range,
186- loader_version_range : loader_version_range,
187- mod_id : mod_id, mod_name : mod_name, mod_license : mod_license, mod_version : mod_version,
188- mod_authors : mod_authors, mod_description : mod_description,
184+ minecraft_version : minecraft_version,
185+ minecraft_version_range : minecraft_version_range,
186+ neo_version : neo_version,
187+ neo_version_range : neo_version_range,
188+ loader_version_range : loader_version_range,
189+ mod_id : mod_id,
190+ mod_name : mod_name,
191+ mod_license : mod_license,
192+ mod_version : minecraft_version + " _" + mod_version,
193+ mod_authors : mod_authors,
194+ mod_description : mod_description
189195 ]
190196 inputs. properties replaceProperties
191-
192- filesMatching([' META-INF/mods.toml' , ' pack.mcmeta' ]) {
193- expand replaceProperties + [project : project]
194- }
197+ expand replaceProperties
198+ from " src/main/templates"
199+ into " build/generated/sources/modMetadata"
195200}
196201
197202// Example for how to get properties into the manifest for reading at runtime.
198- tasks. named(' jar' , Jar ). configure {
199- manifest {
200- attributes([
201- ' Specification-Title' : mod_id,
202- ' Specification-Vendor' : mod_authors,
203- ' Specification-Version' : ' 1.21.1 1.3' , // We are version 1 of ourselves
204- ' Implementation-Title' : project. name,
205- ' Implementation-Version' : project. jar. archiveVersion,
206- ' Implementation-Vendor' : mod_authors,
207- ' Implementation-Timestamp' : new Date (). format(" yyyy-MM-dd'T'HH:mm:ssZ" ),
208- ' MixinConfig' :' formicapi.mixins.json'
209- ])
210- }
211-
212- // This is the preferred method to reobfuscate your jar file
213- finalizedBy ' reobfJar'
214- }
203+ sourceSets. main. resources. srcDir generateModMetadata
204+ // To avoid having to run "generateModMetadata" manually, make it run on every project reload
205+ neoForge. ideSyncTask generateModMetadata
215206
216207tasks. test {
217208 useJUnitPlatform()
0 commit comments