─第1章─C++に慣れるためにFlappy Birdを作った話


作ろうと思ったきっかけと目的

実は私がC言語を使ってプログラムを組んでいたのは高校2年生まで。
高校3年生ではPythonとVBAを少しかじる程度しかプログラミングをしていなかったので久々にCと似たような構文でコーディングをする、といった状態でした。
「勘を取り戻そう、あわよくばクラスについても勉強してみよう。」
アルゴリズムも操作も比較的単純でオブジェクトもそこまで多くないという理由で私のFlappy Bird制作が始まりました。

忘れてることばっかり……!?

さぁ始まりました久々のプログラミング。
「変数の宣言……よし。」
「関数…引数…戻り値……OK覚えてる。」
「if文……よぉーし、いい子だ。」
「for文……あれ?for文?」
…………んんん?for文が動かない…?
いやいやさすがにfor文で構文ミスなんてねぇ…

for(int i = 0, i <10, i++){
   //処理
}

あっ……

for(int i = 0; i <10; i++){
   //処理
}

動いた。
まさかの「;」を間違えた……
しかも気づくまでに割と時間をつかってしまった。

ブランク、恐ろしい子……!

我ながら先が思いやられるスタートラインでしたね(笑)

制作中、制作後のあれこれ

クラス、むずかしくない?

クラス(オブジェクト指向)について友人に教わりながら今までのようにコーディング。
「なーんだ、構造体とか関数化とそんな変わんないじゃん」
なんて思ってたのも束の間……
「え?メンバ関数ってなに?」
「値直接持ってこれないの?」
「コンストラクタってなに?」

さぁやってまいりました。
これが楽しいんだよなぁ……

アクセス修飾子と格闘しながらなんとかそれっぽい動きができたところでひとまず完成といったところです!

noteを書いている私 「反省しなさい」

たのむからタイトル画面くらいは実装しててくれよ1ヶ月半前の私……

カウントダウンもせずに急に始まるからライフ2個無くなったんだけど……?

しかもスコア画面からゲームに戻れないんかい!

以上3点が特に大きく反省すべき所でした。
ゲーム本編も大切だけどそれ以外もちゃんと作りこもうと思います……(反省)

第1章の感想

1、2週間かけてできあがったにしてはかなりクオリティが低いゲームですが

1.オブジェクト指向の第1歩を踏み出した
2.ゲームとしての反省点が見つかった
3.コーディングの感覚を取り戻してきた

ということで
ひとまず今回の目的は達成したかと思います!

─第1章─
「C++に慣れるためにFlappy Birdを作った話」、
これにて!

次章も読んでいただけると嬉しいです!


いいなと思ったら応援しよう!