Class MyGame::Square
In: mygame/lib/mygame.rb
Parent: DrawPrimitive

四角形プリミティブ

四角形を描画するプリミティブです。 塗りつぶしを行いません。中を塗りつぶす場合はFillSquareを使用してください。

次のサンプルは四角形プリミティブト生成して「白い箱」を画面に描画する例です。

 require 'mygame/boot'
 box = Square.new(20, 20, 100, 100, :color => [255, 255, 255])
 main_loop do
   box.render
 end

Methods

new   render  

Attributes

color  [RW]  フォントの色
fill  [RW]  中を塗りつぶす場合はtrueを設定

Public Class methods

四角形プリミティブを生成します。

[Source]

# File mygame/lib/mygame.rb, line 640
    def initialize(x = 0, y = 0, w = 0, h = 0, *options)
      super(*options)
      @x, @y = x, y
      @w, @h = w, h
      @fill = false
    end

Public Instance methods

四角形プリミティブを描画します。

[Source]

# File mygame/lib/mygame.rb, line 648
    def render
      if hide?
        @disp_x = @disp_y = nil
        return
      end
      x = @x + offset_x
      y = @y + offset_y
      @disp_x, @disp_y = x, y
      return if @alpha <= 0
      if @alpha < 255
        @@screen.send((@fill ? :draw_filled_rect_alpha : :draw_rect_alpha),
                      x, y, w, h, color, @alpha)
      else
        @@screen.send((@fill ? :fill_rect : :draw_rect),
                      x, y, w, h, color)
      end
    end

[Validate]