[Tutor] crash - switching between text window and graphics/gamewindow (high score)

D. Hartley denise.hartley at gmail.com
Wed Apr 20 23:15:13 CEST 2005


The play file does end in ".py".  I am running it on Windows.  You can
double-click the play file, and run it straight that way, which is
when the crash occurs.  If you right click the file, go to "edit in
IDLE", and hit F5 to run it, the crash does NOT happen. I'm not sure
why (but this is also why my debugging program won't tell me what's
wrong).

In fact, I wish the debugger *would* give me something, because then
I'd have a specific error, which would make researching the program on
google or in forum archives much easier! At the moment, I'm getting
nothing (or too much information about unrelated problems).

Thanks for any suggestions!

---------- Forwarded message ----------
From: Alberto Troiano <albertito_g at hotmail.com>
Date: Apr 20, 2005 2:07 PM
Subject: RE: [Tutor] crash - switching between text window and
graphics/gamewindow (high score)
To: denise.hartley at gmail.com
Cc: tutor at python.org


Hey

I'm curious

What extension are you using on your game???????????
is it .py???????????????

And what OS are you running the game???????????????

Another thing. I made a space ship game to learn Python. Is there a
possibility that we exchange the games so we can know differents points of
view????????

I'll wait your reply

Regards

Alberto

>From: "D. Hartley" <denise.hartley at gmail.com>
>Reply-To: "D. Hartley" <denise.hartley at gmail.com>
>To: Python tutor <tutor at python.org>
>Subject: [Tutor] crash - switching between text window and
>graphics/gamewindow (high score)
>Date: Tue, 19 Apr 2005 15:29:42 -0700
>
>Ok. I got in the working code to have a high score list, and it even
>saves/loads one now (!!).  The only problem is, clicking back from the
>text window to the game window (only after you entered in your name to
>go onto the high score list), closes the program. you dont get to say
>y/n to another game, it just shuts down. i cant run a debugger on it,
>because the error doesnt happen when I F5-run the game from the python
>IDLE script, only when i have ran it by doubleclicking on it (which is
>how you're supposed to run it. otherwise it doesnt shut down
>properly). i really really REALLY want to keep the high score part of
>my program, because i worked really hard to get this to work. but i
>have to have this program running with NO crashes in like a week (it's
>a birthday present, and the birthday is approaching fast!)
>
>Here's the "end of game" code:
>
>             #game over..
>             if lives == 0:
>### trying addscore
>
>                 def add_score():
>  #                   high_scores = [(1000,"Denise"), (945,"Denise"),
>   #                                 (883,"Denise"),(823,"Grant"),
>    #                                (779,"Aaron"), (702,"Pete"),
>     #                               (555,"Tom"), (443,"Tom"),
>      #                              (442,"Robin"), (4,"Pete")]
>                     high_scores = pickle.load(file("scores.pik"))
>                     score = total_enemy_hits
>                     if score > high_scores[-1][0]:
>                         print "Ta da! You got", total_enemy_hits,
>"Ranch Delivery Devices!"
>                         name = read_string("You made the high score
>list! What's your name? ")
>                         user_score = (score,name)
>                         high_scores.append(user_score)
>                         high_scores.sort(reverse=True)
>                         del high_scores[-1]
>                         pickle.dump(high_scores, file("scores.pik", "w"))
>                         for score, name in high_scores:
>                             slip = 30 - len(name)
>                             slip_amt = slip*" "
>                             prefix = 5*" "
>                             print prefix,name,slip_amt,score
>                     else:
>                         print "Sorry, you only got", total_enemy_hits,
>"Ranch Delivery Devices."
>                         print "You didn't quite make the high score list!"
>                         for score, name in high_scores:
>                             slip = 30 - len(name)
>                             slip_amt = slip*" "
>                             prefix = 5*" "
>                             print prefix,name,slip_amt,score
>                         print "Better luck next time!"
>
>  #               pdb.set_trace()
>                 add_score()
>
>                 end.play()
>                 showGameOver(screen, background_image)
>                 pygame.display.flip()
>
>
>                 answer = ""
>                 while not answer in ("y","n"):
>                    for event in pygame.event.get():
>                       if event.type == KEYDOWN:
>                          if event.key == K_n:
>                             answer = "n"
>                          elif event.key == K_y:
>                             answer = "y"
>                 if answer == "n":
>                     running = 0
>                 else:
>                     return 1
>
>             #refresh the display
>             pygame.event.pump()
>             pygame.display.flip()
>
>     #well, nice playing with you...
>     screen = pygame.display.set_mode((640, 480))
>     return 0
>
>
>Can anyone tell me why it crashes? you click to the text window when
>there's the "congrats, you made the high score list, enter your name"
>prompt, enter your name and hit enter, and it displays the high
>scores, with your name in it, just as it should. but then when you
>click back to the game screen, poof! it all closes.  Of course if you
>dont make the high score list, you can click to the text window and
>click back to the game window and it operates like it should.
>
>Any suggestions would be appreciated!!  Again, I'd like to have it do
>all this score stuff in the game/graphics window, and then it wouldnt
>have that crash at all. But I dont know how to do that.
>
>Please help!
>
>Thanks again :)
>
>~Denise
>_______________________________________________
>Tutor maillist  -  Tutor at python.org
>http://mail.python.org/mailman/listinfo/tutor

Gaucho


More information about the Tutor mailing list