いう変数を宣言しています。座標に円を描くのですね。このことによって、弾が動いて見えるというわけです。設定しなおすことで、またスタート地点に戻しています。関数を使って、ランダム(=でたらめ)に設定しています。弾がx座標を変えながら、いつまでもくるくるとたまが回っているんですね。関数は、ゲームでランダムになにかを出現させたり消したりする必要が有る場合、とても便利に使える関数です。関数から呼ばれるたびにプログラムどおり同じ動作をしますから、このなかにこの座標をいれてしまうと、いつも同じ数字がセットされ、結局、動かない事になってしまうんですね。関数の外で宣言したというわけです。弾が表示できました!つぎはこの弾を沢山同時に表示することが出来れば、弾幕風になることでしょう。その数たるや、弾幕風というからには相当な数になることが予想に難くありません。それを想定し、変数をあらかじめたくさん宣言しておくことも不可能ではありませんが、とんでもないことになりそうです。なにかいい方法はないのでしょうか?現代の多くのプログラム言語では、この様に同じものを沢山処理する必要がある場合、とても便利に処理することができる仕組みがあります。使うことができるのです。はなにか?というと、簡単にいえば設計図です。設計図を作っておけば、設計図をもとに何個でも、何百個でもインスタンス(=インスタンス)を作ってくれるのです。使って書き換えて見ましょう。そのバージョンが、下記のソースになります。クラスの場合ですが、必要なのは大きく2つあります。弾の場所と、弾をどう動かすのかということですね。それらが設計図に入っていれば、大丈夫なはずです。いう関数があるのがわかると思います。中に書いてある変数「クラス変数」は、クラスが作られるたびに、まとめて自動的に作られます。この機能によってどんなにたくさんの変数を使っていても、ちゃんと設計図(=クラス)に書いてさえあれば、まとめて管理することができるんですね。クラスの中に書いてある関数「クラス関数」(メソッドとかいう時もあります)は、基本的にクラスの中に書いてある変数を対象として、動作します。関数を呼んであげれば、弾はちゃんと動くというわけなんですね。クラスとインスタンスのシンプルな図解を用意しました。クラスの名前と同じような関数は「コンストラクタ」とよばれる特別な関数で、クラスからインスタンスを生成する際に呼ばれます。使うのですが、その時には、コンストラクタで決められている引数を渡します。すると、その引数をつかってインスタンスが作られるというわけですね。3つの値を渡しています。クラス化が出来た事でいっぱい増やす準備は整いました。増やして、弾幕を作っていきましょうか!と、いいところまで来たのですが、ちょっと長くなってきたので、第4回に続きます!今回は、クラスの解説まで進みましたので、ちょっと難しかったかもしれません。いう時は、サンプルのソースを、ちょっとづつ、変えて実行してみるといいと思います。変更して、どう変わるのか確認していくことは、プログラム上達の近道ですよ。いいので、理解していきましょう。今回は、クラスの説明に多くを割いたので、またまた、弾幕にはたどり着けませんでした。