include Java
import java.awt.Color
import java.awt.Font
import java.awt.Dimension
import java.awt.event.KeyListener
import java.awt.event.KeyEvent
import javax.swing.JFrame
import javax.swing.JPanel
class GameScreen < JPanel
include KeyListener
def initialize
super
@location = {
"x" => 50,
"y" => 50
}
self.setFocusable true
self.setBackground Color.black
self.addKeyListener self
end
def paint g
super g
g.setColor Color.red
g.fillRect @location["x"], @location["y"], 50, 50
end
def keyPressed e
end
def keyReleased e
end
def keyTyped e
key = e.getKeyChar
if key == 97
@location["x"] = @location["x"] - 10
elsif key == 100
@location["x"] = @location["x"] + 10
elsif key == 119
@location["y"] = @location["y"] - 10
elsif key == 115
@location["y"] = @location["y"] + 10
end
self.repaint
end
end
class GameWindow < JFrame
def initialize
super "Game Window"
screen = GameScreen.new
self.add screen
self.pack
self.setDefaultCloseOperation JFrame::EXIT_ON_CLOSE
self.setSize 500, 500
self.setVisible true
end
end
GameWindow.new