diff --git a/src/main/resources/assets/opencomputers/lang/de_DE.lang b/src/main/resources/assets/opencomputers/lang/de_DE.lang index b8a4cf697..2488baf88 100644 --- a/src/main/resources/assets/opencomputers/lang/de_DE.lang +++ b/src/main/resources/assets/opencomputers/lang/de_DE.lang @@ -48,6 +48,7 @@ oc:item.HardDiskDrive0.name=Festplatte (Stufe 1) oc:item.HardDiskDrive1.name=Festplatte (Stufe 2) oc:item.HardDiskDrive2.name=Festplatte (Stufe 3) oc:item.InternetCard.name=Internetkarte +oc:item.Interweb.name=Interweb oc:item.IronNugget.name=Eisennugget oc:item.Memory0.name=Speicher (Stufe 1) oc:item.Memory1.name=Speicher (Stufe 2) @@ -139,6 +140,7 @@ oc:tooltip.DiskDrive.CC=ComputerCraft-Disketten werden §aunterstützt§7. oc:tooltip.DiskDrive=Erlaubt es, Disketten zu lesen und zu beschreiben. oc:tooltip.GraphicsCard=Erlaubt es, den angezeigten Inhalt von Bildschirmen zu ändern.[nl] Höchstauflösung: §f%sx%s§7.[nl] Maximale Farbtiefe: §f%s§7.[nl] Operationen/Tick: §f%s§7. oc:tooltip.InternetCard=Diese Karte erlaubt es, HTTP-Anfragen zu senden und echte TCP Sockets zu verwenden. +oc:tooltip.Interweb=Kann in einer Internetkarte verwendet werden, um Computer mit dem rechtsfreien Raum kommunizieren zu lassen. oc:tooltip.IronNugget=Ein Nugget, das aus Eisen besteht, darum wird es ja auch Eisennugget genannt, duh... oc:tooltip.Keyboard=Kann an Bildschirmen befestigt werden, um auf ihnen zu tippen. oc:tooltip.Hologram=Ein Volumendisplay, das beliebige, von Computern festgelegte Voxelstrukturen anzeigt.[nl] Auflösung: §f48x32x48§7. [nl] Farbtiefe: §fMonochrom§7. diff --git a/src/main/resources/assets/opencomputers/lang/en_US.lang b/src/main/resources/assets/opencomputers/lang/en_US.lang index 7940b2e27..2a14b02ca 100644 --- a/src/main/resources/assets/opencomputers/lang/en_US.lang +++ b/src/main/resources/assets/opencomputers/lang/en_US.lang @@ -48,6 +48,7 @@ oc:item.HardDiskDrive0.name=Hard Disk Drive (Tier 1) oc:item.HardDiskDrive1.name=Hard Disk Drive (Tier 2) oc:item.HardDiskDrive2.name=Hard Disk Drive (Tier 3) oc:item.InternetCard.name=Internet Card +oc:item.Interweb.name=Interweb oc:item.IronNugget.name=Iron Nugget oc:item.Memory0.name=Memory (Tier 1) oc:item.Memory1.name=Memory (Tier 2) @@ -139,6 +140,7 @@ oc:tooltip.DiskDrive.CC=ComputerCraft floppies are §asupported§7. oc:tooltip.DiskDrive=Allows reading and writing floppies. oc:tooltip.GraphicsCard=Used to change what's displayed on screens.[nl] Maximum resolution: §f%sx%s§7.[nl] Maximum color depth: §f%s§7.[nl] Operations/tick: §f%s§7. oc:tooltip.InternetCard=This card allows making HTTP requests and using real TCP sockets. +oc:tooltip.Interweb=Congratulations, you win one (1) interweb. You can connect to it using an Internet Card. Beware: don't feed the trolls. oc:tooltip.IronNugget=A nugget made of iron, that's why it's called an Iron Nugget, duh... oc:tooltip.Keyboard=Can be attached to screens to allow typing on them. oc:tooltip.Hologram=A volumetric display that can be controlled by computers to display arbitrary voxel structures.[nl] Resolution: §f48x32x48§7. [nl] Color depth: §fMonochrome§7. diff --git a/src/main/resources/assets/opencomputers/recipes/default.recipes b/src/main/resources/assets/opencomputers/recipes/default.recipes index d0db1c199..9d0a4aa61 100644 --- a/src/main/resources/assets/opencomputers/recipes/default.recipes +++ b/src/main/resources/assets/opencomputers/recipes/default.recipes @@ -87,7 +87,7 @@ graphicsCard3 { ["", "oc:craftingCard", ""]] } internetCard { - input: [[web, "oc:circuitTier2", torchRedstoneActive] + input: [["oc:craftingInterweb", "oc:circuitTier2", torchRedstoneActive] ["", "oc:craftingCard", obsidian]] } redstoneCard { @@ -220,6 +220,12 @@ card { [nuggetIron, nuggetGold, ""]] } +interweb { + input: [[string, string, string] + [string, enderPearl, string] + [string, string, string]] +} + adapter { input: [[ingotIron, "oc:craftingCable", ingotIron] ["oc:craftingCable", "oc:circuitTier1", "oc:craftingCable"] diff --git a/src/main/resources/assets/opencomputers/recipes/hardmode.recipes b/src/main/resources/assets/opencomputers/recipes/hardmode.recipes index bb6fc78dc..eeb8ffe6d 100644 --- a/src/main/resources/assets/opencomputers/recipes/hardmode.recipes +++ b/src/main/resources/assets/opencomputers/recipes/hardmode.recipes @@ -89,7 +89,7 @@ graphicsCard3 { ["", "oc:craftingGPUTier2", ""]] } internetCard { - input: [[web, "oc:circuitTier3", torchRedstoneActive] + input: [["oc:craftingInterweb", "oc:circuitTier3", torchRedstoneActive] ["", "oc:componentCardWLan", obsidian]] } redstoneCard { @@ -227,6 +227,12 @@ card { [nuggetIron, nuggetGold, nuggetGold]] } +interweb { + input: [[string, enderPearl, string] + [enderPearl, string, enderPearl] + [string, enderPearl, string]] +} + adapter { input: [[ingotIron, "oc:craftingCable", ingotIron] ["oc:craftingCable", "oc:circuitTier1", "oc:craftingCable"] diff --git a/src/main/resources/assets/opencomputers/textures/items/interweb.png b/src/main/resources/assets/opencomputers/textures/items/interweb.png new file mode 100644 index 000000000..8b4728f1b Binary files /dev/null and b/src/main/resources/assets/opencomputers/textures/items/interweb.png differ diff --git a/src/main/scala/li/cil/oc/Items.scala b/src/main/scala/li/cil/oc/Items.scala index d55141025..16a2e5a79 100644 --- a/src/main/scala/li/cil/oc/Items.scala +++ b/src/main/scala/li/cil/oc/Items.scala @@ -68,6 +68,8 @@ object Items { var pcb: item.PrintedCircuitBoard = _ var card: item.CardBase = _ + var interweb: item.Interweb = _ + def init() { multi = new item.Delegator(Settings.get.itemId) @@ -139,11 +141,14 @@ object Items { server1 = Recipes.addItemDelegate(new item.Server(multi, 0), "server1") server2 = Recipes.addItemDelegate(new item.Server(multi, 1), "server2") - //v1.2.3 + // v1.2.3 lootDisk = new item.FloppyDisk(multi) { showInItemList = false } + // v1.2.6 + interweb = Recipes.addItemDelegate(new item.Interweb(multi), "interweb") + // Initialize API. api.Items.AbstractBusCard = abstractBus.createItemStack() api.Items.Acid = acid.createItemStack() @@ -198,41 +203,53 @@ object Items { registerExclusive("craftingPiston", new ItemStack(Block.pistonBase), new ItemStack(Block.pistonStickyBase)) registerExclusive("nuggetGold", new ItemStack(Item.goldNugget)) registerExclusive("nuggetIron", ironNugget.createItemStack()) - register("oc:craftingCircuitBoardRaw", rawCircuitBoard.createItemStack()) - register("oc:craftingCircuitBoard", circuitBoard.createItemStack()) - register("oc:craftingCircuitBoardPrinted", pcb.createItemStack()) - register("oc:craftingCard", card.createItemStack()) - register("oc:craftingWire", cuttingWire.createItemStack()) - register("oc:circuitTier1", chip1.createItemStack()) - register("oc:circuitTier2", chip2.createItemStack()) - register("oc:circuitTier3", chip3.createItemStack()) - register("oc:craftingTransistor", transistor.createItemStack()) - register("oc:craftingCU", cu.createItemStack()) - register("oc:craftingALU", alu.createItemStack()) - register("oc:craftingCPUTier1", cpu0.createItemStack()) - register("oc:craftingCPUTier2", cpu1.createItemStack()) - register("oc:craftingCPUTier3", cpu2.createItemStack()) - register("oc:componentCardRedstone", rs.createItemStack()) - register("oc:componentCardLan", lan.createItemStack()) - register("oc:componentCardWLan", wlan.createItemStack()) - register("oc:craftingGPUTier1", gpu1.createItemStack()) - register("oc:craftingGPUTier2", gpu2.createItemStack()) - register("oc:craftingGPUTier3", gpu3.createItemStack()) + register("oc:craftingRAMTier1", ram1.createItemStack()) register("oc:craftingRAMTier2", ram2.createItemStack()) register("oc:craftingRAMTier3", ram3.createItemStack()) register("oc:craftingRAMTier4", ram4.createItemStack()) register("oc:craftingRAMTier5", ram5.createItemStack()) + register("oc:craftingHDDTier1", hdd1.createItemStack()) register("oc:craftingHDDTier2", hdd2.createItemStack()) register("oc:craftingHDDTier3", hdd3.createItemStack()) + + register("oc:craftingGPUTier1", gpu1.createItemStack()) + register("oc:craftingGPUTier2", gpu2.createItemStack()) + register("oc:craftingGPUTier3", gpu3.createItemStack()) + + register("oc:componentCardLan", lan.createItemStack()) + register("oc:componentCardRedstone", rs.createItemStack()) + register("oc:componentCardWLan", wlan.createItemStack()) + + register("oc:craftingGenerator", upgradeGenerator.createItemStack()) + register("oc:craftingSolarGenerator", upgradeSolarGenerator.createItemStack()) + + register("oc:craftingWire", cuttingWire.createItemStack()) + register("oc:craftingAcid", acid.createItemStack()) + register("oc:craftingDisk", disk.createItemStack()) + register("oc:craftingButtonGroup", buttonGroup.createItemStack()) register("oc:craftingArrowKey", arrowKeys.createItemStack()) register("oc:craftingNumPad", numPad.createItemStack()) - register("oc:craftingDisk", disk.createItemStack()) - register("oc:craftingAcid", acid.createItemStack()) - register("oc:craftingGenerator", upgradeGenerator.createItemStack()) - register("oc:craftingSolarGenerator", upgradeSolarGenerator.createItemStack()) + + register("oc:craftingTransistor", transistor.createItemStack()) + register("oc:circuitTier1", chip1.createItemStack()) + register("oc:circuitTier2", chip2.createItemStack()) + register("oc:circuitTier3", chip3.createItemStack()) + register("oc:craftingALU", alu.createItemStack()) + register("oc:craftingCU", cu.createItemStack()) + register("oc:craftingCPUTier1", cpu0.createItemStack()) + register("oc:craftingCPUTier2", cpu1.createItemStack()) + register("oc:craftingCPUTier3", cpu2.createItemStack()) + + register("oc:craftingCircuitBoardRaw", rawCircuitBoard.createItemStack()) + register("oc:craftingCircuitBoard", circuitBoard.createItemStack()) + register("oc:craftingCircuitBoardPrinted", pcb.createItemStack()) + register("oc:craftingCard", card.createItemStack()) + + register("oc:craftingInterweb", interweb.createItemStack()) + if (OreDictionary.getOres("nuggetIron").exists(ironNugget.createItemStack().isItemEqual)) { Recipes.addItemDelegate(ironNugget, "nuggetIron") diff --git a/src/main/scala/li/cil/oc/common/item/Interweb.scala b/src/main/scala/li/cil/oc/common/item/Interweb.scala new file mode 100644 index 000000000..39b95cb58 --- /dev/null +++ b/src/main/scala/li/cil/oc/common/item/Interweb.scala @@ -0,0 +1,23 @@ +package li.cil.oc.common.item + +import java.util +import li.cil.oc.Settings +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 Interweb(val parent: Delegator) extends Delegate { + val unlocalizedName = "Interweb" + + override def tooltipLines(stack: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean) { + tooltip.addAll(Tooltip.get(unlocalizedName)) + super.tooltipLines(stack, player, tooltip, advanced) + } + + override def registerIcons(iconRegister: IconRegister) { + super.registerIcons(iconRegister) + + icon = iconRegister.registerIcon(Settings.resourceDomain + ":interweb") + } +} diff --git a/src/main/scala/li/cil/oc/util/ItemCosts.scala b/src/main/scala/li/cil/oc/util/ItemCosts.scala index d975ba40c..8c263f4c8 100644 --- a/src/main/scala/li/cil/oc/util/ItemCosts.scala +++ b/src/main/scala/li/cil/oc/util/ItemCosts.scala @@ -26,6 +26,7 @@ object ItemCosts { terminate(Block.stone) terminate(Item.blazeRod) terminate(Item.bucketEmpty) + terminate(Item.clay) terminate(Item.coal) terminate(Item.diamond) for (i <- 0 to 15) terminate(Item.dyePowder, i)