blob: 5a3d9b6a8b13bc46c05de96a7f714ad59145d31d [file] [log] [blame] [raw]
package li.cil.oc.client.gui
import cpw.mods.fml.common.eventhandler.SubscribeEvent
import li.cil.oc.Settings
import li.cil.oc.common.{Slot, Tier}
import net.minecraft.util.IIcon
import net.minecraftforge.client.event.TextureStitchEvent
import scala.collection.mutable
object Icons {
private val bySlotType = mutable.Map.empty[String, IIcon]
private val byTier = mutable.Map.empty[Int, IIcon]
@SubscribeEvent
def onItemIconRegister(e: TextureStitchEvent) {
val iconRegister = e.map
if (iconRegister.getTextureType == 1) {
for (name <- Slot.All) {
bySlotType += name -> iconRegister.registerIcon(Settings.resourceDomain + ":icons/" + name)
}
byTier += Tier.None -> iconRegister.registerIcon(Settings.resourceDomain + ":icons/na")
for (tier <- Tier.One to Tier.Three) {
byTier += tier -> iconRegister.registerIcon(Settings.resourceDomain + ":icons/tier" + tier)
}
}
}
def get(slotType: String) = bySlotType.get(slotType).orNull
def get(tier: Int) = byTier.get(tier).orNull
}