藉由第二篇已讓大家認識如何用
運算的積木
和Javascript的語法
使輸入的數值自動做計算
本篇會分享如何將+ - * / 變成選單,像計算機一樣去計算
,並使用積木
和Javascript
帶領大家一步一步完成。
1.在類別中選擇擴展
2.在搜尋框貼上連結https://github.com/riknoll/arcade-custom-menu
點選項目即可擴展
3.建立兩個變數後,並把變數XXX設為0
與 詢問' '回答的數字
組合並放入當啟動時
積木
4.選擇擴展BlockMenu中的show grid menu fullscreen with option
積木 放入到 "當啟動時" 積木中,並將fullsceen改成bottom half ,並將後面的陣列輸入+ - * /
5.選擇擴展BlockMenu中的on menu option selected
積木,並將如果()那麼()
積木放入裡面
6.建立( )=( )
積木在如果()那麼()
積木上,然後將on menu option selected
積木上的option移動到( )=( )
積木第一個空格,第二個空格輸入"+"
7.在文字類別中選擇用(" ")
積木,然後放入到( )=( )
積木的第二個空格並輸入"+"
8.選擇擴展BlockMenu中的close menu
放入如果()那麼()
積木中,並建立一個名為answer的變數,然後將answer設為變數a + 變數b
9.再放入如果()那麼()否則()
積木在如果()那麼()
積木中,然後再條件那一個放入answer=0
,在那麼()
中放入遊戲類別中顯示提示''
積木,第一個空格輸入"加法答案為",第二個空格輸入為"0"
補充:詳細原因請參考第二篇
10.在否則()
中放入顯示提示''
積木,並在第一個空格輸入"加法答案為",第二個空格則放入變數answer
11.在如果()那麼()
積木中放入迴圈類別中重複判斷false執行
積木,然後將控制器類別中的A鍵被按住?
積木放入判斷格中,並將遊戲類別中遊戲重設
積木放入執行格中,其他運算依此類推
1.建立三個變數並設為0,然後要求變數var1、var2會要求輸入長度為2的數值
let var1 = 0
let var2 = 0
let answer = 0
var1 = game.askForNumber("", 2)
var2 = game.askForNumber("", 2)
2.建立選單的陣列
let var1 = 0
let var2 = 0
let answer = 0
var1 = game.askForNumber("", 2)
var2 = game.askForNumber("", 2)
blockMenu.showMenu([
"+",
"-",
"*",
"/"
], MenuStyle.Grid, MenuLocation.BottomHalf)
3.blockMenu.onMenuOptionSelected(function (option, index) {}可以讀取選擇的選項(option或index)、 blockMenu.closeMenu()為關閉選單
let var1 = 0
let var2 = 0
let answer = 0
var1 = game.askForNumber("", 2)
var2 = game.askForNumber("", 2)
blockMenu.showMenu([
"+",
"-",
"*",
"/"
], MenuStyle.Grid, MenuLocation.BottomHalf)
blockMenu.onMenuOptionSelected(function (option, index) {
if (option == "+") {
blockMenu.closeMenu()
}
}
4.while(){}為一直重複判斷
let answer = 0
let var2 = 0
let var1 = 0
var1 = game.askForNumber("", 2)
var2 = game.askForNumber("", 2)
blockMenu.showMenu([
"+",
"-",
"*",
"/"
], MenuStyle.Grid, MenuLocation.BottomHalf)
blockMenu.onMenuOptionSelected(function (option, index) {
if (option == "+") {
blockMenu.closeMenu()
answer = var1 + var2
if (answer == 0) {
game.splash("加法答案為", "0")
} else {
game.splash("加法答案為", answer)
}
while (controller.A.isPressed()) {
game.reset()
}
}
if (option == "-") {
blockMenu.closeMenu()
answer = var1 - var2
if (answer == 0) {
game.splash("減法答案為", "0")
} else {
game.splash("減法答案為", answer)
}
while (controller.A.isPressed()) {
game.reset()
}
}
if (option == "*") {
blockMenu.closeMenu()
answer = var1 * var2
if (answer == 0) {
game.splash("乘法答案為", "0")
} else {
game.splash("乘法答案為", answer)
}
while (controller.A.isPressed()) {
game.reset()
}
}
if (option == "/") {
blockMenu.closeMenu()
answer = var1 / var2
if (answer == 0) {
game.splash("除法答案為", "0")
} else {
game.splash("除法答案為", answer)
}
while (controller.A.isPressed()) {
game.reset()
}
}
})