記錄一下:
App Inventor學習記錄45,十分鐘自製小遊戲-4,終極密碼
先來看一下畫面編排的部份:

主要的元件如下:
3個按鈕元件,分別重新命名為隨機選擇號碼、確認送出以及再玩一遍
1個命名為猜測的值的文字輸入框。
1個文字語音轉換器。
隨機選擇號碼按鈕,是拿來從 1~99中,選擇一個數字用的。
確認送出按鈕,是拿來判斷猜測的值是不是跟終極密碼一樣。
再玩一遍按鈕,是用來把參數都回復到預設值。
遊戲執行的情形如下:

如果我們輸入的值不是終極密碼的話,就用文字語音轉換器說出密碼的區塊。
以這次為例,就會說出密碼在 45跟 47中間。
如果答對的話,就會說出恭禧你,你破解了密碼。

全部的程式碼如下:

只有第 3段的程式比較長,所以依照輸入數字和終極密碼比對後的 3種情形,拆成 3段說明。
第 1段的程式碼說明:

建立 4個變數
隨機選出的數字,這個變數就是我們的終極密碼。
上限值,這個變數是拿來當可選數字的上限值用。
下限值,這個變數是拿來當可選數字的下限值用。
猜測的值,這個就是我們猜的數字。
第 2段的程式碼說明:

當隨機選擇號碼這個按鈕被按下之後:
把隨機選出的數字這個變數,設定成 2~98這個區段的隨機數字。
把終極密碼這個標籤,設定成 global隨機選出的數字。這一個是為了確認我們之後寫的判斷式對不對,所以先做一個標籤,讓它把終極密碼顯示出來。等程式寫好之後,這個標籤可以直接刪除。
第 3-1段的程式碼說明:

當確認送出這個按鈕被按下之後:
把 global猜測的值這個變數,設定成猜測的值這個文字輸入框中輸入的值。
把 猜測的值這個文字輸入框的值,設定成空白。方便下一次的輸入。
接著我們加入一個判斷式。這裡會有三種情形。
第一種就是猜測的值比隨機選出的數字小,也就是比終極密碼小的時候:
把 global下限值用 global猜測的值來取代。
把終極密碼的區間這個標籤的顯示文字,修改成文字方塊的組合。
呼叫文字語音轉換器,說出新的數字區間。
第 3-2段程式說明:

第二種情形就是猜測的值比隨機選出的數字大,也就是比終極密碼大的時候:
這裡我們用 else if否則如果來做。
把 global上限值用 global猜測的值來取代。
把終極密碼的區間這個標籤的顯示文字,修改成文字方塊的組合。
呼叫文字語音轉換器,說出新的數字區間。
第 3-3段程式碼說明:

第三種情形,如果猜測的值沒有比隨機選出的數字大,也沒有比它小的時候。
這裡我們用 else否則來做。
把終極密碼的區間這個標籤的顯示文字,修改恭禧你,你破解了密碼。
呼叫文字語音轉換器,說出恭禧你,你破解了密碼。
第 4段的程式碼說明:

當再玩一遍的按鈕被按下之後:
把 global上限值,設定回 99 (上面的圖錯了)。
把 global下限值,設定回 1 (上面的圖錯了)。
把 global隨機選出的數字,設定回 0 (其實不重設定也可以……)。
把 global猜測的值,設定回 0。
把終極密碼的區間這個標籤的顯示文字,設定成空白。
把終極密碼這個標籤的顯示文字,設定成空白。(完成後,記得這個也要刪除)。
把猜測的值這個文字輸入框的顯示文字,設定成空白。
這是終極密碼簡單的做法。
這次的小遊戲中,有一些問題在,比如說在進行遊戲的時候,沒有先按下隨機選擇數字的按鈕的話,就直接按下確認送出按鈕,部份顯示的文字會怪怪的。
輸入的數字超出終極密碼的區間的話,也可以作動,這個應該還要加個判斷式進去才對。
數字沒有輸入的時候,按下確認送出按鈕,有時候會有問題。
答對或答錯的時候,應該要加入音效。
要加入幾秒內要輸入數字的功能。
等等等等的問題,我們之後再來慢慢的解決。
這次的 aia檔的下載連結如下:
點我下載 NO_45_Final_Number.aia
參考書籍如下:
手機應用程式設計超簡單 App Inventor 2零基礎入門班
TQC+ 創意App程式設計認證指南
TQC+創意App程式設計認證指南解題秘笈
手機應用程式設計超簡單:App Inventor 2初學特訓班
手機應用程式設計超簡單:App Inventor 2小專題特訓班
手機應用程式設計超簡單:App Inventor 2資料庫專題特訓班
之前介紹過的一些 appinventor的使用記錄,都整理在下面這個頁面上了。
APP INVENTOR學習記錄及資源整理頁面