# BBC micro:bit Dice Rolling

## Introduction

Here is a short example of how to make a simple dice rolling animation.

## Programming

A fairly short program is needed to make this possible.

```from microbit import *
import random

faces = [Image('00000:00000:00900:00000:00000:'),
Image('00009:00000:00000:00000:90000:'),
Image('00009:00000:00900:00000:90000:'),
Image('90009:00000:00000:00000:90009:'),
Image('90009:00000:00900:00000:90009:'),
Image('90009:00000:90009:00000:90009:')]

def RandomImages(n, delay):
for i in range(0,n):
display.show(random.choice(faces))
sleep(delay)
display.clear()
sleep(delay)
while True:
if button_a.was_pressed():
RandomImages(20, 75)
rolled = random.choice(faces)
display.show(rolled)

```

The faces list is a list of images of the possible die rolls. Dots are used in the classic way.

The RandomImages function is not strictly necessary. Before choosing the final roll, a sequence of randomly selected images is shown blinking on the matrix.

This code never works with the numbers. If you needed to use the die roll in part of a game, generate a random integer from 0 to one less than the number of images. When you need to work with the image (to display it), you write image_list[random_integer], where these words are replaced by your own variables which store those things.

## Challenges

1. Replace the images here with your own selection. Perhaps use that as part of a game.
2. Instead of choosing randomly from the list, you could use it as a series of images in sequence, as an animation. You can make lists of lists. If you make several lists of images that each make up a short sequence of movements, you can make a random animation. Get the right mix of sequences and you can create something quite effective.