なんか作って載せます

キーボードから入力したものを使ってみましょう。その1。

キャラクターの名前を入力する



キャラクターの名前は、可変DBタイプ0番「主人公ステータス」にて設定しますが、ゲーム内で名前を変更させる処理を作ることは可能です。
もちろん、ゲーム開始時に好きな名前を入力して設定することもできます。


元々の名前をゲーム内で変更する場合、一例として以下のようにします。

名前入力1

文字列変数S0に変更したい名前を入れ、それを可変DBに書き込むという方法です。
(例としてS0を用いていますが、別に変数番号はどれでも構いません)

ちなみに、文字列変数の名前は、システムDBタイプ4番「文字列変数名」で設定することができます。

上の処理を実行すると、

名前入力2

名前が「ウルファール」から「Wolfarl」に変わります。

名前入力3

このようにしても全く同じ結果となります。


では次に、ゲーム開始時に入力した名前を使いたい場合。

まず、以下のように準備します。

名前入力4

名前欄に「\s[xx](xxは変数番号)」と入力します。
これで、キャラ名にこの文字列変数が設定されました。

この状態で、イベントコマンド「文字列操作」から「キーボード入力」を選びます。

名前入力5

半角で何文字まで入力可能かを設定します。
ここでは、「ウルファール」が全角で6文字なので、半角12文字に設定しました。

そして、以下のようにします。

名前入力6

実行すると、画面の下の方に入力エリアが表示されます。
ここに、とりあえず「うるふぁーる」と入力しました。

名前入力7

決定キーを押すと「名前を「うるふぁーる」に設定しました。」とメッセージ表示され、キャラ名の変更が終わります。

名前入力8

ここでは、テスト用に「キャンセル有」にチェックを入れましたが、開始時に名前入力必須のゲームの場合、このチェックは必要無いでしょう。
ちなみに、キャンセルは「ESCキー」で可能です。


何も入力せずに「Enterキー」を押しても次へ進めますが、これを制限したい場合、以下のようにします。

名前入力9

文字列操作の前にラベルを設置しておき、条件分岐で文字列変数S0が空欄だった場合、再び入力前に飛ばすようにすれば、何か1文字でも入力しなければ先に進めないようにできます。


また、名前入力の際にデフォルト名を最初から表示させることも可能です。

名前入力10

「左辺を書換」にチェックを入れます。

そして、以下のようにします。

名前入力11

入力前に、同じ文字列変数にデフォルト名となる文字列を入れておくのです。
こうすることにより、入力時に最初から「ウルファール」が入っている状態になります。


あと、これは余談ですが、「決定キーで実行」のイベントにキーボード入力させるよう設定した場合、その文字列操作1行だけだと、Enterキーをいくら押しても入力が終わりません。
「キャンセル有」にチェックが入っていれば問題無いのですが、これって仕様なんですかね。

まぁ、そんなシンプルすぎるイベントを作ることは無いでしょうけど、一応書いておきます。


以下、自作の文字入力画面です。

名前入力12

ひらがなとカタカナ対応で、最大8文字まで入力できます。
入力結果をマップイベント側で受け取り、使えるようにしてあります。
コモンイベント1つと、ユーザーDB2つに可変DB1つで構成されています。


WOLF RPGエディター Ver.2.10 使用

2015/01/18/Sun 更新

inserted by FC2 system