diff --git a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/BoldSegment.scala b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/BoldSegment.scala index a87426a2b..6aef27cfc 100644 --- a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/BoldSegment.scala +++ b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/BoldSegment.scala @@ -1,10 +1,10 @@ package li.cil.oc.client.renderer.markdown.segment -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.client.renderer.markdown.MarkupFormat +import net.minecraft.util.text.TextFormatting private[markdown] class BoldSegment(parent: Segment, text: String) extends TextSegment(parent, text) { - override protected def format = ChatFormatting.BOLD.toString + override protected def format = TextFormatting.BOLD.toString override def toString(format: MarkupFormat.Value): String = format match { case MarkupFormat.Markdown => s"**$text**" diff --git a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/HeaderSegment.scala b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/HeaderSegment.scala index 86229f4c7..354aafb1b 100644 --- a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/HeaderSegment.scala +++ b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/HeaderSegment.scala @@ -1,14 +1,14 @@ package li.cil.oc.client.renderer.markdown.segment -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.client.renderer.markdown.MarkupFormat +import net.minecraft.util.text.TextFormatting private[markdown] class HeaderSegment(parent: Segment, text: String, val level: Int) extends TextSegment(parent, text) { private val fontScale = math.max(2, 5 - level) / 2f override protected def scale = Some(fontScale) - override protected def format = ChatFormatting.UNDERLINE.toString + override protected def format = TextFormatting.UNDERLINE.toString override def toString(format: MarkupFormat.Value): String = format match { case MarkupFormat.Markdown => s"${"#" * level} $text" diff --git a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/ItalicSegment.scala b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/ItalicSegment.scala index 7a1aa3dfd..00eb5f3ac 100644 --- a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/ItalicSegment.scala +++ b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/ItalicSegment.scala @@ -1,10 +1,10 @@ package li.cil.oc.client.renderer.markdown.segment -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.client.renderer.markdown.MarkupFormat +import net.minecraft.util.text.TextFormatting private[markdown] class ItalicSegment(parent: Segment, text: String) extends TextSegment(parent, text) { - override protected def format = ChatFormatting.ITALIC.toString + override protected def format = TextFormatting.ITALIC.toString override def toString(format: MarkupFormat.Value): String = format match { case MarkupFormat.Markdown => s"*$text*" diff --git a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/StrikethroughSegment.scala b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/StrikethroughSegment.scala index 13737d45f..03c4800d9 100644 --- a/src/main/scala/li/cil/oc/client/renderer/markdown/segment/StrikethroughSegment.scala +++ b/src/main/scala/li/cil/oc/client/renderer/markdown/segment/StrikethroughSegment.scala @@ -1,10 +1,10 @@ package li.cil.oc.client.renderer.markdown.segment -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.client.renderer.markdown.MarkupFormat +import net.minecraft.util.text.TextFormatting private[markdown] class StrikethroughSegment(parent: Segment, text: String) extends TextSegment(parent, text) { - override protected def format = ChatFormatting.STRIKETHROUGH.toString + override protected def format = TextFormatting.STRIKETHROUGH.toString override def toString(format: MarkupFormat.Value): String = format match { case MarkupFormat.Markdown => s"~~$text~~" diff --git a/src/main/scala/li/cil/oc/client/renderer/tileentity/RobotRenderer.scala b/src/main/scala/li/cil/oc/client/renderer/tileentity/RobotRenderer.scala index 8aefcf5ed..78f9c8375 100644 --- a/src/main/scala/li/cil/oc/client/renderer/tileentity/RobotRenderer.scala +++ b/src/main/scala/li/cil/oc/client/renderer/tileentity/RobotRenderer.scala @@ -1,7 +1,6 @@ package li.cil.oc.client.renderer.tileentity import com.google.common.base.Strings -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.OpenComputers import li.cil.oc.Settings import li.cil.oc.api.driver.item.UpgradeRenderer @@ -26,6 +25,7 @@ import net.minecraft.item.ItemBlock import net.minecraft.item.ItemStack import net.minecraft.util.EnumFacing import net.minecraft.util.math.Vec3d +import net.minecraft.util.text.TextFormatting import net.minecraftforge.client.MinecraftForgeClient import net.minecraftforge.common.MinecraftForge import org.lwjgl.opengl.GL11 @@ -489,7 +489,7 @@ object RobotRenderer extends TileEntitySpecialRenderer[tileentity.RobotProxy] { t.draw() GlStateManager.enableTexture2D() // For the font. - f.drawString((if (EventHandler.isItTime) ChatFormatting.OBFUSCATED.toString else "") + name, -halfWidth, 0, 0xFFFFFFFF) + f.drawString((if (EventHandler.isItTime) TextFormatting.OBFUSCATED.toString else "") + name, -halfWidth, 0, 0xFFFFFFFF) GlStateManager.depthMask(true) GlStateManager.enableLighting() diff --git a/src/main/scala/li/cil/oc/common/Proxy.scala b/src/main/scala/li/cil/oc/common/Proxy.scala index 6e15b2b85..acdd1a012 100644 --- a/src/main/scala/li/cil/oc/common/Proxy.scala +++ b/src/main/scala/li/cil/oc/common/Proxy.scala @@ -82,7 +82,10 @@ class Proxy { if (api.Machine.architectures.size == 0) { api.Machine.add(classOf[LuaJLuaArchitecture]) } - api.Machine.LuaArchitecture = api.Machine.architectures.head + + api.Machine.LuaArchitecture = + if (Settings.get.forceLuaJ) classOf[LuaJLuaArchitecture] + else api.Machine.architectures.head } def init(e: FMLInitializationEvent) { diff --git a/src/main/scala/li/cil/oc/common/block/RedstoneAware.scala b/src/main/scala/li/cil/oc/common/block/RedstoneAware.scala index cf778a7a3..cefe2feec 100644 --- a/src/main/scala/li/cil/oc/common/block/RedstoneAware.scala +++ b/src/main/scala/li/cil/oc/common/block/RedstoneAware.scala @@ -22,7 +22,7 @@ abstract class RedstoneAware extends SimpleBlock { override def getWeakPower(state: IBlockState, world: IBlockAccess, pos: BlockPos, side: EnumFacing) = world.getTileEntity(pos) match { - case redstone: tileentity.traits.RedstoneAware if side != null => math.min(math.max(redstone.output(side.getOpposite), 0), 15) + case redstone: tileentity.traits.RedstoneAware if side != null => redstone.output(side.getOpposite) max 0 case _ => super.getWeakPower(state, world, pos, side) } diff --git a/src/main/scala/li/cil/oc/common/item/Manual.scala b/src/main/scala/li/cil/oc/common/item/Manual.scala index 45477fcb6..a6a591c4a 100644 --- a/src/main/scala/li/cil/oc/common/item/Manual.scala +++ b/src/main/scala/li/cil/oc/common/item/Manual.scala @@ -2,7 +2,6 @@ package li.cil.oc.common.item import java.util -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.OpenComputers import li.cil.oc.api import li.cil.oc.util.BlockPosition @@ -11,6 +10,7 @@ import net.minecraft.item.ItemStack import net.minecraft.util.ActionResult import net.minecraft.util.EnumActionResult import net.minecraft.util.EnumFacing +import net.minecraft.util.text.TextFormatting import net.minecraft.world.World import net.minecraftforge.fml.relauncher.Side import net.minecraftforge.fml.relauncher.SideOnly @@ -18,7 +18,7 @@ import net.minecraftforge.fml.relauncher.SideOnly class Manual(val parent: Delegator) extends traits.Delegate { @SideOnly(Side.CLIENT) override def tooltipLines(stack: ItemStack, player: EntityPlayer, tooltip: util.List[String], advanced: Boolean): Unit = { - tooltip.add(ChatFormatting.DARK_GRAY.toString + "v" + OpenComputers.Version) + tooltip.add(TextFormatting.DARK_GRAY.toString + "v" + OpenComputers.Version) super.tooltipLines(stack, player, tooltip, advanced) } diff --git a/src/main/scala/li/cil/oc/common/nanomachines/NeuralNetwork.scala b/src/main/scala/li/cil/oc/common/nanomachines/NeuralNetwork.scala index b56381b14..a172acd03 100644 --- a/src/main/scala/li/cil/oc/common/nanomachines/NeuralNetwork.scala +++ b/src/main/scala/li/cil/oc/common/nanomachines/NeuralNetwork.scala @@ -1,6 +1,5 @@ package li.cil.oc.common.nanomachines -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.OpenComputers import li.cil.oc.Settings import li.cil.oc.api @@ -13,6 +12,7 @@ import net.minecraft.entity.player.EntityPlayer import net.minecraft.entity.player.EntityPlayerMP import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.text.TextComponentString +import net.minecraft.util.text.TextFormatting import net.minecraftforge.common.util.Constants.NBT import scala.collection.convert.WrapAsScala._ @@ -126,10 +126,10 @@ class NeuralNetwork(controller: ControllerImpl) extends Persistable { def print(player: EntityPlayer): Unit = { val sb = StringBuilder.newBuilder def colored(value: Any, enabled: Boolean) = { - if (enabled) sb.append(ChatFormatting.GREEN) - else sb.append(ChatFormatting.RED) + if (enabled) sb.append(TextFormatting.GREEN) + else sb.append(TextFormatting.RED) sb.append(value) - sb.append(ChatFormatting.RESET) + sb.append(TextFormatting.RESET) } for (behavior <- behaviors) { val name = Option(behavior.behavior.getNameHint).getOrElse(behavior.behavior.getClass.getSimpleName) diff --git a/src/main/scala/li/cil/oc/common/tileentity/Keyboard.scala b/src/main/scala/li/cil/oc/common/tileentity/Keyboard.scala index 93a45c074..1ffbfe301 100644 --- a/src/main/scala/li/cil/oc/common/tileentity/Keyboard.scala +++ b/src/main/scala/li/cil/oc/common/tileentity/Keyboard.scala @@ -22,8 +22,8 @@ class Keyboard extends traits.Environment with traits.Rotatable with traits.Immi override def node = keyboard.node - def hasNodeOnSide(side: EnumFacing) = - side.getOpposite == facing || side == forward || (isOnWall && side.getOpposite == forward) + def hasNodeOnSide(side: EnumFacing) : Boolean = + side != facing && (isOnWall || side.getOpposite != forward) // ----------------------------------------------------------------------- // diff --git a/src/main/scala/li/cil/oc/common/tileentity/Robot.scala b/src/main/scala/li/cil/oc/common/tileentity/Robot.scala index cec5f8298..d8a99a2ec 100644 --- a/src/main/scala/li/cil/oc/common/tileentity/Robot.scala +++ b/src/main/scala/li/cil/oc/common/tileentity/Robot.scala @@ -275,7 +275,7 @@ class Robot extends traits.Computer with traits.PowerInformation with traits.Rot else { getWorld.setBlockToAir(newPosition) } - created + created && BlockPosition(this) == newPosition } finally { blockRobotProxy.moving.set(None) diff --git a/src/main/scala/li/cil/oc/integration/jei/CallbackDocHandler.scala b/src/main/scala/li/cil/oc/integration/jei/CallbackDocHandler.scala index 9b287bffe..39c2f47c9 100644 --- a/src/main/scala/li/cil/oc/integration/jei/CallbackDocHandler.scala +++ b/src/main/scala/li/cil/oc/integration/jei/CallbackDocHandler.scala @@ -4,7 +4,6 @@ import java.util import javax.annotation.Nonnull import com.google.common.base.Strings -import com.mojang.realmsclient.gui.ChatFormatting import li.cil.oc.Settings import li.cil.oc.api import li.cil.oc.server.machine.Callbacks @@ -19,6 +18,7 @@ import mezz.jei.api.recipe.IRecipeHandler import net.minecraft.client.Minecraft import net.minecraft.item.ItemStack import net.minecraft.util.ResourceLocation +import net.minecraft.util.text.TextFormatting import scala.collection.convert.WrapAsJava._ import scala.collection.convert.WrapAsScala._ @@ -66,8 +66,8 @@ object CallbackDocHandler { case VexPattern(head, tail) => (name + head, tail) case _ => (name, doc) } - wrap(signature, 160).map(ChatFormatting.BLACK.toString + _).mkString("\n") + - ChatFormatting.RESET + "\n" + + wrap(signature, 160).map(TextFormatting.BLACK.toString + _).mkString("\n") + + TextFormatting.RESET + "\n" + wrap(documentation, 152).map(" " + _).mkString("\n") } } diff --git a/src/main/scala/li/cil/oc/server/agent/Player.scala b/src/main/scala/li/cil/oc/server/agent/Player.scala index ca66224fb..270f4f351 100644 --- a/src/main/scala/li/cil/oc/server/agent/Player.scala +++ b/src/main/scala/li/cil/oc/server/agent/Player.scala @@ -145,6 +145,7 @@ class Player(val agent: internal.Agent) extends FakePlayer(agent.world.asInstanc { this.inventory = new Inventory(this, agent) + this.inventory.player = this // because the inventory was just overwritten, the container is now detached this.inventoryContainer = new ContainerPlayer(this.inventory, !world.isRemote, this) this.openContainer = this.inventoryContainer @@ -185,6 +186,7 @@ class Player(val agent: internal.Agent) extends FakePlayer(agent.world.asInstanc for (drop <- itemsDropped) { drop.setNoPickupDelay() drop.onCollideWithPlayer(this) + drop.setDead() } }