Guest User

Untitled

a guest
Aug 8th, 2024
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.43 KB | None | 0 0
  1. plugins {
  2. id 'eclipse'
  3. id 'idea'
  4. id 'maven-publish'
  5. id 'net.minecraftforge.gradle' version '[6.0,6.2)'
  6. }
  7.  
  8. version = mod_version
  9. group = mod_group_id
  10.  
  11. base {
  12. archivesName = mod_id
  13. }
  14.  
  15. java.toolchain.languageVersion = JavaLanguageVersion.of(8)
  16.  
  17. println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}"
  18.  
  19. jarJar.enable()
  20.  
  21. minecraft {
  22. mappings channel: mapping_channel, version: mapping_version
  23. copyIdeResources = true
  24.  
  25. runs {
  26. configureEach {
  27. workingDirectory project.file('run')
  28. property 'forge.logging.markers', 'REGISTRIES'
  29. property 'forge.logging.console.level', 'debug'
  30.  
  31. mods {
  32. "${mod_id}" {
  33. source sourceSets.main
  34. }
  35. }
  36. }
  37.  
  38. client {
  39. }
  40.  
  41. server {
  42. args '--nogui'
  43. }
  44.  
  45. data {
  46. workingDirectory project.file('run-data')
  47. args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
  48. }
  49. }
  50. }
  51.  
  52. sourceSets.main.resources { srcDir 'src/generated/resources' }
  53.  
  54. repositories {
  55. mavenCentral()
  56. }
  57.  
  58. dependencies {
  59. minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
  60.  
  61. minecraftLibrary("net.dv8tion:JDA:5.0.2")
  62. minecraftLibrary("club.minnced:discord-webhooks:0.8.4")
  63.  
  64. jarJar(group: 'net.dv8tion', name: 'JDA', version: '[5.0.2,5.1.0)') {
  65. jarJar.pin(it, '5.0.2')
  66. }
  67. jarJar(group: 'club.minnced', name: 'discord-webhooks', version: '[0.8.4,0.9.0)') {
  68. jarJar.pin(it, '0.8.4')
  69. }
  70. }
  71.  
  72.  
  73. tasks.named('processResources', ProcessResources).configure {
  74. var replaceProperties = [
  75. minecraft_version: minecraft_version, minecraft_version_range: minecraft_version_range,
  76. forge_version: forge_version, forge_version_range: forge_version_range,
  77. loader_version_range: loader_version_range,
  78. mod_id: mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version,
  79. mod_authors: mod_authors, mod_description: mod_description,
  80. ]
  81. inputs.properties replaceProperties
  82.  
  83. filesMatching(['META-INF/mods.toml', 'pack.mcmeta']) {
  84. expand replaceProperties + [project: project]
  85. }
  86. }
  87.  
  88. tasks.named('jar', Jar).configure {
  89. manifest {
  90. attributes([
  91. 'Specification-Title' : mod_id,
  92. 'Specification-Vendor' : mod_authors,
  93. 'Specification-Version' : '1', // Мы версия 1 себя
  94. 'Implementation-Title' : project.name,
  95. 'Implementation-Version' : project.jar.archiveVersion,
  96. 'Implementation-Vendor' : mod_authors,
  97. 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
  98. ])
  99. }
  100.  
  101. finalizedBy 'reobfJar'
  102. }
  103.  
  104. // Публикация Jar-in-Jar на Maven
  105. publishing {
  106. publications {
  107. register('mavenJava', MavenPublication) {
  108. artifact jar
  109. jarJar.component(it)
  110. }
  111. }
  112. repositories {
  113. maven {
  114. url "file://${project.projectDir}/mcmodsrepo"
  115. }
  116. }
  117. }
  118.  
  119. tasks.withType(JavaCompile).configureEach {
  120. options.encoding = 'UTF-8'
  121. }
  122.  
Advertisement
Add Comment
Please, Sign In to add comment