81 lines
1.8 KiB
Markdown
81 lines
1.8 KiB
Markdown
|
# typing game challenges
|
||
|
|
||
|
My script. #docs
|
||
|
|
||
|
**Challenge 0**
|
||
|
|
||
|
This [guided tutorial](/microbit/lessons/typing-game/tutorial) will teach you how to use the method concat to connect to pieces of text together.
|
||
|
|
||
|
```
|
||
|
alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||
|
index = 0
|
||
|
name = ""
|
||
|
input.onButtonPressed("A", () => {
|
||
|
led.showString(alphabet.substr(index, 1), 0)
|
||
|
index = index + 1
|
||
|
})
|
||
|
if (index > 25) {
|
||
|
index = 0
|
||
|
}
|
||
|
input.onButtonPressed("B", () => {
|
||
|
name = name.concat(alphabet.substr(index - 1, 1))
|
||
|
})
|
||
|
input.onGesture(Gesture.Shake, () => {
|
||
|
led.showString(name, 150)
|
||
|
})
|
||
|
```
|
||
|
|
||
|
**Challenge 1**
|
||
|
|
||
|
After you have shown the string in the condition `on shake`, make the name variable hold nothing in it again so people can add a new name after they have shaken it.
|
||
|
|
||
|
```
|
||
|
alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||
|
index = 0
|
||
|
name = ""
|
||
|
input.onButtonPressed("A", () => {
|
||
|
led.showString(alphabet.substr(index, 1), 0)
|
||
|
index = index + 1
|
||
|
})
|
||
|
if (index > 25) {
|
||
|
index = 0
|
||
|
}
|
||
|
input.onButtonPressed("B", () => {
|
||
|
name = name.concat(alphabet.substr(index - 1, 1))
|
||
|
})
|
||
|
input.onGesture(Gesture.Shake, () => {
|
||
|
led.showString(name, 150)
|
||
|
name = "" // ***
|
||
|
})
|
||
|
```
|
||
|
|
||
|
**Challenge 2**
|
||
|
|
||
|
After you have cleared the name variable to hold nothing, make `index := 0` so that when button `A` is pressed, the first letter of the alphabet will be displayed.
|
||
|
|
||
|
```
|
||
|
alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||
|
index = 0
|
||
|
name = ""
|
||
|
input.onButtonPressed("A", () => {
|
||
|
led.showString(alphabet.substr(index, 1), 0)
|
||
|
index = index + 1
|
||
|
})
|
||
|
if (index > 25) {
|
||
|
index = 0
|
||
|
}
|
||
|
input.onButtonPressed("B", () => {
|
||
|
name = name.concat(alphabet.substr(index - 1, 1))
|
||
|
})
|
||
|
input.onGesture(Gesture.Shake, () => {
|
||
|
led.showString(name, 150)
|
||
|
name = ""
|
||
|
index = 0 // ***
|
||
|
})
|
||
|
```
|
||
|
|
||
|
**Challenge 3**
|
||
|
|
||
|
Give Micro a nickname and display it on the micro:bit!
|
||
|
|