【RPGツクールMV】ランダムエンカウントでの戦闘開始のトランジションとか諸々-\しらかばまん/=\しらかばまん/何かを作るのが大好きな人です。MVスクリプトの知識くるくるを作る素材を作る適当にくるくるさせたい絵を描きます。保存形式はPSDです。このようにくるくるさせたい部分とさせたくない部分をレイヤー分けしてください。この際レイヤーの名前は必ず半角英数字にしてください。DragonBonesに読み込む際に日本語等ですと文字化けします。DragonBonesで云々カンヌンする参考にしにくいですが、操作方法等はこちらをご覧ください(熱い宣伝)。いえ、今回は拡大縮小のみですので軽く紹介を。作成済みのファイルになりますがここがキャンバスです。中心にいるのが先ほどの絵です。PSDファイルを読み込むキャンバスにPSDファイルをドラッグアンドドロップするとこのような選択肢が現れます。armature新しいアーマーチュアを作成します。基本はなしでいいと思います。only既存のプロジェクトに素材を読み込む際に使います。既存のプロジェクトを壊さず新しい素材のみ読み込みます。layers非表示にされているレイヤーも読み込むかどうか。チェックが入った状態で取り除かれます。position読み込んで原点をどこにするかです。真ん中のマスで読み込むと絵が真ん中に置かれます。真ん中下のマスで読み込むと横の中心線の上、縦の中心線の真ん中に読み込まれます。左から、マウス、回転ツール、ボーン作成ツール、ウェイトツールです。左上Armatureはモデルを作成する際に使います。Animationはアニメーションを作成する際に使います。縦の一番左の欄:菱形はボーン、四角にごちゃごちゃしているものは画像です。横の一番上の欄:目のマークは表示、マウスのマークは操作、なんか謎のマークは自由移動と垂直と水平のみ移動の切り替え間にあるものはそれぞれの切り替えを表しています。十字(左上):位置調整ツール欠けてる円(左下):回転ツール右二つ:サイズ調整ツールアーマーチュアの名前をファイル名と同じにするこれをしないと何も表示されません。ボーンを作成するボーン作成ツールを選んだ状態で画像の上でドラッグアンドドロップします。この際ドラッグを始める位置で拡大縮小するので、今回は必ず真ん中で始めて下さい。前に作ったボーンや最後に選択したボーンが親になります。親子関係(用語の意味がわからない時は検索して下さい)のあるボーンは親のボーンの移動や回転、拡大縮小に影響を受けます。直感的にできるので頑張って下さい(丸投げ)どうしてもという方は上記の動画をご覧ください。JSONにして、DataVersionを5.0にすること。しないと後々動きません。テクスチャのサイズは必ず2048*2048以下にして下さい。前準備Game.rpgprojectのあるフォルダにあるjsフォルダの中のlibsフォルダにdragonbonesフォルダを作ります。Demoの中にあるjs/libs/dragonbonesフォルダの中のdragonBones.js、dragonBonesPixi.jsを自分のプロジェクトファイルに入れます。Game.rpgprojectのあるフォルダにdragonbones_assetsフォルダを作り、そこにエクスポートしたファイルを入れます。Assetsに先ほどのエクスポートファイルの名前を入れます。この際、拡張子とアンダーバーのあとは不要です。GradientWipeでの作業プラグインパラメータの画面フェード用画像にグラデーションワイプ画像を登録します。グラデーションワイプ画像は簡単に作れるので自作してみて下さい。素材としてのお勧めはつきみ様が紹介していたサイトです。画面フェードに適応は私はfalseにしています。必要に応じてプラグインコマンドでONにしています。IDにエンカウント時に呼び出すコモンイベントの番号を入れるための変数を入れます。コモンイベントを作ります。テストとして「遭遇しました!」とメッセージが出るイベントを作ります。先ほど設定したコモンイベントのIDの数を変数に入れるイベントを作り、テストプレイを開始します。ランダムエンカウントで「遭遇しました!」というメッセージが出た後にバトルが始まります。IDに入れるコモンイベントを作るコモンイベントのIDを1で設定した変数に入れるという流れです。そのIDで条件分岐します。ここでは変数に文字列を入れました(あまり推奨されないらしいですが私はどんどん入れちゃいます)。文字列は「''」で囲んでスクリプトで代入します。32番に入れた文字列はメッセージの表示に、31番に入れた文字列は後々アニメーションする際に使います。Irina_DragonbonesPictures.jsを使う(必須ではないです)まず画像をなしにした状態で表示したい場所の座標を入れた状態でピクチャの表示コマンドを使います。そのあとプラグインコマンドを使います。詳しくはプラグインのヘルプを見て下さい。するとアニメーションしてくれます。三行目には先ほど文字を代入した変数を利用しています。プラグインコマンドで変数を使うにはプラグインが必要です。NRP_EvalPluginCommandをお勧めします。文章ではカラーとサイズを変えて先ほど文字列を代入した変数を表示しています。変数は使い回しする際に便利ですね。文字列を真ん中揃えにしたかったため、メッセージアライメント制御文字を利用しています。選択肢では「たたかう」「にげる」の二つを提示しています。たたかうではバトルに入る際にプラグインコマンドでグラデーションワイプをONにしています。その後フェードアウトしています。するとグラデーションワイプで戦闘開始時のフェードが変更されるわけです。フェードアウトは実際しなくてもいいのですが、私の環境だとなんか引っかかる感じだったのでコモンイベントでやっています。にげるではHIME_RandomEncounterEventsで追加されたスクリプトでバトルをキャンセルしています。この機能を導入することでランダムエンカウントのデメリットとしてあげられるエンカウントの制御ができない、というところをある程度改善できるのではないかと思っています。DragonBonesを使用した場合ピクチャを消す。15フレーム◆ピクチャの消去:#20普通にフェードアウトしているだけです。コアスクリプトをいじり、通常のエンカウントエフェクトを削除するズームとフラッシュが二回はかなりうざったいですので、rpg_scenes.jsの854行目あたりのScene_Map.prototype.updateEncounterEffectを下記のように変えます。プラグインとして作成するのをお勧めします。プラグインの作り方はダメなゲーム制作者ですのでただjsファイルを作成してそこにコアスクリプトをコピペし、改造しているだけです。{BattleManager.playBattleBgm();this.startFadeOut(this.fadeSpeed());}}};こうすることでフェードアウトだけのシンプルなものになります。コアスクリプトをいじり「〇〇が現れた!」が表示される前にフェードインするこのままでもいいのですが、〇〇が現れた!と表示される際に真っ暗なままなので少しいじります。rpg_manager.jsの2350行目あたりのBattleManager.startBattleを下記のように変えました。{$gameScreen.startFadeIn(30);_MKT_BattleManager_startBattle.call(this);};こうすることで〇〇が現れた!と表示される前にフェードインさせることができます。offだけですお疲れ様でした!これで多分冒頭の動画のようなトランジションが実装できたかと思います。わからない点、抜けてる点等ありましたらお気軽にコメントやマシュマロでメッセージをいただけると嬉しいです。1:42>>プラグインの作り方はダメなゲーム制作者ですのでただjsファイルを作成してそこにコアスクリプトをコピペし、改造しているだけです。これはむしろ王道のやり方ではないかと。Blogger.Tweet\しらかばまん/QooQ。