mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-15 10:21:45 -04:00
Merge pull request #1569 from magik6k/patch-netcards
Fix network card visibility in rack
This commit is contained in:
commit
aa2a46cbfa
@ -18,7 +18,12 @@ import scala.collection.convert.WrapAsScala._
|
|||||||
import scala.collection.mutable
|
import scala.collection.mutable
|
||||||
|
|
||||||
class NetworkCard(val host: EnvironmentHost) extends prefab.ManagedEnvironment with RackBusConnectable {
|
class NetworkCard(val host: EnvironmentHost) extends prefab.ManagedEnvironment with RackBusConnectable {
|
||||||
override val node = Network.newNode(this, Visibility.Network).
|
protected val visibility = host match {
|
||||||
|
case _: Rack => Visibility.Neighbors
|
||||||
|
case _ => Visibility.Network
|
||||||
|
}
|
||||||
|
|
||||||
|
override val node = Network.newNode(this, visibility).
|
||||||
withComponent("modem", Visibility.Neighbors).
|
withComponent("modem", Visibility.Neighbors).
|
||||||
create()
|
create()
|
||||||
|
|
||||||
@ -99,14 +104,14 @@ class NetworkCard(val host: EnvironmentHost) extends prefab.ManagedEnvironment w
|
|||||||
result(oldMessage.orNull, oldFuzzy)
|
result(oldMessage.orNull, oldFuzzy)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected def doSend(packet: Packet) = host match {
|
protected def doSend(packet: Packet) = visibility match {
|
||||||
case _: Rack => node.sendToNeighbors("network.message", packet)
|
case Visibility.Neighbors => node.sendToNeighbors("network.message", packet)
|
||||||
case _ => node.sendToReachable("network.message", packet)
|
case Visibility.Network => node.sendToReachable("network.message", packet)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected def doBroadcast(packet: Packet) = host match {
|
protected def doBroadcast(packet: Packet) = visibility match {
|
||||||
case _: Rack => node.sendToNeighbors("network.message", packet)
|
case Visibility.Neighbors => node.sendToNeighbors("network.message", packet)
|
||||||
case _ => node.sendToReachable("network.message", packet)
|
case Visibility.Network => node.sendToReachable("network.message", packet)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------- //
|
// ----------------------------------------------------------------------- //
|
||||||
|
Loading…
x
Reference in New Issue
Block a user