プログラミングのメモ帳(C/C++/HSP)

日々のプログラミングで気づいた点や小技集を紹介します。(Windows 10/XP/Vista、VC2017、HSP)

[HSP]シューティング・ゲームのミニ講座 - トップページ

2013年12月01日 05時28分00秒 | HSP講座

スクリプト言語の HSP については、公式ホームページの「HSPTV!」をどうぞ。(戻る)


HSP版シューティング・ゲームのミニ講座を載せます。
HSPでプログラミングを始めたばかりの入門者向けに用意しました。
どうぞ。

考え方

  1. シューティング・ゲームの初期化
  2. ゲームループにより(a)~(h)を繰り返す

    1. 再描画の停止
    2. キーの入力
    3. 物体の移動(自機,弾丸,敵機,流星)
    4. 物体の衝突(自機,弾丸,敵機)
    5. 物体の描画(消去,流星,弾丸,敵機,自機)
    6. 残機の調査(ゲームオーバー,コンティニュー)
    7. 再描画の開始
    8. ウェイトの処理

  3. プログラムの終了

進め方

ミニ講座の進め方は、自機、弾丸、敵機、当たり判定、…、完成という形で徐々に付け足していきます。
この方法で簡単なゲーム作りの方法を学べると思います。
付け足した部分は色を変えてハイライト部分としてます。
ハイライト部分以外は、どこも修正してません。

HSP付属のスクリプト・エディタを起動して、
サンプルのハイライト部分を徐々に入力して行けば良いでしょう。
入力が終わるたびに「F5」キーを押して実行結果を確認するように心がけましょう。

目次

番外編

  • 第10回 影付き文字の表示
  • 第11回 多重流星群の表示
  • 第12回 敵テーブルの実装
  • 第13回 ボス・キャラの実装
  • 第14回 ステージ・クリアの実装

変数・配列

名前 意味 講座
自機の管理
dim x自機の横軸第2回
dim y自機の縦軸第2回
dim fight自機の残機数第8回
dim blast自機の爆発カウンタ第6回
弾丸の管理
dim tamaF,10有無フラグ第3回
dim tamaX,10弾丸の横軸第3回
dim tamaY,10弾丸の縦軸第3回
dim tamaTrigg弾丸の発生間隔第3回
敵機の管理
dim enemyF,20有無フラグ第4回
dim enemyX,20敵機の横軸第4回
dim enemyY,20敵機の縦軸第4回
dim enemyZ,20敵機の爆発カウンタ第6回
dim enemyCycle敵機の発生間隔第4回
流星の管理
dim starF,50有無フラグ第7回
dim starX,50流星の横軸第7回
dim starY,50流星の縦軸第7回
dim starCycle流星の発生間隔第7回
スコアの管理
dim Score現在スコア第8回
dim HiScore最高スコア第8回
その他
dim keyキー入力
dim n整数型の一時変数
sdim msg文字型の一時変数

サブルーチン・命令・関数

名前 内容 講座
メイン部
*Init変数・配列の初期化
*Startスタート画面の処理第9回
*Mainゲームループの処理
自機の処理
*FightDraw自機の移動、描画第2回
 FightCrash(x,y)自機の衝突判定第5回
弾丸の処理
*TamaBirth弾丸の発生第3回
*TamaDraw弾丸の移動、描画第3回
 TamaCrash(x,y)自機弾の衝突判定第5回
敵機の処理
*EnemyBirth敵機の発生第4回
*EnemyDraw敵機の移動、描画第4回
流星の処理
*StarBirth流星の発生第7回
*StarDraw流星の移動、描画第7回
その他
 ScoreCalc scoreスコアの加算第8回
*TelopDrawテロップの描画第8回

上記のサブルーチン(命令,関数)の見分け方は、次のようになります。

  • 「*」マークがあるのがサブルーチン
  • 引数が付いてるのがユーザ定義命令(ScoreCalc)
  • カッコがあるのがユーザ定義関数(FightCrash、TamaCrash)

関連記事



コメント (1)   この記事についてブログを書く
« 前の記事へ | トップ | [HSP]第1回 自機の表示 (シ... »
最新の画像もっと見る

1 コメント

コメント日が  古い順  |   新しい順
самые лучшие онлайн игры (Elmerbob)
2020-07-26 19:02:59
игр онлайн бесплатно 5 http://gg.gg/kykac

コメントを投稿

HSP講座」カテゴリの最新記事