【エディタの数値欄に、変数を指定したい】


【概要】
ウディタでは、100万以上の巨大整数はただの数ではなく、
変数を指定しているものがあります。
この数値をイベントコマンドの数値欄に入力することで、
特定の変数を代わりに呼び出すことができます。

例えば、数値欄に、「所持金」を指定する巨大整数「1103000000」を
入力すると、1103000000が自動的に「所持金」に置き換わって処理されます。

では、この機能を使って何ができるのでしょうか。
具体的に、以下の二例を使って説明したいと思います。

@ 所持金を2倍にするイベント
┗変数を呼び出す数を、エディタの数値欄に入れると…。

A パン屋さんのその場で食べるパンを有料にする
┗変数呼び出し値を使って計算してみます。




@ 所持金を2倍にするイベント

(所持金)×2」は「(所持金)+(所持金)」と表すこともできます。
「現在の所持金」の金額を所持金に足すと、所持金が2倍になりますね。

このイベントでは、「現在の所持金」の変数数値(金額)を呼び出して、
それをイベントコマンドで所持金に足すということをします。
ここでのポイントは下記【2】の「現在の所持金」の金額を呼び出す方法ですよ。

それでは、やってみましょう。


【1】新しくイベントを作成してグラフィックを設定し、
「コマンド入力ウィンドウ」を開いて、タブを「その他2」に
切り替えて下さい。

参考:◆新しいイベントを作ってみたい【1】〜【7】


【2】「コモン3:○お金の増減」を選択して下さい。
ここからがポイントです。
「お金の増減値」に、「1103000000」、この通りの数を入力して下さい。
この数は表面上はただの11億300万ですが、変数として「所持金」、
厳密には「可変DB:タイプ3番パーティ情報:データ0番メイン設定:内容0所持金」
を指定しています。

入力したら、右の画像下部の赤枠で囲っている部分に注目して下さい。
1103000000=【可変DB】タイプ3:パーティー情報
   データ0:メイン設定 内容0:所持金 の値(変数)

…と表示されていると思います。
(もし違うなら、入力した数値が正しいか確認して下さい。)

これが、呼び出される変数の名前です。
変数呼び出し値は桁数が大きいため、数を間違うこともあるのですが、
1文字でも抜けていたり間違っていたりすると、正常に値が
呼び出せません。ですから、ここでの確認は大切です。


【3】確認が終わったら「入力」を押してください。
次に、イベントが実行された事を確かめるために文章を入力します。
タブを「文章の表示」に切り替え、「お金が2倍になった!」と
書き入れて「入力」を押してください。


【4】それでは、テストプレイしてみましょう。
ゲーム開始直後は所持金が0ですので、少し手に入れてから
イベントを起こしてみましょう。イベントを起こすたびに所持金が
倍加していきます。

ここで、イベントを起こすたびに所持金に足されるのは
11億300万という「数値」ではなく、変数「所持金」だったことが
お分かりいただけたと思います。

まずは、エディタの数値欄に変数呼び出し値を入れるとどうなるか、
という説明でした。

次に、別の例を用いて、変数呼び出し値を使って計算をしてみます。




Aパン屋さんのその場で食べるパンを有料にする

食べると全体アタックが使えるようになる、あのイベントです。
その場で食べるものは無料になっていますが、このイベントに、
「所持金からパンの値段を引く」処理を加えて有料にしてみます。

今回は【3】で変数呼び出し値を使用して、ユーザーデータベースの
アイテム情報から、アイテム「おいしいパン」の値段を呼び出します。


【1】[Event:9 - コック]を開いて、文章選択肢 【1】\s[0]
( 「よーし、ちょっと待っててくれよ!」というセリフのある選択肢)
の中を選択してコマンド入力ウィンドウを開き、タブを「DB操作」に
切り替えて下さい。


【2】まず上半分、DBの設定を行います。ここには「所持金」を設定します。
可変DBで、DBタイプ番号に「3」、データ番号に「0」、内容番号に「0」を
それぞれ入力して下さい。ウィンドウ下部に確認欄がありますから、
ここで設定が正しいか確認してみて下さい。正しければ、
▼可変DB タイプ3 パーティー情報/データ0 メイン設定/内容0 所持金
が表示されますよ。


【3】それでは、変数呼び出し値を使用します。
今回は「1002000319」で、これはパンの値段です。
これを、ウィンドウ中段の「数値処理 または 代入先指定」に入力して下さい。

正しく入力できていれば、確認欄に
▽1002000319=【ユーザDB】タイプ2:アイテム
 データ3:おいしいパン 内容:19販売価格[0=売れない]の値(変数)

と表示されます。


【4】先ほど、可変DBから所持金を、ユーザDBからパンの値段
それぞれ呼び出しましたが、今度はこの2つの変数で引き算をします。

パンの値段を所持金から引くので、1002000319を入力した場所の
すぐ左にある「=」を「−=」に変えます。

そのさらに左にある「DBへ代入↑」「変数に代入→」は、
DBへ代入↑」にしておいて下さい。

これで、「所持金からパンの値段を引く」という処理がようやく完成しました。


【5】それでは、テストプレイです。パン屋さんは、P.G.エディを
仲間に加えるイベントが起きていないと出現しないので注意。

ちゃんと所持金が 20ゴールド減りましたか?
もしうまくいかなかったなら、ウディタを見ながら、上記項目の
【2】【3】【4】をもう一度読み返してみて下さい。
ミスが見つかれば修正を、見つからなければ、もう一度入力をし直して
みて下さい。投げずに試行錯誤することが、あなたの知識となります。

ちなみに、所持金が20ゴールド未満だった場合でも、所持金からやはり
20ゴールドを引くので所持金はマイナスの値になりますし、イベントも
そのまま進行します。ここではやりませんが、余裕があったら上手く
動くように改造してみてくださいね。
ぜひ、できるまでやってみて下さい。お疲れさまでした。


【余談】
変数呼び出し値は複雑な巨大整数ですから、「これ覚えるの!?」と
思われた方もいらっしゃることと思いますが、覚えていなくても大丈夫です。
ウディタの「ヘルプ」から「変数呼び出し値/特殊文字一覧」でいつでも
見ることができます。
それに、頻繁に使っていればいつか覚えてしまうこともありますので、
最初に思うほど難しいことではありませんよ。

そして、変数呼び出し値は便利な機能です。しかし、文字を入力する欄なら
どこでも使えるというわけではありません。
文章や文字列変数など、数字以外が入ることのある場所には数値の
変数呼び出し値は使えませんが(代わりに特殊文字が使えます)、基本的に、
数字を入力したときに確認欄に「通常の整数値」と出る場所は全て
変数呼び出し値の入力が可能
、と思っておいて大丈夫です。


<執筆者:ウディタ公式ガイド執筆コミュ。


【←にフレームが表示されていない方はここをクリック】