Найти - Пользователи
Полная версия: где ошибка
Начало » Python для новичков » где ошибка
1
gnom
нашел код из учебника
  import pygame
class GameObject:
def __init__(self, image, height, speed):
self.speed = speed
self.image = image
self.pos = image.get_rect().move(0, height)
def move(self):
self.pos = self.pos.move(10, self.speed)
if self.pos.right > 600:
self.pos.left = 0


screen = pygame.display.set_mode((640, 480))
player = pygame.image.load('.png').convert()
background = pygame.image.load('.png').convert()
screen.blit(background, (0, 0))
objects = []
for y in range(1):
o = GameObject(player, y*100, y)
objects.append(o)
while 1:
for event in pygame.event.get():
if event.type == pygame.QUIT:
quit()
for o in objects:
screen.blit(background, o.pos, o.pos)
for o in objects:
o.move()
screen.blit(o.image, o.pos)
pygame.display.update()
pygame.time.delay(100)
он двигается по горизонтали а надо то бы по вертикали (перпендикулярно)
что тут изменить надо
Soteric
Потому что здесь
for y in range(1):         
o = GameObject(player, y*100, y)
y = 0 и поле speed объекта соответственно тоже равно нулю. Поэтому здесь
def move(self):
self.pos = self.pos.move(10, self.speed)
делается перемещение объекта на 10 единиц по горизонтали и на self.speed по вертикали, т.е. на 0 единиц.
py.user.next
        o.move()
help(player.get_rect().move)
нужно узнать прототип
gnom
больше человеческое спасибо за ответы
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB