標準スプライト機能のマニュアルも用意されている。
www.onionsoft.net
これと、スプライト機能を使用した、サンプルシューティングゲーム「マジカルタマホーキ」のソースが公開されたので、参考にする。
珠音ちゃんサンプルゲーム マジカルタマホーキ
まずは、hsp3dish.as をincludeする。
次に、スプライト機能を使うためのおまじない、es_ini命令を書く。
スプライトの定義には、画像ファイルがそのまま使える。
picload命令でバッファに画像を読み込んでおく。透過色を使いたいので、ここでも画像はPNG形式を使う。
そして、es_size命令で、1つのキャラが何ドット×ドットなのかを定義した後、es_pat命令で、バッファのどの座標から取り込むかパターン番号と、座標を指定する。
こんな感じ。
#include "hsp3dish.as" es_ini ;スプライト初期化 buffer 3 ;バッファを作成 picload "meta.png" ;画像を読み込み es_size 42,23 ;パターンサイズ es_pat 0,0,0 ;パターンを読み込み gsel 0 ;操作バッファを0に戻す
es_patはスプライト定義だけなので、表示するにはスプライトを登録する必要がある。
es_setで、スプライト番号、X,Y座標、es_patで設定したパターン番号を指定する。
そして、dishのおまじないである、redraw 0 ~ redraw 1で1サイクルを囲むのと、awaitを入れるんだけど、スプライトの描画はes_draw命令でまとめて行う。
スプライトを表示するプログラムはこんな感じになる。
#include "hsp3dish.as" es_ini ;スプライト初期化 buffer 3 ;バッファを作成 picload "meta.png" ;画像を読み込み es_size 42,23 ;パターンサイズ es_pat 0,0,0 ;パターンを読み込み gsel 0 ;操作バッファを0に戻す es_set 0,320,200,0 *main redraw 0 es_draw redraw 1 await 1000/60 goto *main