From 99bc57acdf67e6c14da56f62e09ae2fa1e41723d Mon Sep 17 00:00:00 2001 From: minjaesong Date: Thu, 23 Nov 2023 17:03:48 +0900 Subject: [PATCH] fix: ores glow textures are not loading --- .../torvald/terrarum/blockproperties/OreCodex.kt | 4 ++++ .../terrarum/worlddrawer/CreateTileAtlas.kt | 15 ++++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/net/torvald/terrarum/blockproperties/OreCodex.kt b/src/net/torvald/terrarum/blockproperties/OreCodex.kt index 568b94d10..4449c5322 100644 --- a/src/net/torvald/terrarum/blockproperties/OreCodex.kt +++ b/src/net/torvald/terrarum/blockproperties/OreCodex.kt @@ -46,6 +46,10 @@ class OreCodex { } } + fun getOrNull(blockID: ItemID?): OreProp? {// + return oreProps[blockID] + } + private fun setProp(modname: String, key: Int, record: CSVRecord) { val prop = OreProp() prop.id = "ores@$modname:$key" diff --git a/src/net/torvald/terrarum/worlddrawer/CreateTileAtlas.kt b/src/net/torvald/terrarum/worlddrawer/CreateTileAtlas.kt index 7bb0bafa4..88546aaf1 100644 --- a/src/net/torvald/terrarum/worlddrawer/CreateTileAtlas.kt +++ b/src/net/torvald/terrarum/worlddrawer/CreateTileAtlas.kt @@ -178,11 +178,16 @@ class CreateTileAtlas { } } else { - // TODO test - dir.list().filter { tgaFile -> tgaFile.extension() == "tga" && !tgaFile.isDirectory }.sortedBy { it.nameWithoutExtension().toInt() }.forEach { tgaFile: FileHandle -> - val newFile = ModMgr.GameRetextureLoader.altFilePaths.getOrDefault(tgaFile.path(), tgaFile) - tgaList[dirName]!!.add(modname to newFile) - } + // filter files that do not exist on the orecodex + dir.list() + .filter { tgaFile -> tgaFile.extension() == "tga" && !tgaFile.isDirectory && (OreCodex.getOrNull("ores@$modname:${tgaFile.nameWithoutExtension()}") != null) } + .sortedBy { it.nameWithoutExtension().toInt() } + .forEach { tgaFile: FileHandle -> // toInt() to sort by the number, not lexicographically + // tgaFile be like: ./assets/mods/basegame/blocks/32.tga (which is not always .tga) + val newFile = ModMgr.GameRetextureLoader.altFilePaths.getOrDefault(tgaFile.path(), tgaFile) + tgaList[dirName]!!.add(modname to newFile) + // printdbg(this, "modname = $modname, file = $newFile") + } } } }