viscuit-save viscuit-save

 ビスケットで作る宝石消しゲーム

しっかり遊べるパズルゲームもビスケットで作れます。同じ絵柄をそろえて消すパズルゲームだよ。
自分のアイデアで自分オリジナルのパズルゲームを作ってみよう!
※北川先生の著作物だということをご理解のうえ、閲覧ください。

全体の設計図 

何を作るのか、ざっくりイメージしよう

このような流れを作っていきます。イメージしてください。
 準備1.設定をしよう。
 準備2.絵を描こう。今回は18個だから頑張れ!
 準備3.絵を配置しよう。画面全体に置くよ。
 1.宝石を宝石箱から出そう
 2.宝石を落とそう。下の星と入れ替えだ。
 3.宝石を3つそろえて消そう
 4.宝石を動かそう
 5.コインを動かしてスコアに変えよう
 6.宝石を十字にそろえてコイン3倍
 7.制限時間を付けてみよう
 8.むずかしさを調整してみよう

一気に作らず、一つの区切りで動きが間違っていないか確認しながら進めよう。
間違ったまま進めると直すのが大変になります。

どのくらい進んだか、チェックを入れながら進めよう!

jewel宝石消しゲーム進捗管理表も用意してあります。
(pdfファイル)
プリントアウトして確認しながら進めよう。


ページの先頭へ戻る
戻る

設定をしよう 

 まずは設定を決めておく

背景の色を変えてみよう。どんなゲームにするか?イメージしてそれにあった色にすると楽しいよ。
必ず設定してほしいのはマス目の細かさで、いちばん粗くしましょう。
右上の四角で囲われた下段のスライダーをいちばん右にします。
中央右側上段のループ設定は、左右のループを許可、上下のループも許可とします。
右上上段のウサギとカメはプログラムの進行速度です。カメ側で遅くなり、ウサギ側で早くなります。
なお、これら設定は後からでも変更できます。

setting

確認しよう

 マス目はいちばん粗くなっているか?
 左右にループするようになっているか?


ページの先頭へ戻る
戻る

絵を描こう 

とりあえず用意するのはこれら18個の絵

すべての絵は1マスの中に納まる大きさで描こう
 勝ちアイコンだけは派手でもいいけどね

parts1 4種類の宝石はゲーム中に消そう!
宝石を消すと星になるよ。
星の所に宝石が下りてくるよ。
宝石は宝石箱から出てきて、宝石箱は時間が来るとタイル2に変わるよ。
コインは宝石を消したときのごほうびだ。
タイル1はタイマーの通り道としても使います。タイマーは制限時間用に動き回るよ。

parts2 スコア0と1は点数を2進数でカウントし、スコアボード上に表示されます。
時計0と1は制限時間用に使い、これも2進数でカウントするよ。
アイコンは自分のマークを描こう。これは区切りにも使います。
勝ちアイコンはスコアがいっぱいになったときに表示され、 ゲームオーバーは制限時間がいっぱいになったときに表示されるよ。

少し解説
宝石類:消すものなので、何か好きなものを4種類描いてみよう。
    動物、植物、魚類、乗り物、食べ物、スイーツ、アクセサリー、武器、文房具、
    等々なんでもいいよ。
星:宝石を消したときに、次の宝石を受け入れるための印なのであまり重要ではないです。
宝石箱:宝石が出てくるところなので、動物なら巣、植物なら花びん、食べ物ならお皿、
    のように出てくるものが元々いるところ、であればいいよ。
タイル:壁用タイルと、宝石箱が替わるタイルの2種類。どちらもタイマーの通り道としての
    役目があるよ。

確認しよう

18種類の絵が描けているか?
それぞれの絵は1マスの範囲からはみ出ていないか?(勝ちアイコン以外)


ページの先頭へ戻る
戻る

絵を配置しよう 

少し大変だけど、絵を並べよう

parts01

上の図のように配置しよう。特に理由が無ければこの通りに配置してほしい。
左の列の時計、スコアボードの上にタイル1と左端にアイコン、右上にもアイコンを配置すること。
左から2列目にタイル1、右から2列目に宝石箱を並べる。このように並べないとコインやタイマーの動きがおかしくなってしまうので注意が必要だ。

確認しよう

 画面上、いちばん左にタイル2、横一列に宝石箱、いちばん右にアイコンを並べたか?
 画面左、左から2列目の一番上に宝石箱、その下にタイル1を並べたか?
 画面右、右から2列目は上から宝石箱を並べ、一番下にスコアボードを配置したか?


ページの先頭へ戻る
戻る

①宝石を降らせよう 

宝石が出てくる仕掛けを作ろう

上に並べた宝石箱から宝石が出てくる仕掛けを作ります。
まずはメガネを4つ用意しよう。 putjewels



左レンズはメガネ4つとも同じだよ。

右レンズは4種類の宝石で星を置き換えよう。

メガネの作り方

4つのメガネとも、左レンズは同じ。右レンズは左レンズの星が宝石に置き換わったもの。
左レンズ:宝石箱と星を縦に並べる
右レンズ:宝石箱と宝石1~4を縦に並べる


メガネのはたらき

最初の配置でゲームのプレイエリア(8x6マス)を星で埋めつくしてあるので、宝石箱の下に星があります。
メガネの左レンズの状態と一致するので、宝石箱の真下の星が宝石に変わります。

ビスケットは、同じ条件(左レンズ)のメガネが複数あった場合、どれが適用されるかはランダムです。なので、毎回違う宝石が出てきます。


動きを確認しよう

 宝石箱から宝石が出てきたか?
 宝石箱から出てくる宝石は毎回バラバラか?


ページの先頭へ戻る
戻る

②宝石で画面を埋めつくそう

宝石が下りてくる仕掛けを作ろう

宝石箱から出てきた宝石を、下に移動させる仕掛けを作ります。
これは、宝石をそろえて消したあと、その上の宝石を下におろす役割もあります。
まずはメガネを4つ用意しよう。
falljewels


左レンズは上に宝石、下に星。

右レンズは上に星で、下に宝石。
左レンズを上下反対にした形だよ。

メガネの作り方

4つのメガネ共に左レンズは上に宝石、下に星。右レンズは左レンズの上下反対。
左レンズ:宝石と星を縦に並べる
右レンズ:星と宝石を縦に並べる


メガネのはたらき

下に星があれば宝石が1マス下がります。元の宝石の位置が星に置き換わります。

置き換わった後、その星の上に宝石があればその宝石が1マス下がります。星の上が宝石箱なら新しい宝石が出てきます。


動きを確認しよう

 宝石4種類とも下に星があれば1マス下に移動するか?
 宝石が下に移動したとき、元の位置には星が置かれるか?


ページの先頭へ戻る
戻る

③宝石を消す仕掛けを作ろう

3つ揃ったら、その真ん中をタッチして消えるようにしよう

メガネをヨコ消し用に4つ、タテ消し用に4つ用意しよう。
揃った宝石を星に変えるメガネを作るんだ。 clear-h

ヨコと同じように、タテも作ろう。
clear-v

メガネの作り方

ヨコ3個を消すメガネは、宝石の種類違いのメガネを4個作ります。
左レンズ:宝石をヨコに3個並べ、真ん中にタッチボタンをのせる
右レンズ:星をヨコに3個並べ、真ん中にコインを重ねる。宝石があった位置に星を置きましょう。

タテ3個を消すメガネは、宝石の種類違いのメガネを4個作ります。
左レンズ:宝石をタテに3個並べ、真ん中にタッチボタンをのせる
右レンズ:星をタテに3個並べ、真ん中にコインを重ねる。宝石があった位置に星を置きましょう。


メガネのはたらき

宝石が3つ揃って、真ん中の宝石をタッチするとその宝石が星に変わります。
ごほうびにコインを一枚のせておきましょう。

左のレンズに並べたパターンで消せるので、やろうと思えば4つ並んだ時なども作れます、やりだしたら大変ですけど。 なお、十字に消すと3倍もらえる仕掛けを⑥項で追加します。


動きを確認しよう

 宝石がヨコに3個そろい、その真ん中をタッチしたら宝石が星に換わったか?
 ↑これを4種類とも確認したか?
 宝石を消したあと、コインが出てきたか?


ページの先頭へ戻る
戻る

④宝石を動かせるようにしよう

宝石を左右入れ替える仕掛けを作ろう

ビスケットには残念ながらドラッグの機能がありません。「動かしたい方向」を指示できないので、「右の宝石と入れ替える」という限定した動かし方で我慢しましょう。
ですが、操作に制限がある方がゲームとしては楽しかったりします。

それでは、4種類の宝石を全て入れ替えるパターンの数だけメガネを用意します。
1⇔2、1⇔3、1⇔4、2⇔3、2⇔4、3⇔4、宝石の組み合わせはこの6パターンで、左右違いで×2、全部で12個のメガネが必要だよ。

change1x2


宝石1と宝石2を入れ換える仕掛けだよ。




宝石2と宝石1を入れ換える仕掛けだよ。
change1x3


宝石1と宝石3を入れ換える仕掛けだよ。




宝石3と宝石1を入れ換える仕掛けだよ。
change1x4


宝石1と宝石4を入れ換える仕掛けだよ。




宝石4と宝石1を入れ換える仕掛けだよ。
change2x3


宝石2と宝石3を入れ換える仕掛けだよ。




宝石3と宝石2を入れ換える仕掛けだよ。
change2x4


宝石2と宝石4を入れ換える仕掛けだよ。




宝石4と宝石2を入れ換える仕掛けだよ。
change3x4


宝石3と宝石4を入れ換える仕掛けだよ。




宝石4と宝石3を入れ換える仕掛けだよ。

メガネの作り方

宝石2個を入れ換えるメガネを2個作り、それを宝石の組み合わせ違いで6組作ります。
左レンズ:宝石を2個並べ、左の宝石にタッチボタンをのせる
右レンズ:左レンズと宝石の並べ方を反対にする


メガネのはたらき

タッチした宝石とその右隣りの宝石が入れ替わります。すべての組み合わせを作ることでプレイエリアのどの宝石も動かせるようになります。


動きを確認しよう

 宝石1と宝石2が並んでいるとき、宝石1をクリックすると宝石2と入れ替わるか?
 宝石2と宝石1が並んでいるとき、宝石2をクリックすると宝石1と入れ替わるか?
 宝石1と宝石3が並んでいるとき、宝石1をクリックすると宝石3と入れ替わるか?
 宝石3と宝石1が並んでいるとき、宝石3をクリックすると宝石1と入れ替わるか?
 宝石1と宝石4が並んでいるとき、宝石1をクリックすると宝石4と入れ替わるか?
 宝石4と宝石1が並んでいるとき、宝石4をクリックすると宝石1と入れ替わるか?
 宝石2と宝石3が並んでいるとき、宝石2をクリックすると宝石3と入れ替わるか?
 宝石3と宝石2が並んでいるとき、宝石3をクリックすると宝石2と入れ替わるか?
 宝石2と宝石4が並んでいるとき、宝石2をクリックすると宝石4と入れ替わるか?
 宝石4と宝石2が並んでいるとき、宝石4をクリックすると宝石2と入れ替わるか?
 宝石3と宝石4が並んでいるとき、宝石3をクリックすると宝石4と入れ替わるか?
 宝石4と宝石3が並んでいるとき、宝石4をクリックすると宝石3と入れ替わるか?


ページの先頭へ戻る
戻る

⑤コインが出たらスコアに加算

コインをスコアにする仕掛けを作ろう

宝石をそろえて消して出てきたコインは、この時点では出たっきりで邪魔です。
コインは右に動かして、右側にタテに並べた宝石箱に沿って下に降りるようにします。
スコアボードの上に来たらスコアを加算します。

coin2score


コインは基本的に右に動くよ



タテに並んだ宝石箱の上では下に動くよ



スコアボードの上に来たとき、0なら1にするよ


スコアが1のときは0にしてコインを左に繰り上げるよ


コインが繰り上がりを繰り返してアイコンの上に来たら、勝ちアイコンを表示しよう!

メガネの作り方

1つめのメガネ…
左レンズ:コインを置く
右レンズ:1マス右にコインを置く

2つめのメガネ…
左レンズ:宝石箱をタテに並べ、上の宝石箱にコインを重ねる
右レンズ:宝石箱をタテに並べ、下の宝石箱にコインを重ねる

3つめのメガネ…
左レンズ:コインとスコアボードをタテに並べ、スコアボードにスコア0を重ねる
右レンズ:スコアボードを左レンズと同じ位置に置き、スコア1を重ねる

4つめのメガネ…
左レンズ:コインとスコアボードをタテに並べ、スコアボードにスコア1を重ねる
右レンズ:スコアボードを左レンズと同じ位置に置き、スコア0を重ねる。コインは1マス左に置く

5つめのメガネ…
左レンズ:コインとアイコンをタテに並べる
右レンズ:左レンズのアイコンの位置に勝ちアイコンを置く


メガネのはたらき

1つ目のメガネは出てきたコインを右に動かす仕掛けです。

2つ目のメガネは、右に行ったコインが下に移動する仕掛けです。右側の宝石箱がタテに並んだところだけに適用されます。

3つ目と4つ目のメガネは下に行ったコインがスコアに変わる仕掛けです。スコアが0なら1に変え、スコアが1なら0にして繰り上げするためコインを左に動かします。
なお、繰り上げた先のスコアによってこの3つ目と4つ目のどちらかのメガネが働くので、3つ目のメガネが働きコインが消えるまで繰り返されます。

5つ目のメガネはスコア満点を表示するものです。256点取ると勝ちです。
2進数のカウントで11111111点取った後にコインを取るとそれ以上スコアを書けないのでこのようにします。


clear-x
プログラミングのテクニック

2進数は一番下の位が1の位、二ケタ目が2の位、三ケタ目が4の位、その次は8の位、次が16の位、32の位、64の位、最後の八ケタ目は128の位となります。ケタが上がるたびに2倍されます。

やや難しい話になりますが、普段我々が使っている数は10進数です。
1の位、10の位、100の位、とケタが上がるごとに10倍されます。
1の位は1がいくつあるかを表します。10の位は10がいくつあるかを表します。100の位は100がいくつあるか表します。

例えば256は100が2個と10が5個と1が6個あると言うことを表しています。 さらに一歩踏み込むと、10の2乗が2個、10の1乗が5個、10の0乗が6個あると言えます。

ここで、2進数の11111111は10進数のいくつか?考えてみましょう。
8ケタあるので、2の0乗が1個、2の1乗が1個、2の2乗が1個、3乗が1個、4・5・6・7乗がそれぞれ1個ということを表しています。
2の0乗は1、どんな数でも0乗は1です。べき乗はその数を何回かけたかを表す数字なので、例えば2の3乗は1に2を3回かけたということになります。1×2×2×2です。つまり8です。2の0乗は、1に2を0回かけたということなので、1となります。

話を戻すと、2進数の11111111は1+2+4+8+16+32+64+128ということになるので、計算すると255です。

このように、n進数は1ケタ目がnの0乗の位、2ケタ目がnの1乗の位、3桁目がnの2乗の位、xケタ目はnの(x-1)乗の位ということです。難しそうですが、一度理解してしまえば大したことではないことに気が付くはずです。

なお、2進数の理解に役に立ちそうなプログラムも作ってあります。 slot
右の画像をクリックすると実行します。

下の方にある1~9までの数字をどれかクリックすると、クリックした数字の数だけ1が出現し、2進数で加算されていきます。

上にある「10進数」と書かれたところに出る数字の足し算結果と、下にある「10進数」の足し算の結果が同じになることが確認できます。


動きを確認しよう

 コインは右に動くか?
 右に動いたコインは宝石箱に沿って下に動くか?
 コインはスコアに変わるか?0が1になるか?
 コインはスコアに変わるか?1が0になるか?そのとき、コインは1マス左に移動するか?
 スコアが11111111のときコインがアイコンの上に来ると勝ちアイコンに変わるか?


ページの先頭へ戻る
戻る

⑥高得点のチャンス!十字に消せばコイン3枚

5枚まとめて消してコインを3枚出す仕掛けを作ろう

《③宝石を消す仕掛けを作ろう》で作ったヨコ消しメガネとタテ消しメガネを合体させたようなメガネを作ります。
メガネは種類違いで4個、内容は同じだよ。

clear-x

メガネの作り方

4つのメガネ共通で、左レンズが宝石の種類違いになります。宝石と星の数は必ず同じにしよう。
左レンズ:宝石を十字の形に5個置き、真ん中にタッチマークを乗せる
右レンズ:星を十字の形に置き、左上、真ん中、右下に合計3枚のコインを置く


メガネのはたらき

十字の形に宝石5個並んだときに真ん中をタッチすると、宝石5個が星5個に変わります。
同時に、コインを3枚出しますコインの配置は、右側の宝石箱で重ならないようにしています。重なると宝石箱を突き抜けてループしてしまいます。これは、タテに並んだ宝石箱のメガネにはコイン1枚だけ動かすようになっているためです。

ゲームを進めていくとコインが重なることが度々起こりますが、これは仕方のないこととしても、必ず重なってしまう出し方にすることはないでしょう。


動きを確認しよう

 十字に5個並んだ宝石の真ん中をタッチすると宝石5個は星5個に変わるか?
 そのとき、コインが3枚出てくるか?
 上二つを4種類すべての宝石で確認したか?


ページの先頭へ戻る
戻る

⑦ゲームにハラハラを!制限時間を付けてみよう

タイマーを進め、カウントし、フルカウントになったら宝石を出なくする仕掛け

ストップウォッチの形をしたタイマーは常に右に進み、ループした回数を制限時間にします。
時計0と時計1で2進数でカウントするよ。
フルカウントになったらタイマーは上に行き、宝石箱をタイル2に変えて宝石を出なくするんだ。
下の図を参考に、メガネを全部で7個並べよう。

timer1


タイマーを右に動かすよ



時計をカウントしたあと、タイマーを画面下に動かすよ
tclock


時計のカウントを0→1にするよ



時計のカウントを1→0にして上に繰り上がるよ
timer2


宝石箱をタイル2に変えるよ



タイル2に沿って上に行くよ
timout


右上のアイコンに到達したらゲーム終了だよ

メガネの作り方

1つめのメガネ…
左レンズ:タイマーを置く
右レンズ:タイマーを1マス右に置く

2つめのメガネ…
左レンズ:タイル1をタテに並べ、上のタイル1にタイマーを重ねる
右レンズ:タイル1をタテに並べ、下のタイル1にタイマーを重ねる

3つめのメガネ…
左レンズ:時計0を置き、そこにタイマーを重ねる
右レンズ:時計1を置き、1マス右にタイマーを置く

4つめのメガネ…
左レンズ:タイマーを置き、1マス右に時計1を置く
右レンズ:タイマーを左レンズに対し1マス上に置き、時計1は時計0に置き換える

5つめのメガネ…
左レンズ:タイル2を置き、そこにタイマーを重ねる 1マス右に宝石箱を置く
右レンズ:タイル2を2個並べ、右側のタイル2の下にタイマーを置く

6つめのメガネ…
左レンズ:タイル2をタテに並べ、下のタイル2にタイマーを重ねる
右レンズ:タイル2をタテに並べ、上のタイル2にタイマーを重ねる

7つめのメガネ…
左レンズ:アイコンを置き、そこにタイマーを重ねる
右レンズ:勝ちアイコンを置く

メガネのはたらき

タイマーを右に進め、ループさせる。
時計0と重なったら時計1に変えて右のマスへ移動。
時計1の左横に来たら時計0に変えて1マス上に移動させる。ここで、時計1の左横はループして画面のいちばん右です。
時計の右横はタイル1なので、カウントした後はタイマーを画面下まで移動させる。
時計のカウントが終わったらタイル2に沿って上へ移動する。
宝石箱の左横にタイマーが来たら宝石箱をタイル2に変える。変えた後、タイマーは1マス下を右に動く。
宝石箱をすべてタイル2に変えると、アイコンとタイマーが重なります。その時点でゲームオーバーを表示します。


動きを確認しよう

 タイマーは右に動いてループして戻ってくるか?
 時計0と時計1でループした回数をカウントするか?
 カウントした後タイマーは画面下に下りるか?
 フルカウントの後タイマーは画面上に移動するか?
 タイマーは宝石箱をタイル2に変えるか?
 タイマーが画面右上のアイコンと重なるとゲームオーバーを表示するか?


ページの先頭へ戻る
戻る

⑧ゲームの難しさを調整しよう

difficlty

ゲームの制限時間、コインの出る数、スコアの桁数などを自分好みにしよう

制限時間を長くしたり短くしたりするにはどうしたらいいんだろう?
コインの出る枚数を変えるにはどうしたらいいかな?よこ3個並んだときには2枚もらえるようにしてみよう。
スコアの桁数を減らしたり増やしたりして勝ちアイコンの出やすさを変えてみよう。

ゲームの制限時間とスコアの桁数は画面の配置で変えられます。
コインの枚数は《③宝石を消す仕掛け》でコインの枚数を変えてみよう。

動きを確認しよう

 制限時間を長くしたり短くしたりできたか?
 コインの出る枚数を変えられたか?
 スコアの桁数を増やしたり減らしたりできたか?


ページの先頭へ戻る
戻る