Я делаю игру в python, используя модуль pygame, и я буду sh наследовать одну указанную переменную c от одного класса к другому, но понятия не имею, как. Я пробовал super (), но это не сработало, однако, если я новичок, это может означать, что я сделал это неправильно, поэтому, пожалуйста, не обесценивайте это как возможность, если это работает.
Я перечислил, какая переменная I sh унаследована в приведенном ниже коде.
Ниже приведен мой соответствующий код:
Класс, который я хочу наследовать от:
class player():
def __init__(self, x, y, width, height, walkCount):
self.x = x
self.y = y
self.width = width
self.height = height
self.vel = 15
self.lastDirection = "right" or "left" or "up" or "down" #<--- variable I want to inherit
self.walkCount = walkCount
def drawCharacter(self, window):
dest = (self.x, self.y)
if self.walkCount + 1 >= 30:
self.walkCount = 0
if self.lastDirection == "left":
window.blit(protagL[0], dest)
elif self.lastDirection == "right":
window.blit(protagR[0], dest)
elif self.lastDirection == "up":
window.blit(protagU[0], dest)
elif self.lastDirection == "down":
window.blit(protagD[0], dest)
Класс, который я хочу получить в наследство:
class projectile(player):
def __init__(self, x, y, direction, travelCount):
self.x = x
self.y = y
self.direction = direction
self.vel = 20 * direction
self.travelCount = travelCount
def drawBullet(self, window):
dest = (self.x, self.y)
if self.travelCount + 1 >= 15:
self.walkCount = 0
if lastDirection == "right" or "left": # <--- I Want to call lastDirection variable here
if self.travelCount < 15:
window.blit(bulletsP[self.travelCount//3], dest) #dest)
self.travelCount += 1
self.x += self.vel
Любая помощь будет принята с благодарностью, спасибо.