ブロック崩しの作り方

作成の手順

  1. 画像ファイルを用意します。
  2. フォルダを作成して、画像ファイルと hime.js, index.html をその中に入れます。
  3. index.html をテキストエディタで編集して設定を行います。
  4. index.html をブラウザで開いて、ブロック崩しが遊べたら作成完了です。

画像ファイルについて

各画像のサイズ

タイトル、ボーナス、背景、ブロック各画像のサイズのおすすめは 480×560 ピクセルです。 それ以外のサイズも基本的に自由に指定できます。ゲーム画面は画像サイズに合わせて自動的に伸縮します。

背景とブロック画像

ゲームのメイン画像です。背景の上にブロック画像が重ね合わせて表示されます。 ブロック画像にボールを当てると、当たった部分が壊れて透明になっていき、背景が徐々に見えるようになります。

例えば脱衣系のブロック崩しゲームを作成する場合は、背景にJPEG形式でキャラクターのベース絵を指定し、 ブロック画像にGIFまたはPNG形式で、透明部分を含む服の差分絵を指定します。フルカラーPNGも使用可能です。 画像サイズを変更する場合は以下の点にご注意ください。

ブロックマップについて

ブロック画像はゲーム起動時に自動的に、画像を 16×16 ピクセルの格子状に分割してブロック化されます。 その際にブロックの有無の情報を収めた、ブロックマップというデータが生成されます。

ブロックマップの生成は自動的に行われるので、通常は意識する必要はありません。 但しローカル環境では、HTML5のセキュリティ制限でブロックマップを自動生成できず、ゲームが起動しない場合があります。

ブロックマップは同梱の生成ツールを使って、手動であらかじめ生成して用意しておくこともできます。 あらかじめ生成しておくと、セキュリティ制限の影響を受けずにゲームをプレイできます。 また、ゲーム起動時の負荷を下げることができるメリットもあります。 特にダウンロードコンテンツ等で、ローカル環境でのプレイを前提としている場合は、生成ツールの使用をおすすめします。 生成ツールの使い方については、ブロックマップ生成ツールについてをご覧ください。

テンプレートファイルの編集

テンプレートファイル (index.html) を、メモ帳などのテキストエディタで編集して設定を行います。 編集は好みに合わせて自由に行ってください。 動作設定は JavaScript で記述されているため、文字や記号の書き方を間違えるとエラーが発生して動作しなくなる場合がありますのでご注意ください。

基本動作設定

全ステージの共通設定です。

life
自機の数です。ミスすると自機が1ずつ減り、0になるとゲームオーバーになります。1以上の整数を指定してください。
ball
ballK
ボール画像のURLを指定します。使用できる画像形式はGIFまたはPNGです。ball は通常時、ballK は貫通時のボールとなります。 画像サイズは双方とも 11×11 ピクセル固定です。
title
ゲーム開始時のタイトル画像のURLを指定します。画像形式は自由です。省略する場合は ""(空文字列)にします。
bonus
ゲームクリア後のボーナス画像のURLを指定します。画像形式は自由です。省略する場合は ""(空文字列)にします。
next
ゲームクリア後のボーナスページのURLを指定します。省略する場合は ""(空文字列)にします。
margin

ブロック画像下部の余白をピクセル単位で指定します。0以上の整数を指定してください。 デフォルトで 80 が設定されています。変更する場合は以下の点にご注意ください。

  • 通常 margin は少なくともパドルの縦サイズ以上の値を指定するようにします。
  • margin に 0 を指定すると、ゲーム画面の下部まで全面に背景を表示することができます。 その場合は、ブロック画像最下部のパドル移動エリアは、ブロックが生成されないように完全に空白にすることが必要です。 パドル移動エリア上にあるブロックは破壊できないため、ゲームがクリアできなくなってしまう場合があります。
debug
デバッグモードを設定します。0でOFF、1でONになります。 ONにするとボールが落ちなくなります。動作確認時にご利用ください。

ステージ設定

ステージごとの設定を行います。ステージの設定は少なくとも1つは必要です。設定例は次のようになります。

stage.push({                      // --- ステージ X ---
   fuku:    "fuku.png"            // ブロック画像
  ,bg:      "base.jpg"            // 背景画像(複数指定可)
  ,pdl:     "pdl.png"             // パドル画像
  ,kantuu:  2                     // 貫通弾の発動判定幅 (0:貫通弾OFF)
  ,speed:   3                     // ボールスピード(大きいほど速い)
  ,ok:      0.10                  // クリア達成の残ブロック数または割合
});

以上が1つ分のステージ設定となります。2つ以上のステージを設定する場合は、 これをコピー/貼り付けしてステージ設定を増やしてください。無制限に複数個設定することができます。設定項目の詳細は以下の通りです。

fuku
ブロック画像のURLを指定します。使用できる画像形式はGIFまたはPNGです。背景と異なり1つのみ指定が可能です。GIFアニメーションは使用できません。
bg

背景画像のURLを指定します。画像形式は自由です。背景画像は ; (セミコロン) で区切って複数指定することが可能です。指定できる画像の数は無制限です。指定例は以下の通りです。

"base.jpg; kao.gif; fuku2.png"

この例では base.jpg の上に kao.gif、次に fuku2.png が重ね合わせて表示されます。さらにブロック画像が一番上に重ね合わせて表示されます。 背景画像ではこのように、顔の表情を差分画像で表現したり、次ステージの服などを着せ替えゲームのように重ねて表示することが可能です。

pdl
パドル画像のURLを指定します。使用できる画像形式はGIFまたはPNGです。 おすすめの画像サイズは 60×8 ピクセルです。画像サイズは自由に指定することができますが、 極端に小さい画像や大きい画像を使用すると、異常動作の原因となります。
kantuu
貫通弾を発動する判定幅をピクセル単位で指定します。0以上の整数を指定してください。 パドルの中心でボールを打ち返すと貫通弾に変わり、ブロックを一度に大量に破壊できます。 大きい数を指定すると判定が広がり、貫通弾を発動しやすくなります。 0を指定すると貫通弾は発動しなくなります。
speed

ボールのスピードを指定します。 0.1 以上の数を指定してください。小数値での指定も可能です。 数が大きいほどスピードが速くなります。ブラウザに大きな負荷が掛かりますので、 数を大きくしすぎないようにご注意ください。スピードの目安は以下の式の通りです。

1秒間に進むピクセル数 = speed × 60
ok

ゲームクリア判定において、許容する残りブロック数または割合を指定します。 この指定を行うと、いくつかのブロックが残っていてもゲームクリアすることができます。 以下の A〜C いずれかのタイプで指定してください。

A. 1以上の整数 許容する残りブロックの数 (1個〜)
B. 0.01〜0.99 の小数 許容する残りブロックの割合 (1〜99%)
C. 0 許容なし(完全破壊が必要)

ブロックマップ設定

ブロックマップ生成ツールを使って生成されたデータはこの箇所に貼り付けます。 詳しくはブロックマップ生成ツールについてをご覧ください。

「戻る」のリンク部分

必要に応じて、戻り先のリンクを指定します。


Copyright © 2014 by みなみせい, All Rights Reserved.