-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscramble.py
48 lines (43 loc) · 1.35 KB
/
scramble.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import random
from datetime import datetime
class CubeTimerScramble():
def __init__(self):
self.num_move_map = {0:"U",
1:"U'",
2:"U2",
3:"L",
4:"L'",
5:"L2",
6:"F",
7:"F'",
8:"F2",
9:"R",
10:"R'",
11:"R2",
12:"B",
13:"B'",
14:"B2",
15:"D",
16:"D'",
17:"D2",
}
self.scramble = ""
self.generateScramble()
def getNewScramble(self):
self.generateScramble()
return self.scramble
def generateScramble(self):
lastMove = " "
self.scramble = ""
for i in range(25):
lastMove = self.getRandomMove(lastMove)
self.scramble += (lastMove + " ")
def getRandomMove(self, lastMove):
random.seed(datetime.now())
rn = random.randint(0, 17)
while((self.num_move_map[rn])[0] == lastMove[0]):
rn = random.randint(0, 17)
return self.num_move_map[rn]
if __name__ == '__main__':
cts = CubeTimerScramble()
print(cts.getNewScramble())