Open na2hiro opened 9 years ago
以下は既に作成.
以下はビューアとは別物にすべきかも
詰め将棋などを作成できるサイトを作りたくて、Kifu-for-JSを調べていてこのIssueにたどり着きました。
盤面編集
JKFPlayerがそもそも編集モードをサポートしていないように見えますが、サポートしていますでしょうか。
試しにKifu-for-JSでpreset: "OTHER"
でPlayerを初期化し、state.player.shogi.flagEditMode = true;
で編集可能にして動作させようと試みました。
しかし、下記のJKFPlayer.prototype.inputMove
で呼び出されるNormalizer.normalizeMinimal
がeditModeに対応していないため、colorが強制的に書き換わってしまいます。
(Kifu-for-JSかjson-kifu-formatのどちらのリポジトリに対するコメントが適切だったかわかりませんでした :bow: )
ご質問いただきありがとうございます. JKFPlayerはJKFの再生と(将棋のルールに従った)入力だけを行うためのもので,盤面編集(ルール外移動)に対応しておらず,その予定もありません. 盤面編集はJKFPlayerから離れて将棋盤そのもののモデルである na2hiro/Shogi.js のメソッドを呼ぶほうが自然と考えています. 編集後のShogi.jsの局面から再度入力を行う場合は,その盤面をJKFPlayerコンストラクタに渡すことになると思います. このチケットはJKFPlayerを変更するのではなく,再生モードはJKFPlayer,編集モードはShogiを内部のモデルとするようにKifu for JSを変更することを意図したものです.
ちなみにこのチケットの進捗ですが,大枠はできているのですが細かい編集モード向けのボタン等のUIが定まっておらず放置気味になっています. ただ編集の要望があるということなので,シンプルな状態でもリリースしようかと思います.必要ならそこからforkしてカスタマイズしていただければと思います.
これで回答になっていますでしょうか.
JKFPlayerはJKFの再生と(将棋のルールに従った)入力だけを行うためのもので,盤面編集(ルール外移動)に対応しておらず,その予定もありません.
回答ありがとうございます。承知しました。
盤面編集はJKFPlayerから離れて将棋盤そのもののモデルである na2hiro/Shogi.js のメソッドを呼ぶほうが自然と考えています.
特定局面から開始するのはKifu-for-JSでpreset: "OTHER"
で指定すれば出来ることがわかりましたので、考え直すと私の欲しかった盤面編集とはpresetの状態(JSON)を作成するPlayerがあればいいという発想にたどり着きました。
再生モードはJKFPlayer,編集モードはShogiを内部のモデルとするようにKifu for JSを変更することを意図したものです.
なるほど。
Kifu-for-JSはJKFPlayerとShogi.jsを使ったビューア実装の一例と捉えて、編集モード用のKifu-for-JSを作成した方がいいのかな?と考えていましたが、編集モードはShogiを内部のモデルとする
という発想はありませんでした。作者ならどういう方向性で実装するのが自然と考えるのかを確認したかったのでコメント頂けて助かりました。
どうやって実現するか検討します。
ただ編集の要望があるということなので,シンプルな状態でもリリースしようかと思います.必要ならそこからforkしてカスタマイズしていただければと思います.
私の実現したいことはKifu-for-JSそのものでは欲しいUIが異なるため参考実装としての使い方になりますが、もし既にあるならリリースあるいはpull requestにして見える状態にして頂けると助かります。
編集の要望があるということなので,シンプルな状態でもリリースしようかと思います.必要ならそこからforkしてカスタマイズしていただければと思います.
このbranchをpushして頂くことは可能でしょうか。
すみません.
時間が取れておらず,整える余裕がありませんでした.editor
ブランチをpushしました.
ありがとうございます :bow:
盤上の駒のクリックやドラッグ等により,
などができるようにする.いつかやる.