-1

私はアンドロイドのチェスゲームを作ろうとしています。私はすでに、次のようなテキストベースの UI で動作するエンジンを持っています。

bR bN bB bQ bK bB bN bR 8
 bp bp bp bp bp bp bp bp 7
    ##    ##    ##    ## 6
 ##    ##    ##    ##    5
    ##    ##    ##    ## 4
 ##    ##    ##    ##    3
 wp wp wp wp wp wp wp wp 2
 wR wN wB wQ wK wB wN wR 1
  a  b  c  d  e  f  g  h
White's move:

この 2D 配列をグラフィカル UI に変換したいと思います。すべての移動は正しく機能し、移動が成功したかどうかにかかわらず、結果またはエラーを出力します。グリッドビューのようなものになることはわかっています。私はコードを探しているのではなく、一種のアルゴリズムまたはビューでこの 2D 配列を変換できるプロセスを探しています。たとえば、ポーンを移動する e2 e4 は次のようになります

 bR bN bB bQ bK bB bN bR 8
 bp bp bp bp bp bp bp bp 7
    ##    ##    ##    ## 6
 ##    ##    ##    ##    5
    ##    ## wp ##    ## 4
 ##    ##    ##    ##    3
 wp wp wp wp    wp wp wp 2
 wR wN wB wQ wK wB wN wR 1
  a  b  c  d  e  f  g  h
Black's move:

2D 配列のデータを使用して、移動が成功した後でボードを再描画したいと考えています。上記のボード データは、data 配列に格納されます。

4

1 に答える 1

0

途中まで行くことを考えたことはありますか?

新しい UTF8 印刷ストリームを作成します。

PrintStream out = new PrintStream(System.out, true, "UTF8");

各チェスの駒の UTF8 コードのリストはこちらを参照してください。

これらのコードをカバーするフォントが必要な場合があります - Monospaced 13 は私にとっては問題なく動作することがわかりました。

これは、私がしばらく前に書いたいくつかの実験的なコードの例です - モノスペースの方が見栄えがします:

    ♜|♞|♝|♚|♛|♝|♞|♜
    —+—+—+—+—+—+—+—
    ♟|♟|♟|♟|♟|♟|♟| 
    —+—+—+—+—+—+—+—
    +|*| | | | | | 
    —+—+—+—+—+—+—+—
    +| |*|+|*| | |♟
    —+—+—+—+—+—+—+—
    +| | |♙| | |*|+
    —+—+—+—+—+—+—+—
    +|*| | | | | | 
    —+—+—+—+—+—+—+—
    ♙|♙|♙| |♙|♙|♙|♙
    —+—+—+—+—+—+—+—
    ♖|♘|♗|♔|♕|♗|♘|♖
于 2013-04-17T14:49:17.543 に答える