TOP

Slidepuzzle

(C)2000/STUDIO Septigram.

スライドパズルのアプレット。他に何の芸もない。

遊びかた

スライド操作は、マウスでチップをクリックするか、カーソルキーを使う。

スライドパズル自体の説明は必要もないと思うけど、一応記述しておこう。

スライドパズルは、(行数×列数-1)個の高さと幅のそろった矩形チップとそれらを配置する枠で構成され、チップをスライドさせて数値順、あるいはチップ上に描かれた絵のとおりに並べることを目的とする。チップを行数×列数の枠からはみ出して移動させることはできない。

たとえば3×3のチップで構成される場合は、以下のようにして解く。

23
145
786

ここで、1のチップを上にスライドさせる。

123
45
786

ここで、4と5のチップを左にスライドさせる。

123
45
786

ここで、6のチップを上にスライドさせる。

123
456
78

これで完成。

パラメータ

このスライドパズルでは、以下のような項目をパラメータで制御できる。括弧内がパラメータのnameになる。パラメータは、html中のobjectタグ(あるいはappletタグ)の中に記述する。

行数(rows)

パズル面を構成する行数を指定する。指定しない場合は4。

列数(cols)

パズル面を構成する列数を指定する。指定しない場合は4。パズルのチップ数は行数×列数-1になる。

空白位置(blankpos)

チップを移動するための空白位置を指定する。数値で指定し、完成状態のパズルでどのチップが空白になっているかを示す。数値は1から行数×列数までの値を取る。初期値は行数×列数-1になる。

たとえば3×3のパズルで、空白位置に5が指定された場合の完成状態は、以下のようになる。

123
4 6
789
初期位置(initpos)

チップの初期位置を指定する。指定がない場合は、乱数で初期化される。

位置を完全に指定するパターン

","で区切られた数値の列。左上から右方向に1から順に番号付けする。空白部分は0にする。

たとえば、3行3列の場合のパラメータとパズル面の初期配置の関係は以下のようになる。

<param name="init" value="1,3,4,2,7,0,8,6,5" >
134
27
865
乱数を使用して初期化するパターン

"random:"とそれに続く数値で指定した場合は、その数値で初期化された乱数による初期化される。パラメータ指定がない場合は、webページが表示される毎に初期位置が変化するが、特定の数値で初期化する場合は毎回同じ配置になる。

パズル面に貼りつける画像(image)

パズル面に貼りつける画像を指定する。urlでjpegあるいはgif形式の画像ファイル名を指定する。指定がない場合は、数字が表示される。

解けたとき画面に表示する内容(complete)

パズルが解けたときに表示する内容を指定する。指定がない場合は、"complete"と文字列が表示される。

画像を表示するパターン

表示する画像をurlでjpegあるいはgif形式の画像ファイル名を指定する。

文字列を表示するパターン

urlでファイルが開けない場合は、指定された文字列をそのまま表示する。


TOP