2014-06-16 2 views
0

현재 pyhton 3.2.3의 사이드 스크롤러 게임과 주인공이 동전을 수집 할 수있는 파이 게임에 대한 기능을 만들고 있습니다. 내가하려는 것은 내 캐릭터의 포지션이 돈의 포지션과 같을 때 돈이 사라지는 것이다. 내가 돈이 수준의 사진을 다시 블리 팅하지만, 어떤 이유로,이 발생하지 않습니다에 의해 사라지게하려고파이썬 게임을위한 동전 수집 기능

def drawMoney(x,y): 
offset = 0 - guy[X] 
guyPos = guy[X]+640 
moneyPos = x 
print(guyPos,moneyPos) 
if lvlNum == level1: 
    money1 = screen.blit(money,(offset+x, y)) 
if guyPos == moneyPos or guy[Y] == y: 
    y = 10000 

: 여기 내 코드입니다. 왜 그런지는 모르겠지만 어떤 이유로 작동하지 않습니다. 모든 것이 정확하다고 보이지만 그 guyPos가 moneyPos와 결코 같지 않다고 가정하고 있습니다. 어떤 도움을 주셔서 감사합니다. 이렇게함으로써

+0

은 왜'범위 (moneyPos-10, moneyPos + 10) '을 통해 반복된다? –

+0

대신 게시물을 수정하는 것만으로도 할 일을 설명 할 수 있습니다. –

답변

1

:

offset = 0 - guy[X] 
guyPos = guy[X] + offset 

당신은 실질적으로이 나는 colliderect()가 이미 내장 파이 게임에서 기능을 사용할 것 같은 들어 guyPos

0

에 제로를 지정하고 있습니다. 플레이어가 동전 중 하나와 충돌하는지 확인하고, 그렇다면 해당 금액에 해당 금액을 추가하여 플레이어 컬렉션에 동전을 추가하고 동전을 블리트 할 스프라이트 목록에서 제거하십시오. 의사 코드에서

:

For coin in coin_list: 
    Does the coin collide with the player (check by using pygame.Rect.colliderect()) 
     If so: add coin amount to player's coin variable and remove coin from coin_list