"""This module has all the building blocks for a nice 16-is-dead user interface""" __author__ = "" __credits__ = "" __email__ = "" import time import os def dice_animation(): ''' This functions prints the rolling dice animation return: None ''' for i in range(4): plz_print('dice_animation1.txt') time.sleep(0.25) clear() plz_print('dice_animation2.txt') time.sleep(0.25) clear() def plz_print(filename): ''' This functions reads a file line by line and prints it in on call. return: None ''' with open(filename, 'r', encoding='utf8') as f: bigstring = "" for line in f: bigstring = bigstring + line print('\n' + bigstring) def clear(): ''' This functions clears the terminal screen, it distinguishes between Linux and Windows But it does not work in pycharm or idle. return: None ''' if os.name == 'nt': # for windows os.system('cls') else: # for linux, mac os.system('clear') def pling(current_roll): ''' This functions prints the animation of the dice result return: None ''' with open('pling_animation', 'r', encoding='utf8') as f: big_string = "" animations = [] scan_lines = '' for line in f: big_string = big_string + line if line[0] == '$': animations.append(big_string[:-2]) big_string = '' dice_result = animations[current_roll[0] - 1] for line in dice_result: scan_lines += line if line[0] == '#': clear() print(scan_lines[:-2]) time.sleep(0.5) scan_lines = "" def the_end(): ''' This functions prints the end screen. return: None ''' print("--------------------------\n\/\/\/\ SPIELENDE /\/\/\/\n--------------------------")