Привет всем. Я новичок в python, поэтому я начал следить за YouTubers для создания игр.Я приложил свой код ниже и импортировал Vector2
из PyGame.но проблема в строке 16 self.pos = Vector2(width/2,height/2)
и далее.Пихарм подсказывает мне, что аргументы неверны.
Когда я запускаю свою программу, появляется эта ошибка.
self.pos += self.vel + ( 0.5*self.acc.x ) #d = v +0.5` a formula to calculate dist
AttributeError: у объекта 'tuple' нет атрибута 'x'.
Пожалуйста, помогите, спасибо.
импорт pygame в виде pg из настроек import * from pygame.math import Vector2
Класс Player (pg.sprite.Sprite):
def __init__(self):
pg.sprite.Sprite.__init__(self)
self.image = pg.Surface((30,40)) #simple sprite
self.image.fill(yellow) #color of sprite
self.rect = self.image.get_rect()
self.rect.center = (width/2,height/2) #centre the sprite
self.pos = Vector2(width/2, height/2) #position vector
self.vel = Vector2(0,0) #velocity vector
self.acc = Vector2 (0, 0) #accelaration vector
def update(self):
self.acc = (0,0)
keys = pg.key.get_pressed() #if pressed
if keys[pg.K_LEFT]:
self.acc.x = -0.5 #accelarate left
if keys[pg.K_RIGHT]:
self.acc.x = 0.5 #accelarate right
self.vel += self.acc #velocity adds to acceleration
self.pos += self.vel + ( 0.5*self.acc.x ) #d = v +0.5a formula to calculate dist
self.rect.center = self.pos