にゃごすwiki

DSLua/ref/sprite

スプライト関数


スプライトを画面上に表示、移動させる関数です。

Sprite.Palette() 
Sprite.Create() 
  Sprite:SetFrame() 
  Sprite:MoveTo() 
  Sprite:Free() 

 Sprite.LoadPalette( screen, palettenumber, palettefile )

スプライトパレットをファイルからロードします。

screen には、パレットをロードする画面番号を指定します。1なら上画面、0なら下画面を指定します。
palettenumberには、パレットを識別するための任意の番号を指定します。スプライトを生成する際にこのパレット番号を指定します。
palettefileには、パレットを読み込む、.palファイルを指定します。(例: "sprite.pal")

 Sprite.Create( SpriteFrames, framenumber, palettenumber, x, y )

スプライトの生成と画面への表示を行います。

SpriteFramesには、.rawファイルから読み込んだフレームストリップオブジェクトを指定します。(フレームストリップ関数を参照)
framenumberには、フレームストリップのフレーム番号を指定します。(先頭フレームは0です。)
palettenumberには、Sprite.LoadPalette()で作成したスプライトパレットの番号を指定します。
x, yには、スプライトの画面上の位置を指定します。(画面の左上からの位置)xは0〜255,yは0〜191を指定します。

戻り値としてスプライトオブジェクトを返します。このオブジェクトはスプライトを操作する以下の関数を使用できます。

 Sprite:SetFrame( SpriteFrames, framenumber )

スプライトに新しいフレームを指定します。

SpriteFramesには、.rawファイルから読み込んだフレームストリップオブジェクトを指定します。(フレームストリップ関数を参照)
framenumberには、変更するフレーム番号を指定します。先頭フレームは0です。

 Sprite:MoveTo( x, y )

スプライトを別の座標に移動します。

x, yには、新しいスプライトの座標を指定します。xは0〜255, yは0〜191を指定します。

 Sprite:Free()

スプライトを画面から消すとともに割り当てたメモリを解放します。スプライト解放する前には、フレームを0にしなければなりません。(DSLua0.5のバグ?)