変数入門

目次

変数とはなにか

まず変数というものを理解しなければ、ゲームを作ることはできません!

このサイトを見ている方なら、RPGで遊んだことがあると思います。

●主人公のHP

●所持金

などが変数です。

ここで一つ、財布を思い浮かべてください。

変数とは財布のようなものです

財布には自由にお金を出し入れできますが、いくらお金が入っていようと財布そのものは変化しません。

この場合、財布が「変数」。財布に入ってる金額が「値」と言えます。

そして財布の名前が変数名です。

実際にコモンイベントで変数を使ってみましょう!!

左側から変数操作を選んでください。

そうしたらここに「10」と「8」タイプして、入力を押してください!

すると次のようなコマンドが入力されます

■変数操作:Cself0 = 10 + 8

この「Cself0」が変数です。

このコマンドは、『「Cself0」という変数に「10 + 8」の計算結果を「代入」しろ』というコマンドになります。

Cself0に10 + 8…つまり18という値を「代入」したことで、Cself0という入れ物には18という値が入りました。

この状態で、「Cself0は何ですか?」と聞けば、「18」とこたえるはずです。

実際に確認してみましょう。

左側から文章の表示を選んでください。

変数の値は、「特殊文字」というものを使って、文章(文字)として表示させることができます。

今回は特殊文字の1つ。「\cself[X]」を使ってみます。

これは、コモンセルフ変数X番の変数の値を表示できる特殊文字です。

詳しい説明はさておき、「 変数の値は\cself[0]です。 」と入力してください

■変数操作:Cself0 = 10 + 8
■文章:変数の値は\cself[0]です。

「自動実行」でこのコモンイベントを呼び出します。

 OK を押したらテストプレイしてみましょう。

ちゃんと18と表示されました。

Enterを押しても繰り返されるのは、自動実行にしているからです。ウィンドウの×印で閉じてしまいましょう。

右辺と左辺

=の左側を「左辺」。右側を「右辺」と呼びます。

先に右辺の計算をして、その後左辺に代入されます。

ウディタでは、右辺に2つの変数か定数を設定できます。

定数というのは、1や10や8など、決まった値を持つものです。

変数操作と演算子

「Cself0 = 10 + 8 」の「=」は代入演算子と呼ばれるものです。

これは右辺の値を左辺に「上書き」します。

■変数操作:Cself0 = 10 + 8
■変数操作:Cself0 = 100 + 0
■文章:変数の値は\cself[0]です。

さて、これを実行するとどうなるでしょうか。

10 + 8が代入されたあとに、100 + 0 が代入…つまり上書きされるので

答えは「100」になります。

答えは「118」にはならないので注意が必要です。

次はこのコモンイベントを見てみましょう。

■変数操作:Cself0 = 7 + 0
■変数操作:Cself1 = 11 + 0
■変数操作:Cself0 = Cself1 + 0
■文章:変数Cself0の値は\cself[0]で、変数Cself1の値は\cself[1]です。

実行してみます。

このように、変数に変数を代入させることもできます。

そして注目してほしいのは、代入したからといってCself1の値がなくなってしまうわけではないことです。

Cself0へCself1の値が「コピーされ上書きされた」と考えてください。

演算子

先ほど使も言いましたが、「=」。そして右辺に使われている「+」も演算子と言います。

「=」は「代入演算子」「+」は「加算演算子」です。

枠線のプルダウンから演算子を選択できます。

青枠の中身の「+」「-」「x」「÷」は特に説明しなくていいでしょう。

「%」「ビット積」「~」はよくわからないかもしれませんが、無視して結構です。またの機会に説明します。

さて、問題は赤枠の選択肢です。今回はそのうちの、

+=

-=

×=

÷=

の5つについて解説します。

複合代入演算子

次の式を見てください。

Xは変数です。これは一体どういう式なのでしょうか。

式は右辺から計算されます。最初に「X + 5」を計算し、それを「X」に代入しているので、

結果的にXの値が5増えることになります。

さて、上の式は実は以下のように書き換えることができます。

この「 += 」が「複合代入演算子」です。

+=、-=、×=、÷=などをまとめて表現します。

残りももうわかりますね?

複合代入演算子は、式が短くなるほか、右辺に二つの変数や定数を指定できるので、見た目がすっきりします。

積極的に利用していきましょう!

変数に名前を付ける

枠線の欄から変数に名前を付けることができます。

普通は赤枠のほうを使いますが、今は青枠のほうで名前を付けてください。

赤枠のほうは後日詳しく解説します。

また、今回は分かりやすくするために、Cself0とCself1を使いましたが、

今後しばらくはCself0~Cself10までの変数は使わないでください。

どうして使ってはダメかは、コモンイベントをもう少し掘り下げるときに解説します。

それまでは使用禁止!!