アプレットの設定のしかた


記述例のうち、緑色の部分は解説なので、 HTMLファイルに含める必要はありません。

駒落ちや詰め将棋の指定、初形の指定方法については、 オプションの指定のしかたを参照してください。

棋譜解説なしの場合

  1. 勝田将棋盤プレイヤのクラスファイルをコピーします。
    アプレットを使用するHTMLファイルと同じフォルダ(ディレクトリ)に クラスファイルksbp2.classをコピーしてください。 必要なファイルはksbp2.classだけです。 駒や操作ボタンの画像はクラスファイルに含まれています。

  2. HTMLファイルにアプレットの設定を書き加えます。
    棋譜はアプレットのパラメータとして記述してください。
    詳しくはパラメータに棋譜を書く方法を参照してください。
    アプレット領域の高さ(height)を270程度にすると、解説の表示領域が無くなります。
    <html>
    <body bgcolor="#ffffcc">
    <applet code="ksbp2.class" width="450" height="270">
    <param name="1" value="7776">	<!棋譜>
    <param name="2" value="3334">
    	<!以下、棋譜の手数分だけパラメータを記述する>
    </applet>
    </body>
    </html>
    

棋譜解説付きの場合

  1. 勝田将棋盤プレイヤのクラスファイルksbp2.classをコピーします。
    「棋譜解説なし」の場合と同じです。

  2. HTMLファイルにアプレットの設定を書き加えます。
    解説文は指し手の次に : (コロンです。セミコロン;と間違えないようご注意。また1バイトのコード「:」で書いてください。2バイトの「:」では区切り文字と認識しません)で区切り、それに続いて文章を書きます。
    HTMLファイルの漢字コードはなるべくシフトJISコードを使ってください。

  3. 希望する解説表示領域の広さに合わせて、アプレットの高さ(height)を決めます。
    ただし、OSやブラウザによって、使用するフォントの大きさが異なりますので、 一度に表示できる行数も違ってきます。(表示可能な行数よりも多くの解説文を付けた場合は、スクロールして表示できるので、問題は無いと思います)
    高さ270にすると、前述のとおり、解説を表示しなくなります。
    高さ340にすると、Windows + Internet Explorer なら5行、 Windows + Netscape Communicator なら4行の表示ができます。 (IEの方が小さいフォントを使うので)
    <html>
    <body bgcolor="#ffffcc">
    <applet code="ksbp2.class" width="450" height="340">
    <param name="1" value="7776:1手目の解説をここに書く">	<!棋譜>
    <param name="2" value="3334">	<!解説の無い指し手には何も書かない>
    	<!以下、棋譜の手数分だけパラメータを記述する>
    </applet>
    </body>
    </html>
    

パラメータに棋譜を書く方法

アプレットのパラメータとして、以下の記述を手数分だけ書いてください。
棋譜解説なしの場合
<param="手数" value="指し手">

棋譜解説付きの場合
<param="手数" value="指し手:解説文">

オプションの指定のしかた

次のような形式でオプションを指定してください。
<param name="opt" value="xxx">	<! "opt"は小文字で書くこと>
valueの内容は、以下のとおりに小文字で書いてください。
value意味目的
k「先手・後手」の代わりに「下手・上手」と表示する。駒落ち
t「先手・後手」の代わりに「詰方・玉方」と表示する。
最初に「総手数」を表示しない
詰め将棋
g一手目を後手(または上手、玉方)が指す。
省略時は一手目を先手(または下手、詰方)が指す。
駒落ち、後手番の次の一手問題
ktは同時に指定できません。
V2.0では、V1.2までで必要だったiオプションは不要になりました。 初形の指定(i0, i1, ... i9:後述)が1つでも含まれる場合は、 自動的にiオプションが指定されたものとみなします。 なお、V2.0でiオプションを指定しても、無視されるだけで害はありません。

オプションの指定例

駒落ちの棋譜を表示する場合(駒落ちモード)
<param name="opt" value="kg">

詰め将棋を表示する場合(詰め将棋モード)
<param name="opt" value="t">

先手の手番の初形を指定したい場合(次の一手問題など)
"opt"指定パラメータは不要

後手の手番の初形を指定したい場合(次の一手問題など)
<param name="opt" value="g">

初形の指定のしかた

次のような形式でオプションを指定してください。
i1(盤の一段目)〜i9(盤の九段目)のvalueは必ず9文字で、 1文字が将棋盤の1つのマス(左から順に9筋、8筋…)に対応します。
i0のvalueは字数制限は無く、大文字は先手の持駒、小文字は後手の持駒となります。 同種の駒2枚以上が持駒になっている場合は、同じ文字を枚数分書いてください。 例えば「先手歩2枚、後手歩3枚」ならvalue="FFfff"となります。
<param name="i1" value="xxxxxxxxx">	<! 9一〜1一>
<param name="i2" value="xxxxxxxxx">	<! 9二〜1二>
<param name="i3" value="xxxxxxxxx">	<! 9三〜1三>
<param name="i4" value="xxxxxxxxx">	<! 9四〜1四>
<param name="i5" value="xxxxxxxxx">	<! 9五〜1五>
<param name="i6" value="xxxxxxxxx">	<! 9六〜1六>
<param name="i7" value="xxxxxxxxx">	<! 9七〜1七>
<param name="i8" value="xxxxxxxxx">	<! 9八〜1八>
<param name="i9" value="xxxxxxxxx">	<! 9九〜1九>
<param name="i0" value="xxxx">	<! 持駒>
i0〜i9を省略した場合は、対応する横一列分のマス目や駒台に駒が存在しないことを表します。
先手の駒後手の駒意味
.(ドット)駒が置かれていないマス目
FfFは「歩」の頭文字
IiIは「香」の動きと字形の連想
YyYは「桂」の動きと字形の連想
GgGは「銀」の頭文字
KkKは「金」の頭文字
XxXは「角」の動きと字形の連想
HhHは「飛」の頭文字
OoOは「王」の頭文字
Ttと金Tは「と金」の頭文字
Jj成香Jはアルファベット順でIの次の文字
Zz成桂Zはアルファベット順でYの次の文字
Nn成銀Nは「成銀」の頭文字
UuUは「馬」の頭文字
RrRは「竜」の頭文字
なし*残りの駒全て(詰め将棋で玉方の持駒指定に使う)

初形の指定例

飛香落ちの場合
<param name="opt" value="kg">
<param name="i1" value="iygkokgy.">
<param name="i2" value=".......x.">
<param name="i3" value="fffffffff">
<param name="i7" value="FFFFFFFFF">
<param name="i8" value=".X.....H.">
<param name="i9" value="IYGKOKGYI">
<! 以下、棋譜を記述>

歩三兵の場合
<param name="opt" value="kg">
<param name="i1" value="....o....">
<param name="i7" value="FFFFFFFFF">
<param name="i8" value=".X.....H.">
<param name="i9" value="IYGKOKGYI">
<param name="i0" value="fff">
<! 以下、棋譜を記述>

詰め将棋の例
<param name="opt" value="t">
<param name="i1" value=".......oi">
<param name="i3" value="......K..">
<param name="i0" value="G*">
<param name="1" value="0332">
<param name="2" value="2112">
<param name="3" value="3323">

対局者名の指定のしかた

先手(または下手)の名前の指定
<param name="player1" value="▲先手対局者名">
後手(または上手)の名前の指定
<param name="player2" value="▲後手対局者名">
対局者名には漢字を使用できますが、 その場合はなるべくシフトJISコードを 使ってください。
EUCを使った場合、WindowsNT + IE3.0の環境で漢字が正常に表示されないようです。

ヘルプページの指定のしかた

アプレットの「HELP」ボタンを押した時に別ウインドウにHTML文書を表示します。

  1. 何も指定しない場合は、 http://www.kcat.zaq.ne.jp/katsuda/ksb/help/help220.htmlを表示します。
  2. 表示する文書を指定する時は、以下のようなパラメータを与えてください。
    <param name="help" value="ページの指定">
    「ページの指定」は例えば、http://www.foo.ne.jp/bar/help.htmlのようなURLです。 アプレットを含むHTML文書と同じディレクトリ(フォルダ)に 置いてある文書の場合は、パス名を省略して単に、help.htmlと書くだけでもOKです。 勝田将棋盤を利用して、 インターネットに接続しなくても実行可能な「棋譜データ集」を配布する時は、 この方法が役に立つと思います。

開始・終了メッセージの指定のしかた

アプレット開始時に表示するメッセージは、以下のように指定できます。
何も指定しない場合は「勝田将棋盤V2.3」と表示します。
<param name="start" value="開始メッセージ">
棋譜の最後まで表示し、さらに駒を進めるボタンを押した時に表示するメッセージは、 以下のように指定できます。
何も指定しない場合は「までxx手」(xxの部分は総手数の数字)と表示します。
「までxx手で投了」「までxx手で詰み」「まで指し掛け」などを表示したい場合は、 このパラメータを使ってください。
<param name="end" value="終了メッセージ">

開始時の手数表示を変更する方法

通常は初手を「1手目」と表示しますが、これを1以外に変更できます。
<param name="startcount" value="手数">
例えば、value="25" と指定すると、初手を「25手目」と表示します。
初形を指定して途中図から始まる棋譜を表示する時に、 「1手目」と表示するのは変なので、この機能を追加しました。

指定局面へ駒を進めるボタンの作り方

指定した手数の局面まで、一気に駒を進めることができます。
<APPLET CODE="ksbp2.class" WIDTH="450" HEIGHT="340" NAME="ksb">
(ここにパラメータが入るが、略す)
</APPLET>
<form>
<input type="button" value="仕掛け(26手目)" onClick=ksb.go(26)>
<input type="button" value="急所(78手目)" onClick=ksb.go(78)>
</form>
APPLETタグの中でアプレットに名前を付け、ボタンを押した時にそのアプレットの go(整数)という関数を呼び出します。
上の例では、ksbという名前を付けていますが、他の名前でも構いません。 もし、1ページ中に2つ以上のアプレットを配置する場合は、 それぞれに違う名前を付けてください。(ksb1, ksb2, ... のように)

初期配置で指定した駒の周囲を目立つ色に塗る方法

「次の一手」問題を表示する時などは、初期配置でも、最後に動かした駒を目立つように表示する方が見やすくなると思います。
<param name="hot" value="位置">
目立たせたい駒の位置を指定してください。 例えば value="76" ならば、初期配置で「7六」の桝目を目立つ色に塗ります。

起動時に自動的に指定局面や最終局面まで駒を進める方法

2つ上の項目の「指定局面へ駒を進めるボタンの作り方」と似ていますが、上の機能はJavaScriptを組み合わせてボタンを作る方法でした。
それに対して本項目の機能は、閲覧者がボタンを押さなくても自動的に指定局面まで駒を進めるものです。
<param name="go" value="手数">
例えばvalue="10"ならば、自動的に10手目の局面を表示します。
value="-1"ならば、最終局面を表示します。
読み込み時・再読み込み時に初期配置(1手目を指す前の状態)ではなく、何手か進んだ局面にしたい時に使います。

指し手の表示で「左・右・直・上・引・寄・打・行・成・不成」を表示する方法

以下の例のように、駒の動きを示す数字の後ろに「左」「右」などを表す文字(ここでは修飾文字と呼ぶことにします)を追加してください。

<param name="1" value="4958R:▲5八金右(右の金を5八へ)">
<param name="2" value="4152L:△5二金左(左の金を5二へ)">
修飾文字表示意味
LLeft(Hidariの"H"にすると「引」と区別できないので)
RRight
SSugu
AAgaru
HHiku
YYoru
IIku(Yukuの"Y"にすると「寄」と区別できないので)
UUtsu
Z不成naraZu(「成」も"N"なので混乱を防ぐため)
「成」はV2.2以前と同様に、* を付ければ表示します。
修飾文字は大文字で書いてください。修飾文字は2つ以上付けることもできます。
例えば、RH と付ければ「右引」、HAZ なら「左上不成」、I* なら「行成」と表示します。
(注意1)勝田将棋盤は修飾文字が正しいかどうかを判断していません。LR と付ければ「左右」のようにあり得ない表示も行ないます。
(注意2)V2.2以前は駒を打った時に「打」のが不要な時でも強制的に「打」を表示していましたが、V2.3以降では U を付けなければ「打」と表示しません。 この点のみ、V2.2以前と互換性がありません。