mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-16 18:55:03 -04:00
Should fix incorrect caching of screen render state if it was rendered before the first init packet. Fixes #694.
This commit is contained in:
parent
1158e0b5b2
commit
7b7423c9f6
@ -373,7 +373,9 @@ object PacketHandler extends CommonPacketHandler {
|
|||||||
|
|
||||||
def onTextBufferInit(p: PacketParser) {
|
def onTextBufferInit(p: PacketParser) {
|
||||||
ComponentTracker.get(p.player.worldObj, p.readUTF()) match {
|
ComponentTracker.get(p.player.worldObj, p.readUTF()) match {
|
||||||
case Some(buffer: li.cil.oc.common.component.TextBuffer) => buffer.data.load(p.readNBT())
|
case Some(buffer: li.cil.oc.common.component.TextBuffer) =>
|
||||||
|
buffer.data.load(p.readNBT())
|
||||||
|
buffer.proxy.markDirty()
|
||||||
case _ => // Invalid packet.
|
case _ => // Invalid packet.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -467,13 +467,10 @@ object TextBuffer {
|
|||||||
|
|
||||||
var dirty = false
|
var dirty = false
|
||||||
|
|
||||||
var lastChange = 0L
|
|
||||||
|
|
||||||
var nodeAddress = ""
|
var nodeAddress = ""
|
||||||
|
|
||||||
def markDirty() {
|
def markDirty() {
|
||||||
dirty = true
|
dirty = true
|
||||||
lastChange = owner.host.world.getTotalWorldTime
|
|
||||||
}
|
}
|
||||||
|
|
||||||
def render() = false
|
def render() = false
|
||||||
@ -517,8 +514,9 @@ object TextBuffer {
|
|||||||
|
|
||||||
class ClientProxy(val owner: TextBuffer) extends Proxy {
|
class ClientProxy(val owner: TextBuffer) extends Proxy {
|
||||||
override def render() = {
|
override def render() = {
|
||||||
|
val wasDirty = dirty
|
||||||
TextBufferRenderCache.render(owner)
|
TextBufferRenderCache.render(owner)
|
||||||
lastChange == owner.host.world.getTotalWorldTime
|
wasDirty
|
||||||
}
|
}
|
||||||
|
|
||||||
override def onScreenColorChange() {
|
override def onScreenColorChange() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user