読者です 読者をやめる 読者になる 読者になる

ぼんさいゲーム

RPGツクールMVでゲームを作ったりするブログ

(変数)番のピクチャを色調変更・移動する

会話中に立ち絵をシェイクさせたいと思って。
「ピクチャの移動」とかでやってみたけど、ウエイト入れるとセリフが止まるし、ウエイト入れないと上手く動かない。

セリフのキー待ちとは関係なしに、ピクチャをフラッシュさせたい!
と、いろいろ試したら「並列処理」で実装できた。

「マップ上のイベントページで、変数にピクチャ番号を入れる⇒コモンイベントでフラッシュさせる」という形になりました。

マップイベント側

◆ピクチャの表示=#1
◆変数の操作:変数1 動かすピクチャ番号=1
◆スイッチの操作:スイッチ1

コモンイベント側

トリガー:並列処理
スイッチ:スイッチ1
スクリプト:
$gameScreen.tintPicture($gameVariables.value(1),[50,50,50,0],3)
※[赤,緑,青,グレー],フレーム数
スクリプト:
$gameScreen.movePicture($gameVariables.value(1),0,-5,-5,100,100,255,0,3)
※原点,x座標,y座標,x拡大率,y拡大率,不透明度,合成方法,フレーム数

数値を保持して移動だけする

ピクチャの拡大率や不透明度を変えずに、移動だけさせたい場合は下記の方法でできました。(変えたいところだけ数値入れる)

スクリプト:
pic = $gameScreen._pictures[$gameVariables.value(1)];
if(pic){
pic.move(pic._origin, pic._targetX, pic._targetY, pic._targetScaleX,
pic._targetScaleY, pic._targetOpacity, pic._blendMode, 3);
}
※原点,x座標,y座標,x拡大率,y拡大率,不透明度,合成方法,フレーム数

こちらのサイト様を参照させていただきました。
likilia.blog57.fc2.com

ピクチャを全て消去

表示中のピクチャを一度に全て消すときは、スクリプトで以下の一行を書けばOKです。
(100番までのピクチャを消す)

スクリプト:
for(var i = 0; i <= 100; i++){$gameScreen.erasePicture(i)}


ループとかfor文とかホントわからんね・・・!