Scratchの達人 ゲーム作りに強くなるプログラミングテクニック攻略ガイド

書籍の概要

この本の概要

すごい人たちは,Scratchでどうやってゲームを作っているの?そんなふうに思ったことはありませんか?背景マップやカメラ,当たり判定,フレームなどのテクニックを使いこなせば,本格ゲームは作れるんです。Scratchだから,プログラムが日本語で読めるから,わかりやすいんです!さあ,プログラミングに強くなろう。

こんな方におすすめ

  • Scratchを使いこなしたいひと
  • Scratchでゲームを作りたいひと
  • Scratchプログラミングに興味のある中学生,高校生

サンプルゲームのプレイ動画

本書で作成する4つのサンプルゲームのプレイ動画を公開しています。

この書籍に関連する記事があります!

楽しいScratchゲームを教材に子どもの思考力をレベルアップ!
背景マップやカメラ、当たり判定、フレームなどのテクニックを使いこなせば、本格ゲームは作れるんです。Scratchだから、プログラムが日本語で読めるから、わかりやすいんです!さあ、プログラミングに強くなろう。

本書のサンプル

本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。

サンプル画像1

サンプル画像2

サンプル画像3

サンプル画像4

サンプル画像5

目次

  • 本書の読み方

CHAPTER 0 Scratchのしくみ

  • 0-1 座標系をあつかいやすくしよう
    • プラス座標系の導入
    • プラス座標系でスプライトを動かそう
  • 0-2 Scratchのなかの処理の流れ
    • スプライトとステージは,プログラムを実行しません
    • パラパラ漫画を知っていますか?
    • Scratchの隠れた処理
    • 待ち時間がある理由
    • 1秒間あたりのフレーム数を調べよう
    • スプライトを実行する順番
    • スプライトを実行する順番を指定しよう

CHAPTER 1 サンプルゲーム1(スクロールなし・ひとり用)を作ろう

  • 1-1 自機と敵機を表示して動かそう
    • サンプルゲーム1のポイント
    • 自機と敵機をクローンして表示しよう
    • ここまでのブロック定義について
    • スプライトのプログラムの構造の共通化
    • 共通化する5つの処理
    • 自機を動かそう
    • ここまでのブロック定義について
    • 敵機を動かそう
    • ここまでのブロック定義について
  • 1-2 スプライト同士の当たり判定を作ろう
    • 当たり判定を自作する理由
    • スプライト同士の当たり判定の考え方
    • 当たり判定のプログラム1のポイント
    • 当たり判定のプログラム1の詳細
    • 当たり判定のプログラム2と四角形による当たり判定の特徴
    • 四角形による当たり判定の判別式
    • 実際にプログラムに組み込む判別式
    • 当たり判定を組み込もう
    • ここまでのブロック定義について
  • 1-3 スプライトの状態を管理しよう
    • (_状態)という変数
    • 自機の状態を組み込もう
    • ここまでのブロック定義について
  • 1-4 背景スプライトを組み込もう
    • ステージの問題点と回避方法
    • 背景スプライトの組み込み方
    • 背景マップリストの作成と背景タイプのセット
    • 背景スプライトの画像の作成
    • 背景スプライトを敷きつめよう
    • ここまでのブロック定義について
  • 1-5 スプライトから背景スプライトへの当たり判定
    • スプライトから背景スプライトへの当たり判定のしくみ 1
    • スプライトから背景スプライトへの当たり判定のしくみ 2
    • スプライトから背景スプライトへの当たり判定のしくみ まとめ
    • スプライトから背景スプライトへの当たり判定を組み込もう
    • ここまでのブロック定義について
  • 1-6 敵機を複数表示しよう
    • 敵マップリストについて
    • 複数の敵機を表示しよう
    • ここまでのブロック定義について
    • ゲームスタートフラグを組み込もう
    • ここまでのブロック定義について
  • 1-7 ゲームクリアとゲームオーバーを組み込もう
    • ゲームクリアの処理を組み込もう
    • ここまでのブロック定義について
    • ゲームオーバー画面を組み込もう
    • ゲームオーバーの処理を組み込もう
    • ここまでのブロック定義について
  • 1-8 ゲームを仕上げよう
    • スコアを表示しよう
    • ここまでのブロック定義について
    • BGMを鳴らそう
    • ここまでのブロック定義について

CHAPTER 2 サンプルゲーム2(横スクロール・ひとり用)を作ろう

  • 2-1 横スクロールゲームのしくみを作ろう
    • サンプルゲーム2のポイント
    • 横長の背景マップの導入
    • カメラの組み込み
    • 背景をスクロールさせよう
  • 2-2 横スクロールにあわせてプログラムを作ろう
    • [自機]を表示して,[壁]との当たり判定を組み込もう
    • [敵機]を表示しよう
    • ここまでのブロック定義について
    • [敵機]の種類を追加しよう
    • ゴール到着を組み込もう
    • ステージの端の残骸を処理しよう

CHAPTER 3 サンプルゲーム3(縦スクロール・ふたり用)を作ろう

  • 3-1 縦スクロールゲームのしくみを作ろう
    • サンプルゲーム3のポイント
    • 左右で別々に縦スクロールするしくみ
    • 背景を縦スクロールさせよう
  • 3-2 縦スクロールにあわせてプログラムを作ろう
    • [自機]を組み込もう
    • [宝石]を組み込もう
    • [敵機]を組み込もう
    • ゴールインの処理を組み込もう
    • 速度計を組み込もう
    • ステージの端の残骸を処理しよう

CHAPTER 4 サンプルゲーム4(縦横スクロール・ふたり用)を作ろう

  • 4-1 画面を左右分割して縦横スクロールするしくみを作ろう
    • サンプルゲーム4のポイント
    • [自機1]とその背景を組み込もう
    • [自機1]の見た目を歩かせよう
    • [自機2]とその背景を組み込もう
  • 4-2 ゴーストを組み込んで対戦画面のしくみを作ろう
    • [自機ゴースト]を組み込もう
    • バグを直そう
    • [自機]と背景スプライトの当たり判定を組み込もう
    • [自機]同士の当たり判定を組み込もう
    • ここまでのブロック定義について
  • 4-3 自弾を組み込んで攻撃できるようにしよう
    • [自弾]を組み込もう
    • バグを直そう
    • [自弾ゴースト]を組み込もう
  • 4-4 ゲームを仕上げよう
    • 勝敗の表示処理を組み込もう
    • ステージの端の残骸を処理しよう

APPENDIX

  • A-1 デバッグの進め方
    • バグとは
    • バグを見つけやすいプログラムにする
    • バグを見つける
    • 具体例から考えるバグの原因
  • A-2 ジャンプのプログラム
    • ジャンプのプログラム その1
    • ジャンプのプログラム その2
    • ジャンプのプログラム その3
  • A-3 サンプルプログラムの補足
    • サンプルゲーム4の発展形
    • マップエディタ

著者プロフィール

麻生菜乃(あそうなの)

ゲーム会社勤務。ゲーム開発にプログラマーとして多数参加。
CoderDojoメンター。