我正计划创建一个太空射击游戏,我希望背景中的星星不断向下移动。您可以在下面查看我的代码。图片http://tinypic.com/r/9a8tj4/5
import pygame
import sys
import pygame.sprite as sprite
theClock = pygame.time.Clock()
background = pygame.image.load('background.gif')
background_size = background.get_size()
background_rect = background.get_rect()
screen = pygame.display.set_mode(background_size)
x = 0
y = 0
w,h = background_size
running = True
while running:
screen.blit(background,background_rect)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if(y > h):
y = 0
else:
y += 5
screen.blit(background,(x,y))
pygame.display.flip()
pygame.display.update()
theClock.tick(10)
Run Code Online (Sandbox Code Playgroud)
这是我会做的:
BLIT与背景图像的表面两次在一个(0,0),另一个在(0, - img.height)然后将它们向下移动,并且当它们中的任处于POS(0,img.heigth)将其放置在POS( 0,-img.height)。
import pygame
import sys
import pygame.sprite as sprite
theClock = pygame.time.Clock()
background = pygame.image.load('background.gif')
background_size = background.get_size()
background_rect = background.get_rect()
screen = pygame.display.set_mode(background_size)
w,h = background_size
x = 0
y = 0
x1 = 0
y1 = -h
running = True
while running:
screen.blit(background,background_rect)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
y1 += 5
y += 5
screen.blit(background,(x,y))
screen.blit(background,(x1,y1))
if y > h:
y = -h
if y1 > h:
y1 = -h
pygame.display.flip()
pygame.display.update()
theClock.tick(10)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15058 次 |
最近记录: |