package ocelot.desktop.node.nodes import ocelot.desktop.OcelotDesktop import ocelot.desktop.color.Color import ocelot.desktop.graphics.Graphics import ocelot.desktop.node.Node import ocelot.desktop.util.TierColor import totoro.ocelot.brain.entity.traits.Environment import totoro.ocelot.brain.entity.{Keyboard, Screen} class ScreenNode(val screen: Screen) extends Node { OcelotDesktop.workspace.add(screen) private val keyboard = new Keyboard OcelotDesktop.workspace.add(keyboard) screen.connect(keyboard) override def environment: Environment = screen override def icon: String = "nodes/Screen" override def iconColor: Color = TierColor.get(screen.tier) override def draw(g: Graphics): Unit = { super.draw(g) if (screen.getPowerState) g.sprite("nodes/ScreenOnOverlay", position.x + 2, position.y + 2, size.width - 4, size.height - 4) } override lazy val window: Option[ScreenWindow] = Some(new ScreenWindow(screen)) }