Я очень новичок в Python и Pygame, но сейчас просто экспериментирую и пытаюсь создать панель здоровья для персонажа. Панель здоровья должна начинаться с ширины символьного изображения, но по какой-то причине она возвращает нуль.Pygame Return Width of Image
Пожалуйста, можете ли вы посоветовать, где я ошибаюсь? Я думаю, что это может быть связано с возвратом как целое.
Я также пробовал self.image.get_width() без везения.
class Player(object):
def __init__(self):
self.image = pygame.image.load('player.png')
self.imagerect = self.image.get_rect()
self.x = 0
self.y = 0
self.direction = 'right'
self.imagewidth = self.imagerect.width
self.health = 100
def healthbar(self, healthvalue):
healthwidth = (self.imagewidth/100) * healthvalue
pygame.draw.rect(screen, RED, (self.x, self.y -10, healthwidth, 10), 2)
pygame.draw.rect(screen, RED, (self.x, self.y -10, healthwidth, 10), 0)
Какую версию Python вы используете? Отдел ведет себя по-разному в 2.x и 3.x. – rlms
Я использую 2.x, потому что я не мог заставить 3.x работать с Pygame на OS X. Я думаю, что я только что решил свой собственный вопрос, хотя ... обертывание ширины в float() кажется Работа! – marka87uk