滅するまでの記録

滅するまでの記録

滅するまでの記録です

プログラミング学習日記 2026/02/10 牌の表示

 とっとと画面を表示したいが、そのためには配牌をしてTehaiを作らないといけないということで、Haipaiメソッドを書く。が、えーとAppendは良いとしてYamaからそれを消去するのはどうすんだったかな?

 

 もちろんKiroに聞く。あ・・

・Forの内部は,じゃなくて;だった

・Yamaは初期化の段階でシャッフルされてるので頭から抜いていけば良いやと思ったけど、Yamaからの消去は14枚配った後にIndex14からのみで再代入すればいいじゃないと!と。なるほどw

・別解としてループ毎にYamaのIndex1からに再代入して取り出しは常にそのIndex0にするというのも。なるほど!

 というか、スライスの任意のIndexを抜き出す関数を書くべきですよね。今回は書かないけど(組み込みであると思ったので)。

 

 続いて画面設計だけど・・とりあえず二人打ち形式で画面を作るか・・。KawaにTehaiのBaraとGroupをそれぞれ全角スペースを追加して表示すれば・・。ま、大体こんな感じじゃないか?ということでKiroに渡して添削をお願いする

 

 添削結果。

・タイポはとりあえずスルーして・・

・あ、そうだAppendってスライスに対して使うんだったw

Rune型はString(Rune)で文字列に変換して使う

・文字列の合体は+で出来る(なんか笑う)

・文字列の再代入は+=で出来る(なんか感動的)

 ま、大筋間違ってないので良し!

 

 ところで・・Bubble teaで気になってるのが「枠線」の描画機能。牌の表示なんてまさにこの為にあるって感じじゃないか?書き方を聞いてみる。

 

 なるほどなるほど

 

 で、読んでて思ったんですけど・・これって文字が表示されてるコマ内に枠が表示されるんじゃなくて、隣接するコマに枠が描画されるけどBubble teaの機能で細かく指定しなくてもキレイに文字列として出力されるってことじゃないのか?

 

 とりあえず画像を表示しないと始まらないのでとっとと動かすためのメソッドを整えて・・

 

 差し当たってのModelインスタンスを作って

 

 実行、おおっ!これはねぇ・・もうプログラミング学習始めて4年くらい?もっとかな?経つけど、この一発目動いたときには嬉しいねぇ!

 

 早速気になっていた枠線の表示。あ〜やっぱりね!メッセージ表示とかには良いけど

 

 というわけで、もう諦めてバックグラウンドを白、文字を黒にする方が牌っぽいなと

 

 今までみたいにkawaに文字列で入れてから装飾するのは通用しないので、別で.Builderを作っておいて、ここにイテレータで追加する時に.Renderしたものを放り込み、最後にS.Builderに合体させるという方式にせねば。

 この書き方はちょっと覚えておかないとな・・Builderで作ったものに.String()で文字列に出来るって事で、これは最後にReturnで返す時にも使われてるけど

 

 あ、うーん・・いい感じなのに惜しい!なんで文字が数ドット右にはみ出すのかなぁ

 

 Kiroに教えてもらって設定を変えたけど・・いや、これじゃないって感じで

 

 Paddingってので余白を微調整できると言うけど

 たった1増やすだけでこうなる

 

 色々とやったけど駄目で・・これで行くしかないか〜(-_-;)

 

 とりあえず表示できるようになったので、後はもう状態遷移を設定して、メニューを考えて実装するだけ、もはや完成したも同然である!