fluids separated from blocks

This commit is contained in:
minjaesong
2023-10-09 17:35:26 +09:00
parent dd1e53f761
commit d9218a2dd6
15 changed files with 89 additions and 79 deletions

View File

@@ -0,0 +1,31 @@
package net.torvald.terrarum.blockproperties
import net.torvald.terrarum.gameitems.ItemID
/**
* Created by minjaesong on 2023-10-09.
*/
class FluidCodex {
@Transient val blockProps = HashMap<ItemID, FluidProp>()
@Transient private val nullProp = FluidProp()
operator fun get(fluidID: ItemID?): FluidProp {
if (fluidID == null || fluidID == Fluid.NULL) {
return nullProp
}
try {
return if (fluidID.startsWith("fluid@"))
blockProps[fluidID.substring(6)]!!
else
blockProps[fluidID]!!
}
catch (e: NullPointerException) {
throw NullPointerException("Fluidprop with id $fluidID does not exist.")
}
}
}