mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-16 10:51:55 -04:00
Merge branch 'master-MC1.7.10' into master-MC1.10
This commit is contained in:
commit
16aff3b3a7
@ -72,7 +72,7 @@ if (JavaVersion.current().isJava8Compatible()) {
|
||||
repositories {
|
||||
maven {
|
||||
name = "mightypirates"
|
||||
url = "http://maven.cil.li/"
|
||||
url = "https://maven.cil.li/"
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -26,7 +26,7 @@ shell.setAlias("..", "cd ..")
|
||||
shell.setAlias("df", "df -h")
|
||||
shell.setAlias("grep", "grep --color")
|
||||
shell.setAlias("more", "less --noback")
|
||||
shell.setAlias("reset", "clear; resolution `cat /dev/components/by-type/gpu/0/maxResolution`")
|
||||
shell.setAlias("reset", "resolution `cat /dev/components/by-type/gpu/0/maxResolution`")
|
||||
|
||||
os.setenv("EDITOR", "/bin/edit")
|
||||
os.setenv("HISTSIZE", "10")
|
||||
|
@ -100,7 +100,7 @@ class GraphicsCard(val tier: Int) extends prefab.ManagedEnvironment with DeviceI
|
||||
s.setForegroundColor(0xFFFFFF)
|
||||
s.setBackgroundColor(0x000000)
|
||||
}
|
||||
else context.pause(0.2) // To discourage outputting "in realtime" to multiple screens using one GPU.
|
||||
else context.pause(0) // To discourage outputting "in realtime" to multiple screens using one GPU.
|
||||
result(true)
|
||||
})
|
||||
case _ => result(Unit, "not a screen")
|
||||
|
@ -309,6 +309,21 @@ class Machine(val host: MachineHost) extends prefab.ManagedEnvironment with mach
|
||||
}
|
||||
}
|
||||
|
||||
def convertArg(param: Any): AnyRef = {
|
||||
param match {
|
||||
case arg: java.lang.Boolean => arg
|
||||
case arg: java.lang.Character => Double.box(arg.toDouble)
|
||||
case arg: java.lang.Long => arg
|
||||
case arg: java.lang.Number => Double.box(arg.doubleValue)
|
||||
case arg: java.lang.String => arg
|
||||
case arg: Array[Byte] => arg
|
||||
case arg: NBTTagCompound => arg
|
||||
case arg =>
|
||||
OpenComputers.log.warn("Trying to push signal with an unsupported argument of type " + arg.getClass.getName)
|
||||
null
|
||||
}
|
||||
}
|
||||
|
||||
override def signal(name: String, args: AnyRef*): Boolean = {
|
||||
state.synchronized(state.top match {
|
||||
case Machine.State.Stopped | Machine.State.Stopping => return false
|
||||
@ -320,19 +335,22 @@ class Machine(val host: MachineHost) extends prefab.ManagedEnvironment with mach
|
||||
else {
|
||||
signals.enqueue(new Machine.Signal(name, args.map {
|
||||
case null | Unit | None => null
|
||||
case arg: java.lang.Boolean => arg
|
||||
case arg: java.lang.Character => Double.box(arg.toDouble)
|
||||
case arg: java.lang.Long => arg
|
||||
case arg: java.lang.Number => Double.box(arg.doubleValue)
|
||||
case arg: java.lang.String => arg
|
||||
case arg: Array[Byte] => arg
|
||||
case arg: Map[_, _] if arg.isEmpty || arg.head._1.isInstanceOf[String] && arg.head._2.isInstanceOf[String] => arg
|
||||
case arg: mutable.Map[_, _] if arg.isEmpty || arg.head._1.isInstanceOf[String] && arg.head._2.isInstanceOf[String] => arg.toMap
|
||||
case arg: java.util.Map[_, _] if arg.isEmpty || arg.head._1.isInstanceOf[String] && arg.head._2.isInstanceOf[String] => arg.toMap
|
||||
case arg: NBTTagCompound => arg
|
||||
case arg =>
|
||||
OpenComputers.log.warn("Trying to push signal with an unsupported argument of type " + arg.getClass.getName)
|
||||
null
|
||||
case arg: java.util.Map[_, _] => {
|
||||
val convertedMap = new mutable.HashMap[AnyRef, AnyRef]
|
||||
for ((key, value) <- arg) {
|
||||
val convertedKey = convertArg(key)
|
||||
if (convertedKey != null) {
|
||||
val convertedValue = convertArg(value)
|
||||
if (convertedValue != null) {
|
||||
convertedMap += convertedKey -> convertedValue
|
||||
}
|
||||
}
|
||||
}
|
||||
convertedMap
|
||||
}
|
||||
case arg => convertArg(arg)
|
||||
}.toArray[AnyRef]))
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user