75才からのモバイルアプリ作成

MIT App Inventor 2 を使ったアプリ作成

MIT App Inventor 2であのアプリを作ってみる (Tic-Tac-Toe 2 -勝ち負けなしの場合-)

2024-08-31 07:33:24 | 日記

勝ち負けなしの判定が抜けていたので、追加した。

これはてこずるのではないかと思っていたが、意外と簡単に解決方法が見つかった。

アプリ実行のビデオ:

スクリーンのデザイン:

上記ビデオの通りだが、それぞれの場合のスクリーンは以下の通り。

               Circle wins                                      Cross wins                               No wins or losses

        

ブロック・コード:

1. 9つのボタンのいずれかをタップした回数を格納するtapCountを設定。これらボタンは、一度タップすると無効となるので、一回の勝負で先攻後攻合わせて9回タップすることになる。

2. 先攻、後攻、いずれがタップしてもtapCoupntを1加算する。(赤黄色点線部分)

3. 関数noWinsNoLosses:tapCountが9(タップできるボタンがなくなった時)で、かつshowWinnerLabelのテキストが空白(これは、先攻、後攻ともに現在の対戦では勝っていないことを意味する)の場合は、showwinnerLabelに「No wins or losses」(勝ち負けなし)を表示し、関数makeButtonsDisabledを実行する。

4. 関数makeButtonsDisabled:全てのボタンを無効にし、「Play again」ボタンを表示する。

5. 関数decideWinnerに、関数noWinsNoLossesを最後に追加する。これにより、合計9回のタップの後でも先攻後攻いずれも勝たなかった場合に、この関数の条件が満たされ、「No wins or losses」が表示される。

                     *********************  途中省略  ***********************

6. 「Play again」ボタンをタップすれば変数等が初期化され、同時にtapCountも0に初期化される。

 

                                              ***********************************************************

前回までのブログ:

MIT App Inventor 2であのアプリを作ってみる (Tic-Tac-Toe 1)