Why isn't my python pygame code working? -
i'm watching tutorial on youtube thenewboston http://www.youtube.com/watch?v=9ywzfchmz78&feature=share&list=ec8e21bdd0981fdf66 , i'm copying code yet mine isn't working. whenever press down arrow key, whole program freezes , won't let me quit. i'm using python 3.3. please help. here's code.
grey="grey.jpg" circle="circle.png" import pygame, sys pygame.locals import* pygame.init() screen=pygame.display.set_mode((1278,990),0,32) background=pygame.image.load(grey).convert() pic=pygame.image.load(circle).convert() x,y=0,0 movex,movey=0,0 while true: event in pygame.event.get(): if event.type == quit: pygame.quit() sys.exit() if event.type==keydown: if event.key==k_left: movex=-1 elif event.key==k_right: movex=+1 elif event.key==k_up: movey=-1 elif event.key==k_down: movey=+1 if event.type==keyup: if event.key==k_left: movex=0 elif event.key==k_right: movex=0 elif event.key==k_up: movey=0 elif event.key==k_down: movey=0 x+=movex y+=movey screen.blit(background, (0,0)) screen.blit(pic,(x,y)) pygame.display.update()
quick run of code:
$ python test1.py traceback (most recent call last): file "test1.py", line 37, in <module> elif event.key==k_down: nameerror: name 'k_down' not defined the error displayed when program crashes on down arrow push.
the crash due typo, have "k_down" when needs "k_down".
corrected code:
grey="grey.jpg" circle="circle.png" import pygame, sys pygame.locals import* pygame.init() screen=pygame.display.set_mode((1278,990),0,32) background=pygame.image.load(grey).convert() pic=pygame.image.load(circle).convert() x,y=0,0 movex,movey=0,0 while true: event in pygame.event.get(): if event.type == quit: pygame.quit() sys.exit() if event.type==keydown: if event.key==k_left: movex=-1 elif event.key==k_right: movex=+1 elif event.key==k_up: movey=-1 elif event.key==k_down: movey=+1 if event.type==keyup: if event.key==k_left: movex=0 elif event.key==k_right: movex=0 elif event.key==k_up: movey=0 elif event.key==k_down: movey=0 x+=movex y+=movey screen.blit(background, (0,0)) screen.blit(pic,(x,y)) pygame.display.update()
Comments
Post a Comment