2017-04-27 1 views
0

저는 파이썬 3.6.0에서 기타 영웅 게임을 만들고 있습니다. 스페이스 바를 두드린 때를 확인하기 위해 파이 게임을 사용하려고합니다. 그러나 나는 때때로 그것이 몇몇 입력을 놓치고 있고 나의 히트 카운트를 증가시키지 않는 것을 발견하고있다.pygame.KEYDOWN 입력이 없습니다

import pygame as pyg 
pyg.init() 


hit=0 


pyg.key.set_repeat() 


playFlag=True 

while playFlag: 

    pyg.event.get() 
    redraw_screen() 
    for event in pyg.event.get():  
    if event.type == pyg.QUIT:  
     playFlag = False     


    if event.type==pyg.KEYDOWN and event.key==pyg.K_SPACE: 

    for i in range(len(song1)): 
     if 550>noteheight[i]>450: 
      hit+=1 
       noteheight[i]=700 

#Moves the notes 
for i in range(len(song1)): 
    noteheight[i]+=notespeed 

pyg.time.delay(10) 

pyg.quit()

+0

코드를 더 많이 볼 필요가 있습니다 ... 문제를 보여주는 최소한의 예를 제공하는 것이 가장 이상적입니다. – mgalgs

+0

본체가 어떻게 작동하는지 보여주기 위해 좀 더 많은 코드를 추가했습니다. 만약 내가 창을 그려야하고 모든 전역 변수를 다시 그려야 만하는 함수를 추가 할 필요가 없다면, 따라하기 힘든 코드를 만들고 싶지 않을 것입니다. –

답변

0

내가 왜 횟수 카운터가 작동하지 않을 수에로 찾을 수있는 유일한 이유는 당신이 가장 가능성이 루프 내에서 선언이 : 여기에 코드의 관련 부분입니다 이 코드는 작성되므로 매 간격마다 다시 설정됩니다. 누락 된 메모가있는 한, 나는 정말로 당신을 도울 수 없다 ... 나는 당신이 정말로 여기서하려고하는 것이 확실하지 않다. 특히 3 번째 라인.