目次
変数とはなにか
まず変数というものを理解しなければ、ゲームを作ることはできません!
このサイトを見ている方なら、RPGで遊んだことがあると思います。
●主人公のHP
●所持金
などが変数です。
ここで一つ、財布を思い浮かべてください。
変数とは財布のようなものです。
財布には自由にお金を出し入れできますが、いくらお金が入っていようと財布そのものは変化しません。
この場合、財布が「変数」。財布に入ってる金額が「値」と言えます。
そして財布の名前が変数名です。
実際にコモンイベントで変数を使ってみましょう!!
左側から変数操作を選んでください。
そうしたらここに「10」と「8」タイプして、
すると次のようなコマンドが入力されます
この「Cself0」が変数です。
このコマンドは、『「Cself0」という変数に「10 + 8」の計算結果を「代入」しろ』というコマンドになります。
Cself0に10 + 8…つまり18という値を「代入」したことで、Cself0という入れ物には18という値が入りました。
この状態で、「Cself0は何ですか?」と聞けば、「18」とこたえるはずです。
実際に確認してみましょう。
左側から文章の表示を選んでください。
変数の値は、「特殊文字」というものを使って、文章(文字)として表示させることができます。
今回は特殊文字の1つ。「\cself[X]」を使ってみます。
これは、コモンセルフ変数X番の変数の値を表示できる特殊文字です。
詳しい説明はさておき、「 変数の値は\cself[0]です。 」と入力してください
「自動実行」でこのコモンイベントを呼び出します。
ちゃんと18と表示されました。
Enterを押しても繰り返されるのは、自動実行にしているからです。ウィンドウの×印で閉じてしまいましょう。
右辺と左辺
=の左側を「左辺」。右側を「右辺」と呼びます。
先に右辺の計算をして、その後左辺に代入されます。
ウディタでは、右辺に2つの変数か定数を設定できます。
定数というのは、1や10や8など、決まった値を持つものです。
変数操作と演算子
「Cself0 = 10 + 8 」の「=」は代入演算子と呼ばれるものです。
これは右辺の値を左辺に「上書き」します。
さて、これを実行するとどうなるでしょうか。
10 + 8が代入されたあとに、100 + 0 が代入…つまり上書きされるので
答えは「100」になります。
答えは「118」にはならないので注意が必要です。
次はこのコモンイベントを見てみましょう。
実行してみます。
このように、変数に変数を代入させることもできます。
そして注目してほしいのは、代入したからといってCself1の値がなくなってしまうわけではないことです。
Cself0へCself1の値が「コピーされ上書きされた」と考えてください。
演算子
先ほど使も言いましたが、「=」。そして右辺に使われている「+」も演算子と言います。
「=」は「代入演算子」「+」は「加算演算子」です。
枠線のプルダウンから演算子を選択できます。
青枠の中身の「+」「-」「x」「÷」は特に説明しなくていいでしょう。
「%」「ビット積」「~」はよくわからないかもしれませんが、無視して結構です。またの機会に説明します。
さて、問題は赤枠の選択肢です。今回はそのうちの、
=
+=
-=
×=
÷=
の5つについて解説します。
複合代入演算子
次の式を見てください。
Xは変数です。これは一体どういう式なのでしょうか。
式は右辺から計算されます。最初に「X + 5」を計算し、それを「X」に代入しているので、
結果的にXの値が5増えることになります。
さて、上の式は実は以下のように書き換えることができます。
この「 += 」が「複合代入演算子」です。
+=、-=、×=、÷=などをまとめて表現します。
残りももうわかりますね?
複合代入演算子は、式が短くなるほか、右辺に二つの変数や定数を指定できるので、見た目がすっきりします。
積極的に利用していきましょう!
変数に名前を付ける
枠線の欄から変数に名前を付けることができます。
普通は赤枠のほうを使いますが、今は青枠のほうで名前を付けてください。
赤枠のほうは後日詳しく解説します。
また、今回は分かりやすくするために、Cself0とCself1を使いましたが、
今後しばらくはCself0~Cself10までの変数は使わないでください。
どうして使ってはダメかは、コモンイベントをもう少し掘り下げるときに解説します。
それまでは使用禁止!!