class Player(pg.sprite.Sprite):
def __init__(self):
pg.sprite.Sprite.__init__(self)
self.x = 32
self.y = 32
self.yspeed = 0
self.xspeed = 0
self.image = pg.draw.rect(screen, yellow, (self.x, self.y, tilesize, tilesize))
self.rect = pg.Rect(self.x, self.y, 32, 32)
def moveRight(self):
self.xspeed = 5
self.yspeed = 0
def moveLeft(self):
self.xspeed = -5
self.yspeed = 0
def moveUp(self):
self.xspeed = 0
self.yspeed = -5
def moveDown(self):
self.xspeed = 0
self.yspeed = 5
playing = True
while playing:
p = Player()
for event in pg.event.get():
if event.type == pg.QUIT:
playing = False
if event.type == pg.KEYDOWN:
if event.key == pg.K_d:
p.moveRight()
if event.key == pg.K_a:
p.moveLeft()
if event.key == pg.K_w:
p.moveUp()
if event.key == pg.K_s:
p.moveDown()
p.x += p.xspeed
p.y += p.yspeed
screen.fill(black)
p.__init__()
drawGrid()
pg.display.update()
clock.tick(60)
왜 내 플레이어가 움직이지 않는지 혼란 스럽습니까? 그냥 다른 888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888파이썬 3 플레이어가 움직이지 않는다
'P .__ 초기화 __을()'하지 않는다 - 당신은 P = 플레이어()'는 IT가 자동으로 실행 '할 때' p .__ init __()'. 플레이어에서 데이터를 리셋해야한다면 데이터를 리셋하기 위해'Player()'에 메소드를 생성하십시오. – furas