class AdventureRL::Rectangle

Constants

DEFAULT_SETTINGS

Default settings for Rectangle. settings passed to new take precedence.

Public Class Methods

new(settings = {}) click to toggle source

Initialize with a Settings object settings.

Calls superclass method AdventureRL::Mask::new
# File lib/AdventureRL/Rectangle.rb, line 25
def initialize settings = {}
  @settings = DEFAULT_SETTINGS.merge settings
  super @settings
  @color           = nil
  @color_temporary = nil
  @color_original  = @settings.get :color
  @z_index         = @settings.get :z_index
end

Public Instance Methods

draw() click to toggle source
# File lib/AdventureRL/Rectangle.rb, line 51
def draw
  corner = get_corner :left, :top
  Gosu.draw_rect(
    corner.x, corner.y,
    get_size(:width), get_size(:height),
    get_color,
    @z_index
  )
  @color_temporary = nil
end
get_color() click to toggle source
# File lib/AdventureRL/Rectangle.rb, line 43
def get_color
  return @color_temporary || @color || @color_original
end
reset_color() click to toggle source
# File lib/AdventureRL/Rectangle.rb, line 47
def reset_color
  @color = nil
end
set_color(color) click to toggle source
# File lib/AdventureRL/Rectangle.rb, line 34
def set_color color
  @color = color
end
set_temporary_color(color) click to toggle source

Set the color only for the next frame.

# File lib/AdventureRL/Rectangle.rb, line 39
def set_temporary_color color
  @color_temporary = color
end