dice roll activity
Create a dice on the micro:bit
Let’s create a condition for when the micro:bit is shaken.
input.onGesture(Gesture.Shake, () => {
})
We need to show a random value from 1 to 6 on our dice. So let’s make a local variable called roll.
input.onGesture(Gesture.Shake, () => {
let roll = randint(0, 6)
})
We need a condition for if roll is 5. We will show a 6
if roll is 5 because roll has a range from 0 to 5. We can use show LEDs
to display the side of a dice that shows 6.
input.onGesture(Gesture.Shake, () => {
let roll = randint(0, 6);
if (roll == 5) {
basic.showLeds(`
. # . # .
. . . . .
. # . # .
. . . . .
. # . # .`);
}
});
Let’s use an else if
condition for if roll is 4. If roll is 4 we can show 5 dots on the dice.
input.onGesture(Gesture.Shake, ()=> {
let roll = randint(0, 6);
if (roll == 5) {
basic.showLeds(`
. # . # .
. . . . .
. # . # .
. . . . .
. # . # .`);
}
else if (roll == 4) {
basic.showLeds(`
. . . . .
. # . # .
. . # . .
. # . # .
. . . . .`);
}
});
Now we need to repeat the same steps for if roll is 3. If roll is 3 we will show 4
on the dice.
input.onGesture(Gesture.Shake, () => {
let roll = randint(0, 6);
if (roll == 5) {
basic.showLeds(`
. # . # .
. . . . .
. # . # .
. . . . .
. # . # .`);
}
else if (roll == 4) {
basic.showLeds(`
. . . . .
. # . # .
. . # . .
. # . # .
. . . . .`);
}
else if (roll == 3) {
basic.showLeds(`
. . . . .
. # . # .
. . . . .
. # . # .
. . . . .`);
}
});
Let’s also repeat these steps to show the 3, 2, and 1 on the dice. We are almost done with our dice!
input.onGesture(Gesture.Shake, () => {
let roll = randint(0, 6);
if (roll == 5) {
basic.showLeds(`
. # . # .
. . . . .
. # . # .
. . . . .
. # . # .`);
}
else if (roll == 4) {
basic.showLeds(`
. . . . .
. # . # .
. . # . .
. # . # .
. . . . .`);
}
else if (roll == 3) {
basic.showLeds(`
. . . . .
. # . # .
. . . . .
. # . # .
. . . . .`);
}
else if (roll == 2) {
basic.showLeds(`
# . . . .
. . . . .
. . # . .
. . . . .
. . . . #`);
}
else if (roll == 1) {
basic.showLeds(`
. . . . .
. # . . .
. . . . .
. . . # .
. . . . .`);
}
else {
basic.showLeds(`
. . . . .
. . . . .
. . # . .
. . . . .
. . . . .`);
}
});