ピクチャの表示 / ツクールVXAceスクリプト(RGSS3)wiki
ツクールVXAceでピクチャの表示をスクリプトで行うなら以下の通りです。
sp = screen.pictures[番号]
sp.show(画像名, 原点, x座標, y座標, 拡大率横%, 拡大率縦%, 不透明度, 合成方法)
パラメータ「原点」について
0:左上
1:中心
というように設定されます。
パラメータ「合成方法」について
0:通常
1:加算
2:減算
サンプルコード(Crystalという名前の画像を表示)
$sp3 = screen.pictures[3]
$sp3.show("Crystal", 0, 0, 0, 100, 100, 255, 0)
コード解説
1行目のscreenとはGame_Screenクラスを参照しています。
screen.pictures[番号]で指定した番号のピクチャに関するデータを参照し、そのデータを$spという変数に代入しています。
2行目showではパラメータに代入された値を実際の処理に使う変数に代入しています。
ピクチャ関連は"screen.pictures[番号]"が長いため、イベントスクリプトに載せると長くなり、エラーが出る原因となるので、一度変数に代入する必要があります。
さらにピクチャ関連をスクリプトで行う場合はピクチャの変数を頻繁に使うことになるため、スクリプトに慣れないうちは$がついたグローバル変数と呼ばれるものを使うことをお勧めします。
なぜならイベントスクリプトでは、スクリプト処理をしている行が別になると内容が引き継がれないからです。
例えば以下の例では3行目でsp3が未定義のため起こるエラーが発生します。

しかし、以下のように$を付けてグローバル変数にするとエラーなく、正常に処理されます。

もし、グローバル変数を使用せず、以上のような処理をしようとすると以下のようになります。

このようにイベントスクリプト内でもう一度ピクチャを宣言しなければならず、これでは非効率的です。
グローバル変数に代入しておけば、別コマのイベントスクリプトでもピクチャをわざわざ宣言しなくても使用することが出来るため、効率的です。
ただし、注意としては「グローバル変数」と名前がついているようにゲーム中どこからでも参照出来てしまうため、誤って同じ名前を付けてしまったときに予期せぬ動作やエラーを引き起こす原因となる点です。
このため、名前を付ける際は被らない名前を付けるようにしてください。
ツクールVXAceスクリプトリファレンスwikiトップページへ戻る
オリジナルシステムなどの製作依頼・相談があればプラグイン・マップ等個別製作依頼のページまでお願いします。