Merge branch 'kotlin-1.10' into kotlin-1.12

This commit is contained in:
octarine-noise
2018-10-25 13:46:29 +02:00
5 changed files with 81 additions and 52 deletions

View File

@@ -1,71 +1,62 @@
apply plugin: "net.minecraftforge.gradle.forge" apply plugin: "net.minecraftforge.gradle.forge"
apply plugin: 'kotlin' apply plugin: 'kotlin'
group = 'com.github.octarine-noise' archivesBaseName = jarName
version = "2.1.10"
archivesBaseName = rootProject.name + '-MC1.12'
buildscript { buildscript {
ext.kotlin_version = '1.1.1'
repositories { repositories {
mavenCentral() mavenCentral()
maven { maven {
name = "forge" name = "forge"
url = "http://files.minecraftforge.net/maven" url = "http://files.minecraftforge.net/maven"
} }
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
} }
dependencies { dependencies {
classpath "net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT" classpath "net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
} }
} }
configurations {
shade repositories {
compile.extendsFrom shade mavenCentral()
jcenter()
maven {
name = "shadowfacts"
url = "https://maven.shadowfacts.net/"
}
} }
dependencies { dependencies {
shade "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compileOnly "net.shadowfacts:Forgelin:$forgelin_version"
shade "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
} }
minecraft { minecraft {
version = '1.12-14.21.0.2373' version = mc_version + "-" + forge_version
mappings = 'snapshot_20170626' mappings = mcp_mappings
runDir = 'run' runDir = 'run'
} }
processResources { processResources {
inputs.property "version", project.version from(sourceSets.main.resources) { exclude 'mcmod.info' }
inputs.property "mcversion", project.minecraft.version from(sourceSets.main.resources) { include 'mcmod.info' expand 'version':version, 'mcversion':minecraft.version }
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version':project.version, 'mcversion':project.minecraft.version
}
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
into "${buildDir}/classes/main" into "${buildDir}/classes/main"
} }
def manifestCfg = {
attributes "FMLCorePlugin": "mods.betterfoliage.loader.BetterFoliageLoader"
attributes "FMLCorePluginContainsFMLMod": "mods.betterfoliage.BetterFoliageMod"
attributes "FMLAT": "BetterFoliage_at.cfg"
}
jar { jar {
manifest { manifest manifestCfg
attributes "FMLCorePlugin": "mods.betterfoliage.loader.BetterFoliageLoader"
attributes "FMLCorePluginContainsFMLMod": "mods.betterfoliage.BetterFoliageMod"
attributes "FMLAT": "BetterFoliage_at.cfg"
}
configurations.shade.each { dep ->
from(project.zipTree(dep)){
exclude 'META-INF', 'META-INF/**'
}
}
exclude "optifine" exclude "optifine"
} }
repositories { task sourcesJar(type: Jar, dependsOn: classes) {
mavenCentral() classifier = 'sources'
manifest manifestCfg
from(sourceSets.main.kotlin)
from(sourceSets.main.resources) { exclude 'mcmod.info' }
from(sourceSets.main.resources) { include 'mcmod.info' expand 'version':version, 'mcversion':minecraft.version }
} }

11
gradle.properties Normal file
View File

@@ -0,0 +1,11 @@
group = com.github.octarine-noise
jarName = BetterFoliage-MC1.12
version = 2.2.0
mc_version = 1.12
forge_version = 14.21.0.2373
mcp_mappings = snapshot_20170626
kotlin_version = 1.2.0
forgelin_version = 1.6.0

View File

@@ -0,0 +1,38 @@
package mods.betterfoliage.loader;
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin;
import java.util.Map;
@IFMLLoadingPlugin.TransformerExclusions({
"mods.betterfoliage.loader",
"mods.octarinecore.metaprog",
"kotlin"
})
@IFMLLoadingPlugin.MCVersion("1.12")
@IFMLLoadingPlugin.SortingIndex(1400)
public class BetterFoliageLoader implements IFMLLoadingPlugin {
@Override
public String[] getASMTransformerClass() {
return new String[] { "mods.betterfoliage.loader.BetterFoliageTransformer" };
}
@Override
public String getModContainerClass() {
return null;
}
@Override
public String getSetupClass() {
return null;
}
@Override
public void injectData(Map<String, Object> data) {
}
@Override
public String getAccessTransformerClass() {
return null;
}
}

View File

@@ -1,21 +1,10 @@
package mods.betterfoliage.loader package mods.betterfoliage.loader
import mods.octarinecore.metaprog.ASMPlugin
import mods.octarinecore.metaprog.Transformer import mods.octarinecore.metaprog.Transformer
import mods.octarinecore.metaprog.allAvailable import mods.octarinecore.metaprog.allAvailable
import net.minecraftforge.fml.relauncher.FMLLaunchHandler import net.minecraftforge.fml.relauncher.FMLLaunchHandler
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin
import org.objectweb.asm.Opcodes.* import org.objectweb.asm.Opcodes.*
@IFMLLoadingPlugin.TransformerExclusions(
"mods.betterfoliage.loader",
"mods.octarinecore.metaprog",
"kotlin",
"mods.octarinecore.kotlin"
)
@IFMLLoadingPlugin.SortingIndex(1400)
class BetterFoliageLoader : ASMPlugin(BetterFoliageTransformer::class.java)
class BetterFoliageTransformer : Transformer() { class BetterFoliageTransformer : Transformer() {
val isOptifinePresent = allAvailable(Refs.OptifineClassTransformer) val isOptifinePresent = allAvailable(Refs.OptifineClassTransformer)

View File

@@ -90,7 +90,7 @@ class IconSet(val domain: String, val namePattern: String) : IStitchListener {
var num = 0 var num = 0
override fun onStitch(atlas: TextureMap) { override fun onStitch(atlas: TextureMap) {
num = 0; num = 0
(0..15).forEach { idx -> (0..15).forEach { idx ->
icons[idx] = null icons[idx] = null
val locReal = ResourceLocation(domain, "textures/${namePattern.format(idx)}.png") val locReal = ResourceLocation(domain, "textures/${namePattern.format(idx)}.png")
@@ -103,13 +103,13 @@ class IconSet(val domain: String, val namePattern: String) : IStitchListener {
class ModelSet(val num: Int, val init: Model.(Int)->Unit): IConfigChangeListener { class ModelSet(val num: Int, val init: Model.(Int)->Unit): IConfigChangeListener {
val models = Array(num) { Model().apply{ init(it) } } val models = Array(num) { Model().apply{ init(it) } }
override fun onConfigChange() { (0..num-1).forEach { models[it] = Model().apply{ init(it) } } } override fun onConfigChange() { (0 until num).forEach { models[it] = Model().apply{ init(it) } } }
operator fun get(idx: Int) = models[idx % num] operator fun get(idx: Int) = models[idx % num]
} }
class VectorSet(val num: Int, val init: (Int)->Double3): IConfigChangeListener { class VectorSet(val num: Int, val init: (Int)->Double3): IConfigChangeListener {
val models = Array(num) { init(it) } val models = Array(num) { init(it) }
override fun onConfigChange() { (0..num-1).forEach { models[it] = init(it) } } override fun onConfigChange() { (0 until num).forEach { models[it] = init(it) } }
operator fun get(idx: Int) = models[idx % num] operator fun get(idx: Int) = models[idx % num]
} }