希望你能幫助我,我 已經與這個問題掙扎的最後幾天。 我想爲我的2D平臺遊戲的遊戲「固體」塊我工作的,但是當我進入那個「實」塊i瞬移到另一側或塊的底部,我不知道爲什麼,希望你知道爲什麼 所以這裏是我的代碼:試圖在pygame的「固體」塊,但它不工作
class Block(pygame.sprite.Sprite):
def __init__(self, color = blue,widht = 64, height = 64):
super(Block, self).__init__()
self.image = pygame.Surface((widht, height))
self.image.fill(color)
self.rect = self.image.get_rect()
self.sound = pygame.mixer.Sound("2dSounds/Walk.wav")
self.hspeed = 0
self.vspeed = 0
def update(self, collidable):
self.rect.x += self.hspeed
collision_list = pygame.sprite.spritecollide(self, collidable, False)
for collided_object in collision_list:
if (self.hspeed > 0):
# right direction
self.rect.right = collided_object.rect.left
elif (self.hspeed < 0):
# left direction
self.rect.left = collided_object.rect.right
self.rect.y += self.vspeed
collision_list = pygame.sprite.spritecollide(self, collidable, False)
for collided_object in collision_list:
if (self.vspeed > 0):
# down direction
self.rect.bottom = collided_object.rect.top
elif (self.vspeed < 0):
# up direction
self.rect.top = collided_object.rect.bottom
def change_speed(self, hspeed, vspeed):
self.hspeed += hspeed
self.vspeed += vspeed
def set_position(self, x, y):
self.rect.x = x
self.rect.y = y
非常感謝! :)
對不起 - 這不是這個網站的工作原理 - 你應該詢問關於你的代碼的具體問題 - 否則你的問題將被關閉 – scytale
好吧對不起,編輯我的問題 –
[試圖在pygame中創建一個「固體」 (http://stackoverflow.com/questions/32189978/trying-to-make-a-solid-block-in-pygame) – DJMcMayhem