def ScoreScreen(): #globals global userStart global scorehealth global scoreenemystart global scorebonus global PlayerName userStart = 0 #screen setup pygame.display.set_caption("Halo - Chris Bonner") background = pygame.Surface(screen.get_size()) background.fill((0, 0, 0)) screen.blit(background, (0, 0)) #sound sndMenu.play(-1) sndLaser.set_volume(0.7) sndRifle.set_volume(0.3) #picture for sprite class pygame.mouse.set_visible(True) try: startscreen = os.path.join('Sprites','startscreen.png') graphicname = os.path.join('Sprites','Graphic.bmp') mousepic = os.path.join('Sprites','mouse.bmp') except: sys.exit("could not load image files in 'Sprites' folder :-(") #sprite class startscreen = startscreenclass.startscreen(screen, startscreen) Halo = startscreenclass.HaloGraphic(screen,graphicname) Mouse = startscreenclass.tempMouse(screen,mousepic) #score score = "%s" %(scorehealth + scoreenemystart + scorebonus) #saving score HighScoreOld = [] HighScoreOld = Save.Scores() HighScoreNew = [] NameScore = [] NameScore = Save.Names() a = 0 try: if PlayerName == None: PlayerName = "Player" except: PlayerName = "Player" for (i, item) in enumerate(HighScoreOld): if int(item) < int(score): HighScoreNew.append(item) elif int(item) >= int(score) and a == 0: HighScoreNew.append(score) NameScore.remove(NameScore[i]) NameScore.insert(i, PlayerName) a = 1 else: HighScoreNew.append(item) Save.WriteScores(HighScoreNew) Save.WriteNames(NameScore) HighScoreNew.reverse() NameScore.reverse() #label Score lblScore = miniGUI.Label() lblScore.font = pygame.font.SysFont(None, 50) lblScore.text = "Your Score %s" % score lblScore.center = (400,200) lblScore.size = (350,40) lblScore.bgColor = ((0x00, 0x00, 0x00)) lblScore.fgColor = ((0xFF, 0xFF, 0xFF)) lblHighScores = miniGUI.Label() lblHighScores.font = pygame.font.SysFont(None, 50) lblHighScores.text = "High Scores" lblHighScores.center = (100,50) lblHighScores.size = (200,40) lblHighScores.bgColor = ((0x00, 0x00, 0x00)) lblHighScores.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore1 = miniGUI.Label() lblScore1.font = pygame.font.SysFont(None, 30) lblScore1.text = "%s" % NameScore[0] + " " + "%s" % HighScoreNew[0] lblScore1.center = (100,100) lblScore1.size = (150,25) lblScore1.bgColor = ((0x00, 0x00, 0x00)) lblScore1.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore2 = miniGUI.Label() lblScore2.font = pygame.font.SysFont(None, 30) lblScore2.text = "%s" % NameScore[1] + " " + "%s" % HighScoreNew[1] lblScore2.center = (100,150) lblScore2.size = (150,25) lblScore2.bgColor = ((0x00, 0x00, 0x00)) lblScore2.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore3 = miniGUI.Label() lblScore3.font = pygame.font.SysFont(None, 30) lblScore3.text = "%s" % NameScore[2] + " " + "%s" % HighScoreNew[2] lblScore3.center = (100,200) lblScore3.size = (150,25) lblScore3.bgColor = ((0x00, 0x00, 0x00)) lblScore3.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore4 = miniGUI.Label() lblScore4.font = pygame.font.SysFont(None, 30) lblScore4.text = "%s" % NameScore[3] + " " + "%s" % HighScoreNew[3] lblScore4.center = (100,250) lblScore4.size = (150,25) lblScore4.bgColor = ((0x00, 0x00, 0x00)) lblScore4.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore5 = miniGUI.Label() lblScore5.font = pygame.font.SysFont(None, 30) lblScore5.text = "%s" % NameScore[4] + " " + "%s" % HighScoreNew[4] lblScore5.center = (100,300) lblScore5.size = (150,25) lblScore5.bgColor = ((0x00, 0x00, 0x00)) lblScore5.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore6 = miniGUI.Label() lblScore6.font = pygame.font.SysFont(None, 30) lblScore6.text = "%s" % NameScore[5] + " " + "%s" % HighScoreNew[5] lblScore6.center = (100,350) lblScore6.size = (150,25) lblScore6.bgColor = ((0x00, 0x00, 0x00)) lblScore6.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore7 = miniGUI.Label() lblScore7.font = pygame.font.SysFont(None, 30) lblScore7.text = "%s" % NameScore[6] + " " + "%s" % HighScoreNew[6] lblScore7.center = (100,400) lblScore7.size = (150,25) lblScore7.bgColor = ((0x00, 0x00, 0x00)) lblScore7.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore8 = miniGUI.Label() lblScore8.font = pygame.font.SysFont(None, 30) lblScore8.text = "%s" % NameScore[7] + " " + "%s" % HighScoreNew[7] lblScore8.center = (100,450) lblScore8.size = (150,25) lblScore8.bgColor = ((0x00, 0x00, 0x00)) lblScore8.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore9 = miniGUI.Label() lblScore9.font = pygame.font.SysFont(None, 30) lblScore9.text = "%s" % NameScore[8] + " " + "%s" % HighScoreNew[8] lblScore9.center = (100,500) lblScore9.size = (150,25) lblScore9.bgColor = ((0x00, 0x00, 0x00)) lblScore9.fgColor = ((0xFF, 0xFF, 0xFF)) lblScore10 = miniGUI.Label() lblScore10.font = pygame.font.SysFont(None, 30) lblScore10.text = "%s" % NameScore[9] + " " + "%s" % HighScoreNew[9] lblScore10.center = (100,550) lblScore10.size = (150,25) lblScore10.bgColor = ((0x00, 0x00, 0x00)) lblScore10.fgColor = ((0xFF, 0xFF, 0xFF)) #button retry btnRetry = miniGUI.Button() btnRetry.text = "Retry?" btnRetry.center = (400,300) btnRetry.size = (75,21) btnRetry.bgColor = (0x00,0x00,0x00) btnRetry.fgColor = (0xFF, 0xFF, 0xFF) #button Menu btnMenu = miniGUI.Button() btnMenu.text = "Main Menu" btnMenu.center = (400, 350) btnMenu.size = (120,21) btnMenu.bgColor = (0x00,0x00,0x00) btnMenu.fgColor = (0xFF,0xff,0xff) #button Exit btnExit = miniGUI.Button() btnExit.text = "Exit" btnExit.center = (400,400) btnExit.size = (50,21) btnExit.bgColor = (0x00,0x00,0x00) btnExit.fgColor = (0xff,0xff,0xff) #sprite ordered update allsprites = pygame.sprite.OrderedUpdates(startscreen,Halo,lblScore,lblHighScores, lblScore1,lblScore2,lblScore3,lblScore4,lblScore5,lblScore6,lblScore7, lblScore8,lblScore9,lblScore10,btnRetry,btnMenu,btnExit,Mouse) #set clock and game loop clock = pygame.time.Clock() keepGoing = True while keepGoing: #clock ticks clock.tick(60) #mouse visibily off pygame.mouse.set_visible(False) #exit event or game start for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.display.quit() pygame.quit() sys.exit() elif event.type == pygame.KEYDOWN: if event.key == pygame.K_ESCAPE: Keepgoing = False pygame.display.quit() pygame.quit() sys.exit() if btnRetry.active == True: sndMenu.stop() main() elif btnMenu.active == True: StartScreen() elif btnExit.active == True: Keepgoing = False pygame.display.quit() pygame.quit() sys.exit() #clear, updates and flip allsprites.clear(screen,background) allsprites.update() screen.blit(background, (0, 0)) allsprites.draw(screen) pygame.display.flip()