Note that there are some explanatory texts on larger screens.

plurals
  1. POExecutable problems
    primarykey
    data
    text
    <p>I made a script in python 2.6. When I tried running it on the computer(Windows Vista Home Basic) it worked perfectly fine but when I tried making it in an .exe the problems started. The problems were that when I clicked on the executable on other computers(windows 7 and I think the new version of windows vista) it came up with an error box and disappears really quickly. It disappears so quickly that I can't read all of the error messages. But I saw part of the message saying that there was an error on line 70 and line 54 and that there is an 'importError: DLL load failed; The specified module could not be found'. For some reason it looks perfectly fine to me. In case I made the script into an executable with py2exe(latest one). The lines are highlighted in the script below.</p> <pre><code>import pygame, random, sys from pygame.locals import * WINDOWWIDTH = 600 WINDOWHEIGHT = 600 RED = (255, 0, 0) WHITE = (255, 255, 255) BLACK = (0, 0, 0) TEXTCOLOR = WHITE BACKGROUNDCOLOR = BLACK FPS = 40 ASTEROIDMINSIZE = 10 ASTEROIDMAXSIZE = 40 ASTEROIDMINSPEED = 1 ASTEROIDMAXSPEED = 8 ADDNEWASTEROIDRATE = 6 PLAYERMOVERATE = 5 MAXHEALTH = 3 def terminate(): pygame.quit() sys.exit() def waitForPlayerToPressKey(): while True: for event in pygame.event.get(): if event.type == QUIT: terminate() if event.type == KEYDOWN: if event.key == K_ESCAPE: # pressing escape quits terminate() return def playerHasHitBaddie(playerRect, asteroids): for a in asteroids: if playerRect.colliderect(a['rect']): return True return False def drawText(text, font, surface, x, y): textobj = font.render(text, 1, TEXTCOLOR) textrect = textobj.get_rect() textrect.topleft = (x, y) surface.blit(textobj, textrect) # set up pygame, the window, and the mouse cursor pygame.init() mainClock = pygame.time.Clock() windowSurface = pygame.display.set_mode((WINDOWWIDTH, WINDOWHEIGHT)) pygame.display.set_caption('Dodger') pygame.mouse.set_visible(False) # set up fonts (LINE 54)font = pygame.font.SysFont(None, 48) # set up sounds gameOverSound = pygame.mixer.Sound('gameover.wav') pygame.mixer.music.load('background.mid') # set up images playerImage = pygame.image.load('player.png') playerRect = playerImage.get_rect() baddieImage = pygame.image.load('asteroid.png') tokenImage = pygame.image.load('tokens.png') # show the "Start" screen drawText('Asteroid Shower', font, windowSurface, (WINDOWWIDTH / 3), (WINDOWHEIGHT / 3)) drawText('Press a key to start.', font, windowSurface, (WINDOWWIDTH / 3) - 30, (WINDOWHEIGHT / 3) + 50) drawText('By Sandy Goetjens', font, windowSurface, (WINDOWWIDTH / 3) - 100, (WINDOWHEIGHT / 3) + 100) (LINE 70)pygame.display.update() waitForPlayerToPressKey() topScore = 0 while True: # set up the start of the game asteroids = [] score = 0 playerRect.topleft = (WINDOWWIDTH / 2, WINDOWHEIGHT - 50) moveLeft = moveRight = moveUp = moveDown = False reverseCheat = slowCheat = False asteroidAddCounter = 0 pygame.mixer.music.play(-1, 0.0) while True: # the game loop runs while the game part is playing score += 1 # increase score for event in pygame.event.get(): if event.type == QUIT: terminate() if event.type == KEYDOWN: if event.key == ord('z'): reverseCheat = True if event.key == ord('x'): slowCheat = True if event.key == K_LEFT or event.key == ord('a'): moveRight = False moveLeft = True if event.key == K_RIGHT or event.key == ord('d'): moveLeft = False moveRight = True if event.key == K_UP or event.key == ord('w'): moveDown = False moveUp = True if event.key == K_DOWN or event.key == ord('s'): moveUp = False moveDown = True if event.type == KEYUP: if event.key == ord('z'): reverseCheat = False score = 0 if event.key == ord('x'): slowCheat = False score = 0 if event.key == K_ESCAPE: terminate() if event.key == K_LEFT or event.key == ord('a'): moveLeft = False if event.key == K_RIGHT or event.key == ord('d'): moveRight = False if event.key == K_UP or event.key == ord('w'): moveUp = False if event.key == K_DOWN or event.key == ord('s'): moveDown = False if event.type == MOUSEMOTION: # If the mouse moves, move the player where the cursor is. playerRect.move_ip(event.pos[0] - playerRect.centerx, event.pos[1] - playerRect.centery) # Add new baddies at the top of the screen, if needed. if not reverseCheat and not slowCheat: asteroidAddCounter += 1 if asteroidAddCounter == ADDNEWASTEROIDRATE: asteroidAddCounter = 0 asteroidSize = random.randint(ASTEROIDMINSIZE, ASTEROIDMAXSIZE) newAsteroid = {'rect': pygame.Rect(random.randint(0, WINDOWWIDTH-asteroidSize), 0 - asteroidSize, asteroidSize, asteroidSize), 'speed': random.randint(ASTEROIDMINSPEED, ASTEROIDMAXSPEED), 'surface':pygame.transform.scale(baddieImage, (asteroidSize, asteroidSize)), } asteroids.append(newAsteroid) # Move the player around. if moveLeft and playerRect.left &gt; 0: playerRect.move_ip(-1 * PLAYERMOVERATE, 0) if moveRight and playerRect.right &lt; WINDOWWIDTH: playerRect.move_ip(PLAYERMOVERATE, 0) if moveUp and playerRect.top &gt; 0: playerRect.move_ip(0, -1 * PLAYERMOVERATE) if moveDown and playerRect.bottom &lt; WINDOWHEIGHT: playerRect.move_ip(0, PLAYERMOVERATE) # Move the mouse cursor to match the player. pygame.mouse.set_pos(playerRect.centerx, playerRect.centery) # Move the baddies down. for a in asteroids: if not reverseCheat and not slowCheat: a['rect'].move_ip(0, a['speed']) elif reverseCheat: a['rect'].move_ip(0, -5) elif slowCheat: a['rect'].move_ip(0, 1) # Delete baddies that have fallen past the bottom. for a in asteroids[:]: if a['rect'].top &gt; WINDOWHEIGHT: asteroids.remove(a) # Draw the game world on the window. windowSurface.fill(BACKGROUNDCOLOR) # Draw the score and top score. drawText('Score: %s' % (score), font, windowSurface, 10, 0) drawText('Top Score: %s' % (topScore), font, windowSurface, 10, 40) # Draw the player's rectangle windowSurface.blit(playerImage, playerRect) # Draw each baddie for a in asteroids: windowSurface.blit(a['surface'], a['rect']) pygame.display.update() # Check if any of the baddies have hit the player. if playerHasHitBaddie(playerRect, asteroids): if score &gt; topScore: topScore = score # set new top score break mainClock.tick(FPS) # Stop the game and show the "Game Over" screen. pygame.mixer.music.stop() gameOverSound.play() drawText('GAME OVER', font, windowSurface, (WINDOWWIDTH / 3), (WINDOWHEIGHT / 3)) drawText('Press a key to play again.', font, windowSurface, (WINDOWWIDTH / 3) - 80, (WINDOWHEIGHT / 3) + 50) pygame.display.update() waitForPlayerToPressKey() gameOverSound.stop() </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload