Class: Miyako::SpriteUnitBase
- Defined in:
- lib/Miyako/API/spriteunit.rb
Overview
SpriteUnitを生成するための構造体クラス
Structクラスからの継承 – SpriteUnit = Struct.new(:bitmap, :ox, :oy, :ow, :oh, :x, :y, :cx, :cy) ++
Instance Method Summary collapse
-
#broad_rect ⇒ Object
現在の画面の最大の大きさを矩形で取得する 但し、SpriteUnitの場合は最大の大きさ=画像の大きさなので、rectと同じ値が得られる 返却値:: 画像の大きさ(Rect構造体のインスタンス).
-
#move(dx, dy) ⇒ Object
位置を変更したときの値を求める(変化量を指定) 位置を右方向へdxピクセル、下方向へdyピクセル移動する そのときの値をPosition構造体のインスタンスとして返す ただし、そのときの値が得られるだけで、自信の値に変更はない dx:: 移動量(x方向)。単位はピクセル dy:: 移動量(y方向)。単位はピクセル 返却値:: 更新した位置を示すPosition構造体のインスタンス.
-
#move!(dx, dy) ⇒ Object
位置を変更する(変化量を指定) 位置を右方向へdxピクセル、下方向へdyピクセル移動する ブロックを渡すと、ブロック評価中の位置を変更する dx:: 移動量(x方向)。単位はピクセル dy:: 移動量(y方向)。単位はピクセル 返却値:: 自分自身を返す.
-
#move_to(x, y) ⇒ Object
位置を変更したときの値を求める(位置指定) 左上を(0.0)として、位置を右xピクセル、下yピクセルの位置移動する そのときの値をPosition構造体のインスタンスとして返す ただし、そのときの値が得られるだけで、自信の値に変更はない x:: 移動先位置(x方向)。単位はピクセル y:: 移動先位置(y方向)。単位はピクセル 返却値:: 更新した位置を示すPosition構造体のインスタンス.
-
#move_to!(x, y) ⇒ Object
位置を変更する(位置指定) 左上を(0.0)として、位置を右xピクセル、下yピクセルの位置移動する ブロックを渡すと、ブロック評価中の位置を変更する x:: 移動先位置(x方向)。単位はピクセル y:: 移動先位置(y方向)。単位はピクセル 返却値:: 自分自身を返す.
-
#rect ⇒ Object
画像の表示矩形を取得する 画像が表示されているときの矩形を取得する。矩形は、で取得する。 返却値:: 生成された矩形.
-
#to_sprite {|sprite| ... } ⇒ Object
スプライトを生成して返す ダックタイピング用のメソッド 所持しているSpriteUnitから、Spriteクラスのインスタンスを生成する 但し、bitmapの設定は:type=>:alpha_channelのみ 引数1個のブロックを渡せば、スプライトに補正をかけることが出来る 返却値:: 生成したスプライト.
-
#to_unit ⇒ Object
自分自身を返す SpriteUnit対応 ダックタイピング用のメソッド 得られるインスタンスは複写していないので、インスタンスの値を調整するには、dupメソッドで複製する必要がある 返却値:: 自分自身.
Instance Method Details
#broad_rect ⇒ Object
現在の画面の最大の大きさを矩形で取得する
但し、SpriteUnitの場合は最大の大きさ=画像の大きさなので、rectと同じ値が得られる
- 返却値
-
画像の大きさ(Rect構造体のインスタンス)
118 119 120 |
# File 'lib/Miyako/API/spriteunit.rb', line 118 def broad_rect return self.rect end |
#move(dx, dy) ⇒ Object
位置を変更したときの値を求める(変化量を指定)
位置を右方向へdxピクセル、下方向へdyピクセル移動する そのときの値をPosition構造体のインスタンスとして返す ただし、そのときの値が得られるだけで、自信の値に変更はない
- dx
-
移動量(x方向)。単位はピクセル
- dy
-
移動量(y方向)。単位はピクセル
- 返却値
-
更新した位置を示すPosition構造体のインスタンス
72 73 74 |
# File 'lib/Miyako/API/spriteunit.rb', line 72 def move(dx, dy) Position.new(self.x+dx, self.y+dy) end |
#move!(dx, dy) ⇒ Object
位置を変更する(変化量を指定)
位置を右方向へdxピクセル、下方向へdyピクセル移動する ブロックを渡すと、ブロック評価中の位置を変更する
- dx
-
移動量(x方向)。単位はピクセル
- dy
-
移動量(y方向)。単位はピクセル
- 返却値
-
自分自身を返す
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/Miyako/API/spriteunit.rb', line 37 def move!(dx, dy) o = [self.x, self.y] self.x+=dx self.y+=dy if block_given? yield self.x, self.y = o end return self end |
#move_to(x, y) ⇒ Object
位置を変更したときの値を求める(位置指定)
左上を(0.0)として、位置を右xピクセル、下yピクセルの位置移動する そのときの値をPosition構造体のインスタンスとして返す ただし、そのときの値が得られるだけで、自信の値に変更はない
- x
-
移動先位置(x方向)。単位はピクセル
- y
-
移動先位置(y方向)。単位はピクセル
- 返却値
-
更新した位置を示すPosition構造体のインスタンス
83 84 85 |
# File 'lib/Miyako/API/spriteunit.rb', line 83 def move_to(x, y) Position.new(x, y) end |
#move_to!(x, y) ⇒ Object
位置を変更する(位置指定)
左上を(0.0)として、位置を右xピクセル、下yピクセルの位置移動する ブロックを渡すと、ブロック評価中の位置を変更する
- x
-
移動先位置(x方向)。単位はピクセル
- y
-
移動先位置(y方向)。単位はピクセル
- 返却値
-
自分自身を返す
54 55 56 57 58 59 60 61 62 63 |
# File 'lib/Miyako/API/spriteunit.rb', line 54 def move_to!(x, y) o = [self.x, self.y] self.x=x self.y=y if block_given? yield self.x, self.y = o end return self end |
#rect ⇒ Object
111 112 113 |
# File 'lib/Miyako/API/spriteunit.rb', line 111 def rect return Rect.new(self.x, self.y, self.ow, self.oh) end |
#to_sprite {|sprite| ... } ⇒ Object
スプライトを生成して返す
ダックタイピング用のメソッド 所持しているSpriteUnitから、Spriteクラスのインスタンスを生成する 但し、bitmapの設定は:type=>:alpha_channelのみ 引数1個のブロックを渡せば、スプライトに補正をかけることが出来る
- 返却値
-
生成したスプライト
102 103 104 105 106 |
# File 'lib/Miyako/API/spriteunit.rb', line 102 def to_sprite sprite = Sprite.new(:unit=>self, :type=>:ac) yield sprite if block_given? return sprite end |
#to_unit ⇒ Object
自分自身を返す
SpriteUnit対応 ダックタイピング用のメソッド 得られるインスタンスは複写していないので、インスタンスの値を調整するには、dupメソッドで複製する必要がある
- 返却値
-
自分自身
92 93 94 |
# File 'lib/Miyako/API/spriteunit.rb', line 92 def to_unit return self end |