# スペースゲームの構築

より高度な JavaScript の基礎を教えるスペースゲーム

このレッスンでは、あなた自身のスペースゲームを作る方法を学びます。「スペースインベーダー」というゲームをプレイしたことがある方は、このゲームも同じように、宇宙船を操縦して、上から降ってくるモンスターを攻撃するというものです。完成したゲームはこんな感じです。

![Finished game](../images/pewpew.gif)

この6つのレッスンでは、次のことを学びます。

- Canvas 要素と**相互にやりとりして**画面上に物を描く
- 直交座標系を**理解する**
- Pub-Sub パターンを**学び**、メンテナンスや拡張が容易なサウンドゲームアーキテクチャを作成できるようになる
- Async/Await を**活用して**ゲームリソースをロードする
- キーボードイベントを**処理する**

## 概要

- 理論
   - [JavaScript を使ったゲーム構築入門](../1-introduction/translations/README.ja.md)
- 実践
   - [Canvas への描画](../2-drawing-to-canvas/translations/README.ja.md)
   - [画面の周りの要素の移動](../3-moving-elements-around/translations/README.ja.md)
   - [衝突の検出](../4-collision-detection/translations/README.ja.md)
   - [スコアの保持](../5-keeping-score/translations/README.ja.md)
   - [ゲームの終了と再起動](../6-end-condition/translations/README.ja.md)

## クレジット

このために使用したアセットは https://www.kenney.nl/ から入手しました。
ゲームを作るのが好きなら、これらのアセットはとても良いもので、多くは無料で、一部有料のものがあります。
