mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-17 11:15:12 -04:00
Made it so that robots can also send and receive wired network messages.
This commit is contained in:
parent
26c4fa4161
commit
a9e3cd907c
@ -65,6 +65,14 @@ class RobotProxy(val robot: Robot) extends traits.Computer with traits.PowerInfo
|
|||||||
def isRunning(context: Context, args: Arguments): Array[AnyRef] =
|
def isRunning(context: Context, args: Arguments): Array[AnyRef] =
|
||||||
result(computer.isRunning)
|
result(computer.isRunning)
|
||||||
|
|
||||||
|
override def onMessage(message: Message) {
|
||||||
|
super.onMessage(message)
|
||||||
|
if (message.name == "network.message" && message.source != robot.node) message.data match {
|
||||||
|
case Array(packet: Packet) => robot.node.sendToReachable(message.name, packet)
|
||||||
|
case _ =>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------- //
|
// ----------------------------------------------------------------------- //
|
||||||
|
|
||||||
override def updateEntity() {
|
override def updateEntity() {
|
||||||
|
@ -22,7 +22,7 @@ import net.minecraftforge.fluids.FluidRegistry
|
|||||||
import scala.collection.convert.WrapAsScala._
|
import scala.collection.convert.WrapAsScala._
|
||||||
|
|
||||||
class Robot(val robot: tileentity.Robot) extends ManagedComponent {
|
class Robot(val robot: tileentity.Robot) extends ManagedComponent {
|
||||||
val node = api.Network.newNode(this, Visibility.Neighbors).
|
val node = api.Network.newNode(this, Visibility.Network).
|
||||||
withComponent("robot").
|
withComponent("robot").
|
||||||
withConnector(Settings.get.bufferRobot).
|
withConnector(Settings.get.bufferRobot).
|
||||||
create()
|
create()
|
||||||
@ -494,6 +494,14 @@ class Robot(val robot: tileentity.Robot) extends ManagedComponent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override def onMessage(message: Message) {
|
||||||
|
super.onMessage(message)
|
||||||
|
if (message.name == "network.message" && message.source != robot.proxy.node) message.data match {
|
||||||
|
case Array(packet: Packet) => robot.proxy.node.sendToReachable(message.name, packet)
|
||||||
|
case _ =>
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------- //
|
// ----------------------------------------------------------------------- //
|
||||||
|
|
||||||
override def load(nbt: NBTTagCompound) {
|
override def load(nbt: NBTTagCompound) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user