moar tooltippery

This commit is contained in:
Florian Nücke 2013-11-24 17:12:06 +01:00
parent da7e638e60
commit b203059ffa
5 changed files with 72 additions and 8 deletions

View File

@ -1,23 +1,24 @@
package li.cil.oc.common.item
import cpw.mods.fml.common.network.Player
import java.util
import li.cil.oc.Config
import li.cil.oc.api.network._
import li.cil.oc.server.PacketSender
import li.cil.oc.util.Tooltip
import net.minecraft.client.renderer.texture.IconRegister
import net.minecraft.entity.player.EntityPlayer
import net.minecraft.item.ItemStack
import net.minecraft.nbt.NBTTagCompound
import net.minecraft.world.World
import net.minecraftforge.common.ForgeDirection
import java.util
class Analyzer(val parent: Delegator) extends Delegate {
val unlocalizedName = "Analyzer"
override def addInformation(item: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean) {
tooltip.add("Used to display information about blocks,")
tooltip.add("such as their address and component name.")
tooltip.add("such as their " + Tooltip.format("address", Tooltip.Color.White) + " and " + Tooltip.format("component name", Tooltip.Color.White) + ".")
tooltip.add("Also displays the error that caused a computer")
tooltip.add("to crash if it did not shut down normally.")
}

View File

@ -2,7 +2,7 @@ package li.cil.oc.common.item
import java.util
import li.cil.oc.Config
import li.cil.oc.util.PackedColor
import li.cil.oc.util.{Tooltip, PackedColor}
import net.minecraft.client.renderer.texture.IconRegister
import net.minecraft.entity.player.EntityPlayer
import net.minecraft.item.ItemStack
@ -11,15 +11,15 @@ class GraphicsCard(val parent: Delegator, val tier: Int) extends Delegate {
val unlocalizedName = "GraphicsCard" + Array("Basic", "Advanced", "Professional").apply(tier)
override def addInformation(item: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean) {
tooltip.add("Used change what's displayed on screens.")
tooltip.add("Used to change what's displayed on screens.")
val (w, h) = Config.screenResolutionsByTier(tier)
tooltip.add("Maximum resolution: %dx%d".format(w, h))
tooltip.add("Maximum color depth: %d bit".format(PackedColor.Depth.bits(Config.screenDepthsByTier(tier))))
tooltip.add("Operations/tick: " + (tier match {
tooltip.add("Maximum resolution: " + Tooltip.format("%dx%d".format(w, h), Tooltip.Color.White))
tooltip.add("Maximum color depth: " + Tooltip.format("%d bit".format(PackedColor.Depth.bits(Config.screenDepthsByTier(tier))), Tooltip.Color.White))
tooltip.add("Operations/tick: " + Tooltip.format(tier match {
case 0 => "1/1/4/2/2"
case 1 => "2/4/8/4/4"
case 2 => "4/8/16/8/8"
}))
}, Tooltip.Color.White))
}
override def registerIcons(iconRegister: IconRegister) {

View File

@ -1,11 +1,27 @@
package li.cil.oc.common.item
import cpw.mods.fml.common.Loader
import java.util
import li.cil.oc.Config
import li.cil.oc.util.Tooltip
import net.minecraft.client.renderer.texture.IconRegister
import net.minecraft.entity.player.EntityPlayer
import net.minecraft.item.ItemStack
class RedstoneCard(val parent: Delegator) extends Delegate {
val unlocalizedName = "RedstoneCard"
override def addInformation(item: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean) {
tooltip.add("Allows reading and emitting redstone signals")
tooltip.add("around the computer or robot.")
if (Loader.isModLoaded("RedLogic")) {
tooltip.add("RedLogic is " + Tooltip.format("supported", Tooltip.Color.Green) + ".")
}
if (Loader.isModLoaded("MineFactoryReloaded")) {
tooltip.add("RedNet is " + Tooltip.format("supported", Tooltip.Color.Green) + ".")
}
}
override def registerIcons(iconRegister: IconRegister) {
super.registerIcons(iconRegister)

View File

@ -2,10 +2,20 @@ package li.cil.oc.common.item
import li.cil.oc.Config
import net.minecraft.client.renderer.texture.IconRegister
import net.minecraft.item.ItemStack
import net.minecraft.entity.player.EntityPlayer
import java.util
import li.cil.oc.util.Tooltip
class WirelessNetworkCard(val parent: Delegator) extends Delegate {
val unlocalizedName = "WirelessNetworkCard"
override def addInformation(item: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean) {
tooltip.add("Allows sending wireless network messages in addition")
tooltip.add("to normal ones. Make sure to set the " + Tooltip.format("signal strength", Tooltip.Color.White))
tooltip.add("or no wireless packet will be sent!")
}
override def registerIcons(iconRegister: IconRegister) = {
super.registerIcons(iconRegister)

View File

@ -0,0 +1,37 @@
package li.cil.oc.util
import net.minecraft.util.EnumChatFormatting
object Tooltip {
val Reset = "\u00A7" + EnumChatFormatting.RESET.func_96298_a
object Color {
val Aqua = "\u00A7" + EnumChatFormatting.AQUA.func_96298_a
val Black = "\u00A7" + EnumChatFormatting.BLACK.func_96298_a
val Blue = "\u00A7" + EnumChatFormatting.BLUE.func_96298_a
val DarkAqua = "\u00A7" + EnumChatFormatting.DARK_AQUA.func_96298_a
val DarkBlue = "\u00A7" + EnumChatFormatting.DARK_BLUE.func_96298_a
val DarkGray = "\u00A7" + EnumChatFormatting.DARK_GRAY.func_96298_a
val DarkGreen = "\u00A7" + EnumChatFormatting.DARK_GREEN.func_96298_a
val DarkPurple = "\u00A7" + EnumChatFormatting.DARK_PURPLE.func_96298_a
val DarkRed = "\u00A7" + EnumChatFormatting.DARK_RED.func_96298_a
val Gold = "\u00A7" + EnumChatFormatting.GOLD.func_96298_a
val Gray = "\u00A7" + EnumChatFormatting.GRAY.func_96298_a
val Green = "\u00A7" + EnumChatFormatting.GREEN.func_96298_a
val LightPurple = "\u00A7" + EnumChatFormatting.LIGHT_PURPLE.func_96298_a
val Red = "\u00A7" + EnumChatFormatting.RED.func_96298_a
val White = "\u00A7" + EnumChatFormatting.WHITE.func_96298_a
val Yellow = "\u00A7" + EnumChatFormatting.YELLOW.func_96298_a
}
object Format {
val Obfuscated = "\u00A7" + EnumChatFormatting.OBFUSCATED.func_96298_a
val Bold = "\u00A7" + EnumChatFormatting.BOLD.func_96298_a
val StrikeThrough = "\u00A7" + EnumChatFormatting.STRIKETHROUGH.func_96298_a
val Underline = "\u00A7" + EnumChatFormatting.UNDERLINE.func_96298_a
val Italic = "\u00A7" + EnumChatFormatting.ITALIC.func_96298_a
}
def format(value: String, format: String) = format + value + Reset + Color.Gray
}