夏休みにPythonでゲームを作ろう!「引っ張りシューター☆バベルの塔!」
夏休み到来です。VSCATION楽しいな♪です。
メッチャ軽くて簡単な言語Pythonでゲームを作っちゃいましょう!
AIのおかげでプログラム知識がなくても誰でも気軽にゲームを作れるようになりました。夏休みを利用して、大人も子供もLets'ゲーム作り!
今日のハイライト

引っ張りタワーディフェンス「バベルの塔」
今回は、引っ張ってボールを発射して、自分の塔を守りながら、塔を高くしていくタワーディフェンスゲームを作ってみます。

ボールを発射!
引っ張り操作でボールを飛ばせるようにします。

地面と塔を追加
地面と発射台の塔を描きます。
地面にボールが当たると弾んだり転がったりするようにします。

雲を作る
雲を丸を組み合わせて作って空中に浮かべ、毎回ランダムに生成します。

雲にボールが当たったらバウンドするようにします。

ガイド
当てにくいのでガイドを入れました。

ボールの巨大化
ボールが雲に当たるとドンドン大きくなって快感をマシマシにしました。
更に塔に当たると、ボールをガーンとかっ飛ばします。

敵を作る
地上の敵
地上を移動する敵を作り、ボールで攻撃できるようにしました。
ボールが敵に当たったら、お互いダメージになり、HPが0になったら、消えます。HPが残っていれば、跳ね返ったりノックバックします。

飛行敵
空を飛ぶ敵です。攻撃範囲に入ると、タワーを目掛けて攻撃します。
大きさで速度、攻撃力、HPが変わります。
確率で地上敵と飛行敵の出現をコントロールします。

ステージクリア
一定数敵を倒すとクリア
規定数の敵を倒したらステージクリアになります。

ゲームオーバー
敵がタワーを攻撃
タワーに敵がぶつかってダメージを与え、タワーのHPが0になったらゲームオーバーです。

タワーのダメージ
タワーがダメージを受けると壊れて低くなるようにしました。
ダルマ落としの要領でボールも下がっていきます。
ハートも追加しました。

アイテム
回復アイテム
雲の上にランダムにハートが登場し、これを弾で撃つと、ブロックが追加されて高くなるようにします。ハートも増えます。

天国まで達したら何を起こしましょうかね?
ステージと難度
ステージごとの難度の設定
ステージごとに、登場する敵の確率を変化させ、敵の出現間隔やスピード、HP、攻撃力を全体的に補正値を描けます。
また、ステージごとにクリアまでの敵の数も設定できるようにします。
ハートの出現間隔をランダムにしてだんだん出にくくしました。

ついでに追加した機能
ヒットエフェクト
・ヒットエフェクトが出るようにしました。
ボールを戻す
・ボールを呼び戻す「RECALL」ボタンをつけました。
ボス戦
3つ目のボス
3つの目の巨大ボスを追加します。
弱点である目以外はダメージが入らず、弾を跳ね返します。
ボスは目を開いたり閉じたりし、閉じている間は攻撃を跳ね返します。
開いている目を攻撃すると、小さく早くなります。
ボスを倒すとステージクリアです。

演出を追加
追加した演出
コンボ表示 :弾を発射してから戻るまでに敵に当たった回数を表示
敵に目を :敵に目玉をつけてキャラ化する
ボスを天使に :ボスに天使の輪をつけバベルの塔を襲う天使にする
タワー :塔の各階に窓をつけ、屋上にスリング台を置く
ボールに目を :ボールに目を描き回転を分かりやすくする

バベルの塔ができました!
皆で高みを目指しましょう!
神の軍団が攻めてきますが、様々な英雄を塔から発射して撃退し、天国を目指しましょう!必殺技や特殊な敵をたくさんいれて、協力や対戦もできそうなネタですね。みたいな感じで、ソーシャルゲームにもできまっせ!
ということで、一緒に天界まで行ってくれる人や、出資してくれる人おらんかな?なんてなw
誰かの参考になれば幸いです。
