build.gradle 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import java.util.stream.Collectors
  2. plugins {
  3. id "com.github.johnrengelman.shadow" version "7.0.0"
  4. }
  5. configurations {
  6. shadowCommon
  7. }
  8. architectury {
  9. platformSetupLoomIde()
  10. forge()
  11. }
  12. loom {
  13. forge {
  14. def fcMixinConfigs = [
  15. "predicates",
  16. "fastmap",
  17. "mrl",
  18. "dedupmultipart",
  19. "blockstatecache",
  20. "dedupbakedquad",
  21. "threaddetec",
  22. ].stream()
  23. .<String> map({ s -> "ferritecore." + s + ".mixin.json" })
  24. .collect(Collectors.toList())
  25. mixinConfigs.addAll(fcMixinConfigs)
  26. }
  27. }
  28. dependencies {
  29. forge("net.minecraftforge:forge:${rootProject.minecraft_version}-${rootProject.forge_version}")
  30. implementation(project(path: ":common", configuration: "dev")) {
  31. transitive = false
  32. }
  33. developmentForge(project(path: ":common", configuration: "dev")) {
  34. transitive = false
  35. }
  36. shadowCommon(project(path: ":common", configuration: "transformProductionForge")) {
  37. transitive = false
  38. }
  39. }
  40. processResources {
  41. inputs.property "version", project.version
  42. filesMatching("META-INF/mods.toml") {
  43. expand "version": project.version
  44. }
  45. }
  46. shadowJar {
  47. exclude "fabric.mod.json"
  48. configurations = [project.configurations.shadowCommon]
  49. classifier "dev-shadow"
  50. }
  51. remapJar {
  52. dependsOn(shadowJar)
  53. input.set(shadowJar.archiveFile)
  54. classifier "forge"
  55. }