Class: Joyce::ApplicationWindow

Inherits:
Gosu::Window
  • Object
show all
Defined in:
lib/joyce.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(app, width:, height:, fullscreen: true) ⇒ ApplicationWindow

Returns a new instance of ApplicationWindow.



23
24
25
26
27
28
29
# File 'lib/joyce.rb', line 23

def initialize(app, width:, height:, fullscreen: true)
  @app = app
  self.width  = width
  self.height = height

  super(self.width, self.height, fullscreen)
end

Instance Attribute Details

#appObject (readonly)

Returns the value of attribute app.



21
22
23
# File 'lib/joyce.rb', line 21

def app
  @app
end

#heightObject

Returns the value of attribute height.



20
21
22
# File 'lib/joyce.rb', line 20

def height
  @height
end

#widthObject

Returns the value of attribute width.



20
21
22
# File 'lib/joyce.rb', line 20

def width
  @width
end

Instance Method Details

#button_down(id) ⇒ Object



39
40
41
42
43
44
45
46
47
# File 'lib/joyce.rb', line 39

def button_down(id)
  if id == Gosu::MsLeft
    app.click
  elsif id == Gosu::KbEscape
    close
  else
    app.press(id)
  end
end

#drawObject



31
32
33
# File 'lib/joyce.rb', line 31

def draw
  app.view.render
end

#mouse_positionObject



49
50
51
# File 'lib/joyce.rb', line 49

def mouse_position
  [ mouse_x, mouse_y ]
end

#updateObject



35
36
37
# File 'lib/joyce.rb', line 35

def update
  app.tick
end