【ウディタ】立ち絵表示コモンを自作する②

↓前回

お久しぶり。レビニアよ。 今回の解説は立ち絵を表示させるコモンの自作。 こういうものね。 まぁ別に立ち絵じゃなくてもモンスター画像でもなんでも表示はできるのだけど、主...

それじゃ続きやっていくわ。前回は立ち絵の用意とユーザーDBへの登録、コモンイベントの準備までしたのだったわね。今回はコモンにイベントコマンドを入力していくわ。

立ち絵コモン作成:イベントコマンドの入力

で、最初に入力する処理は何かというと、


立ち絵を消去する際の処理を作ってしまいましょう。無駄に実行させる処理を減らすためよ。
→■条件分岐(変数): 【1】 CSelf0[表示/消去] が 1 と同じ
 -◇分岐: 【1】 [ CSelf0[表示/消去] が 1 と同じ ]の場合↓
 |■ピクチャ消去:CSelf1[ピクチャNo.] / 0(0)フレーム
 |■イベント処理中断
 ◇分岐終了◇


分岐に入力したピクチャコマンドはこちら。入力設定で使用したセルフ変数を変数呼び出し値で指定して消去を実行しているだけね。

立ち絵を消去させる処理はこれでOK。


ここからは立ち絵を表示させるための処理なのだけど、まずは入力設定で使ったセルフ文字列3つをセルフ変数へ代入するわ。
→■変数操作: CSelf10[倍率%] = CSelf5[倍率%] + 0
→■変数操作: CSelf11[位置X] = CSelf6[位置X] + 0
→■変数操作: CSelf12[位置Y] = CSelf7[位置Y] + 0


前述の通り、セルフ文字列5~7番は入力用変数が足りないから代わりに使ったものよ。そのままでは変数として使えないから、こうやってセルフ変数に写してあげることで数値に変換してあげるわけ。


次にユーザーDBで指定した立ち絵の画像ファイル名をセルフ文字列9番に代入
→■DB読込(ユーザ): CSelf9[ファイル名] = ユーザDB[ 立ち絵 : CSelf2[画像] : 画像ファイル ] (20 : – : 0)


あとは画像を表示させるだけなのだけど、先に立ち絵の向きを変えるための条件分岐を作成
→■条件分岐(変数): 【1】 CSelf3[向き] が 0 と同じ 【2】 CSelf3[向き] が 1 と同じ
 -◇分岐: 【1】 [ CSelf3[向き] が 0 と同じ ]の場合↓
 |■
 -◇分岐: 【2】 [ CSelf3[向き] が 1 と同じ ]の場合↓
 |■
 ◇分岐終了◇


分岐1には通常(左右反転させない)の場合のピクチャ表示を入力するわ。
→ |■ピクチャ表示:CSelf1[ピクチャNo.] [中心]ファイル(CSelf9[ファイル名]) X:CSelf11[位置X] Y:CSelf12[位置Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 CSelf10[倍率%]% / カラー R[100] G[100] B[100]


ピクチャ表示コマンドの設定はこちら。セルフ変数とセルフ文字列に登録した内容を各項目に指定するのよ。


分岐2には左右反転させる場合のピクチャ表示を入力するのよ。
→ |■変数操作: CSelf13[横拡大率] = CSelf10[倍率%] * -1
→ |■ピクチャ表示:CSelf1[ピクチャNo.] [中心]ファイル(CSelf9[ファイル名]) X:CSelf11[位置X]  Y:CSelf12[位置Y] / 0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 CSelf13[横拡大率]xCSelf10[倍率%]% / カラー R[100] G[100] B[100]

変数操作で画像倍率に-1を掛け算しているのはなぜかというか、これはピクチャコマンドで画像を左右反転させるための準備よ。


拡大率の項目にある「別々」にチェックを入れると縦と横の倍率を個別に設定できるようになるわ。これで横倍率だけマイナス変換した値を入力してあげると画像を左右反転させることができるの。知ってた?

これでコモンイベントの作成は完了! お疲れ様でした。

立ち絵コモンを試してみる


それじゃ実際に立ち絵コモンを使ってみましょう。マップイベントから呼び出してみるわね。


まずは右側に表示させてみるわね。元画像は結構大きいから倍率は50%でいいわ。


こんな感じで立ち絵が表示されたら成功よ。


立ち絵を消去するにはコモンを消去モードで呼び出すの。当然ピクチャ番号以外の入力項目は影響しないから適当でいいわ。

※ちなみに続けて別の立ち絵に差し替えたいだけなら、いちいち消去しなくても同じピクチャ番号でまた表示モードでコモンを実行させる(上書き)だけでOKよ。


今度は左右反転させて左側に表示してみましょう。


このように画像が左右反転していれば成功よ。

この機能のおかげで左右反転させた画像をあらかじめ用意する必要がなくなるわ。便利ー!


表示倍率も変更してみましょう。50%から75%と25%にしてみると、


ウルファールさんを大きくしたり小さくしたりできるわ。左右反転と同様、これにより事前に画像の大きさを加工修正しなくて済むようになるわ。


最後に複数枚の立ち絵を同時に表示させてみましょう。ピクチャ番号を変えて同時にコモンを呼び出すと、


こんな感じ。これで複数人の会話イベントも作れるわね。

立ち絵コモンの作成解説は以上よ。うまくできたかしら?

20行程度の簡単なコモンだったけど割と高機能で便利だったでしょ? よければ活用して頂戴ね。

※追記
更に高機能な立ち絵コモンの解説はこちら↓

レビニアよ。今回のお題は「差分パーツの表示に対応した立ち絵コモンの作成」。 以前に投稿した立ち絵コモンのコメントに「表情や服装などの部分的な差分パーツの切り替え表示に対応したもの...

コメント

  1. こうゆう使いやすいコモン探してました!ありがとうございます!
    質問なのですが
    立ち絵を表示しようとしたときに個人で作った立ち絵もダウンロードしてきたウルファールの立ち絵も画面一面立ち絵に近い色一色になってしまいます。
    どうしたら正常に表示されるでしょうか、、、

  2. レビニア より:

    シダムラサキオオバッタ さん

    >画面一面立ち絵に近い色一色に
    なんとなく拡大率の指定がうまくできていないのかなーと思いますが、
    とりあえず私が作ったコモンを読み込んで試してみてください。

    https://silka-blog.com/wp-content/uploads/standing-picture.zip

    ちなみにピクチャ関連で不具合が起きる場合は
    テストプレイ中にF7を押してみるといいですよ。

  3. こめ太郎 より:

    初コメント失礼いたします。
    ゲーム制作で困ったときにいつも頼りにさせてもらっています。
    立ち絵表示のコモンの解説、ありがとうございます。右も左もわからない初心者ですが、おかげさまで少しずつゲーム制作を進められています。

    質問があります。
    今回の立ち絵コモンを応用すれば、キャラクターの差分表示もできるようになると思うのですが、可能でしょうか?
    私、ウディタで大人向けのRPGゲームをちまちまと作っているのですが、どうにかしてキャラクターの差分表示をできればと思っています。有り難いことにウディタ公式にも差分対応コモンが載っているのですが、自分なりに理解して使いたいため、いまいちしっくりきません。
    レビニア様に差分表示の作成方法等、ご教示いただければ幸いです。

    なにとぞ、よろしくお願いします。

    • レビニア より:

      こめ太郎さん

      公式コモンの差分対応コモンとは↓のことですね。
      https://silsec.sakura.ne.jp/WolfRPGEditor/CommonList/html/tdv230.html#13086946612501

      真似にはなってしまいますが、差分対応版も作って記事にしてみます。

      ちなみに差分画像は「立ち絵丸ごと」と「顔部分等の一部のみベースに被せるもの」のどちらになりますか? 今は素材などでもベース+一部分のみ差分というのはあまり見かけないので、立ち絵丸ごとの差分画像を切り替える仕様でいいですか?

      • こめ太郎 より:

        レビニア様

        ご返信ありがとうございます。
        そのうえ、ご提案までいただいて恐縮です。

        私の理解がどこまで合っているかわからないので、少し説明させてください。
        ヒロインの立ち絵をゲーム画面右端に表示させ、主人公への好感度やHP減少等でキャラクターの表情や服装に変化を出したいと考えています。
        そこでまずは裸体のヒロインを表示させておき、そこに重ねるように服装1を、HP減少等の状況変化によって服装1-1、1-2(←この部分が差分になるかと考えています)が反映され、ヒロインの好感度に応じて表情変化(←このためにはベースの顔はのっぺらぼうの方が良いと思うのですが、どうですかね?)をつけてゲームに実装したいと考えています。
        ゲーム制作経験のない初心者には難しいかもしれませんが、そこは気合いで乗り切りたいと思いますので、ご教示いただけますと幸いです。
        ちなみに、ヒロインの立ち絵や差分になるかもしれないイラストは自前で用意していますので、必要であればお送りします。その際はお手数ですがどこに添付すれば良いかもご記載いただけますと助かります。

        どうぞよろしくお願いします。

        • レビニア より:

          ベースの立ち絵画像に表情や服装などの部分的差分画像をかぶせて表示したいわけですね。

          当記事の立ち絵コモンは「好きな場所に好きな大きさで好きな向きに表示できる」ことを念頭としているので、そもそもコンセプトとしてまったく異なったものになってしまいます。コモンの入力値は4つ+文字列4つしかありませんから。

          なので「ベースの立ち絵+いくつかの部分的差分を選択」という仕様にした場合、コモン呼出時に表示位置や倍率、向きなどを自由に指定できる機能はいくつか削らざるを得ません(DB側での指定となる)。

          1つのコモンで無理やり何もかもやろうとした場合、ベース画像+部分的差分を3つまで(表情、服装、その他)で、他にコモン呼出時に指定可能なのは表示位置とピクチャ番号のみ、という仕様が私としては限界かなぁ……。

          とりあえず簡単なモノで結構ですのでサンプルを頂ければ、可能な限り簡単に使えて要望にお応えできるモノを私なりにお作りしますね。

          問い合わせフォームにファイルを添付できるようにしておいたので、サンプル画像のご提供はこちらからお願い致します。