The dice net is calculated as a 4 X 4 array.
[[0, 4, 0, 0], [2, 1, 5, 6], [0, 3, 0, 0], [0, 6, 0, 0]]
Not all the numbers in the array are used but are place holder values so I can target the values I care about. The face up value of the dice is located at position (1, 1) in the array, and all the non zero values represent faces in other directions. Note the two 6 enters, they represent the same face.
when moving simply shift all the values in row 1 or column 1 by one entry in the given direction, then set the identical face that wasn't shifted to match the one that was.
Read from the array as you need.
e.g. dice rolls one space up, the net above is transformed to looks like this.
[[0, 1, 0, 0], [2, 3, 5, 4], [0, 6, 0, 0], [0, 4, 0, 0]]
As for the compiler, I used pyinstaller. If you recommend it to anyone they will need to know how to use the command prompt and if they use the pygame default font in the script they will need to change it as pyinstaller interprets the file name as machine code for some reason.
'freesansbold.ttf'
The only difference between the compiled and non compiled versions of the game is this one line of code
pygame.font.Font('freesansbold.ttf', size) #becomes --> pygame.font.SysFont('times new roman', size)
For once its not my code that's the problem.