Speed up pack boot a little more (#25)

This commit is contained in:
boubou19 authored and GitHub committed 2026-08-20 10:03:33 -04:00
1 parent 32445a62b5
commit e4af5e5cac
3 files changed
+34 -16

No files matched your search

@@ -31,7 +31,7 @@ import scala.collection.mutable
class BeeSpecies(cfg: ConfigSection, ident: String) extends IAlleleBeeSpecies {
// IAllele
override val getName = Misc.toLocal("gendustry.bees.species." + ident)
override def getName = Misc.toLocal("gendustry.bees.species." + ident)
override val isDominant = cfg.getBoolean("Dominant")
override val getUID = "gendustry.bee." + ident
@@ -61,7 +61,7 @@ class BeeSpecies(cfg: ConfigSection, ident: String) extends IAlleleBeeSpecies {
)
override val getAuthority = cfg.getString("Authority")
override val getBinomial = cfg.getString("Binominal")
override val getDescription =
override def getDescription =
if (Misc.hasLocal("gendustry.bees.species." + ident + ".description"))
Misc.toLocal("gendustry.bees.species." + ident + ".description")
else ""
@@ -20,20 +20,33 @@ class GeneRecipe extends IRecipe {
getCraftingResult(inv) != null
def getCraftingResult(inv: InventoryCrafting): ItemStack = {
var template: ItemStack = null
var samples = Seq.empty[GeneSampleInfo]
for (i <- 0 until 3; j <- 0 until 3) {
val itm = inv.getStackInRowAndColumn(i, j)
if (itm != null && itm.getItem == GeneSample && itm.hasTagCompound)
samples :+= GeneSample.getInfo(itm)
else if (itm != null && itm.getItem == GeneTemplate && template == null)
template = itm
else if (itm != null)
return null
var samples: Array[GeneSampleInfo] = null
var sampleCount = 0
var i = 0
while (i < 3) {
var j = 0
while (j < 3) {
val itm = inv.getStackInRowAndColumn(i, j)
if (itm != null && itm.getItem == GeneSample && itm.hasTagCompound) {
val sample = GeneSample.getInfo(itm)
if (sample.root == null || sample.allele == null) return null
if (samples == null) samples = new Array[GeneSampleInfo](9)
samples(sampleCount) = sample
sampleCount += 1
} else if (
itm != null && itm.getItem == GeneTemplate && template == null
) template = itm
else if (itm != null) return null
j += 1
}
i += 1
}
if (samples.isEmpty || template == null) return null
if (sampleCount == 0 || template == null) return null
val out = template.copy()
for (s <- samples) {
if (!GeneTemplate.addSample(out, s)) return null
i = 0
while (i < sampleCount) {
if (!GeneTemplate.addSample(out, samples(i))) return null
i += 1
}
return out
}
@@ -24,11 +24,15 @@ import net.minecraft.client.resources.{
}
object ResourceListener extends IResourceManagerReloadListener {
private var registering = false
def init() {
Gendustry.logInfo("Registered reload listener")
Client.minecraft.getResourceManager
val resourceManager = Client.minecraft.getResourceManager
.asInstanceOf[IReloadableResourceManager]
.registerReloadListener(this)
registering = true
try resourceManager.registerReloadListener(this)
finally registering = false
}
def loadLangFile(lang: String, fileName: String) {
@@ -44,6 +48,7 @@ object ResourceListener extends IResourceManagerReloadListener {
}
override def onResourceManagerReload(rm: IResourceManager) {
if (registering) return
val newLang = FMLClientHandler.instance().getCurrentLanguage
Gendustry.logInfo("Resource manager reload, new language: %s", newLang)
val configFiles = Gendustry.configDir.list().sorted