[初心者向け]初めての変数。ツクールとかウディタとか
こんにちは!
今日はツイッターで変数がよくわからない、
というつぶやきを頂いたので、
自分なりに変数について書いてみることにしました。
1 変数ってなんだろう?
突然ですが、
みなさん中学生のときにならった方程式を覚えていますか?
X+Y=5
とかいう、感じのやつです。
数学だとこんな感じですが、
このXとYが、まさしく変数と言われるものです。
なので、これが
A = 3 + Bでも、
HP = MAXHP - DAMAGE
でも、名前は何でもいいです。
ツクールなどのツールだと、
設定で日本語名もつけれますよね。
変数というのは、
自由に計算をしていくためのものだと言えます。
2 何に使うのでしょうか
変数って必要なの?
と言われると、たぶん無くても、凄く頑張れば何とかなりそうです。
しかし、あれば便利だったりします。
例えば、簡単な計算ですが、
主人公の残りHP = (敵の攻撃力) - (主人公の防御力)
こういったものを自前で計算するとき、
すでに三つの変数が必要になります。
変数主人公の残りHP = データ上の主人公の残りHP
変数敵の攻撃力 = データ上の敵の攻撃力
変数主人公の防御力 = データ上の主人公の防御力
このように、データ上にある、それぞれの数値を、
用意した変数に設定します。
そして、変数を使い、計算をします。
計算を終えたら、
データ上の主人公の残りHP = 変数主人公の残りHP
このように、変数の値をデータ上に設定しなおします。
すると、例えば戦闘が終了したあとも、
ステータスをみると、
ちゃんと設定された値が表示されます。
3 代入して計算する
さきほどの例をとりあげます。
変数主人公の残りHP = データ上の主人公の残りHP
このように書くと、
右側のデータ上の主人公の残りHPが
変数主人公の残りHPへと設定されます。
この設定することを、代入(だいにゅう)といいます。
変数主人公の残りHP = データ上の主人公の残りHP
仮に右側が50だと左も50になりますし、
右側が60だと左も60になります。
なので、
左側が60で、右側が50だと、
代入されて、左側が60から50になります。
では、例を変更します。
変数現在地X = データ上の主人公の現在地X
変数現在地Y = データ上の主人公の現在地Y
こうすると、主人公の現在いる座標のXとYが、
それぞれ代入されます。
主人公は、普通は移動します。
仮にXが120、Yが160の場所から、
Xが200でYが280の場所に移動したとします。
まずは、代入します。
変数現在地X = 120(データ上の主人公の現在地X)
変数現在地Y = 160(データ上の主人公の現在地Y)
移動すると勝手に、
データ上の主人公の現在地X = 200
データ上の主人公の現在地Y = 280
と、なります。
ここで、元の場所に一気に戻りたい、
という、処理を行うとき、変数が役に立ちます。
データ上の主人公の現在地X = 変数現在地X
データ上の主人公の現在地Y = 変数現在地Y
こうすると、
変数にはあらかじめ120と160が設定されているため、
この変数を使えば、元の場所に一気に戻る処理を行うことができます。
ちなみに、文字も代入することができます。
変数主人公の名前 = プレイヤーが入力した名前
例えば、自由にプレイヤーが名前をつけることができるゲームの場合、
変数に名前を代入し、その変数をメッセージの表示などで使用すれば、
どんな名前でも、対応することができます。
何かしらの文字を保存したいときは、利用するのが吉です。
4 まとめ・様々なものを代入して慣れよう
ツクールやウディタでは、
変数をデータベース上に設定し、
その変数をイベントで使用することができます。
アイテム名、主人公の名前、
そして、ゴールド、敵や仲間のステータスなど、
代入可能なものは、全て代入できます。
ゲームを制作するとき、
自分が実現したいイベントに、
どんなデータが必要かを考え、
そして、変数に値を代入し、
計算すればその計算の結果を使用する。
それが、変数を使用して、
ゲーム制作をすることのポイントとなるでしょう。
それでは、短くて急ピッチな説明でしたが、
ここでお開きにしたいと思います。
今後も、何かしらあれば、
書けるものは、書ければと思います。
この記事が気に入ったらサポートをしてみませんか?