ALTERAR IMAGEM A CADA 5 SEGUNDOS PYGAMES PYTHON

1. ALTERAR IMAGEM A CADA 5 SEGUNDOS PYGAMES PYTHON

Vinicius
alli

(usa Outra)

Enviado em 30/11/2020 - 08:59h

BOM DIA !

alguem poderia me ajudar, eu tenho um jogo space invaders, e eu tenho 10 naves de cores diferentes eu gostaria de ao iniciar o jogo, elas ficassem mudando de cor a cada 2 segundos, alguem poderia me ajudar..
segue o código..

IMAGE_PATH = BASE_PATH + '/images/'
IMG = ['1','2','3','4','5','6','7', '8','9',10] #nome dos arquivos png que sao as naves


IMAGES = {name: image.load(IMAGE_PATH + '{}.png'.format(name)).convert_alpha()
for name in IMG}

class Nave(sprite.Sprite):
def __init__(self):

sprite.Sprite.__init__(self)

self.image = IMAGES['1']

self.rect = self.image.get_rect(topleft=(400, 540))
self.speed = 5







  


2. Re: ALTERAR IMAGEM A CADA 5 SEGUNDOS PYGAMES PYTHON

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 30/11/2020 - 10:47h

Só fazer algo assim:
antes de inciiar o loop, crie uma variavel chama tempo_total, inicie com 0
no loop principal
1-pegar o tempo atual, salvar numa variavel chamada tempo_agora (tempo_agora = pygame.clock.get_ticks())
no final do loop principal
1-fazer tempo_agora = pygame.clock.get_ticks() - tempo_agora
2-somar tempo_agora ao tempo_total
3-verificar se o tempo_atual é maior que 2000 (2 segundos são 2000 ms)
3.1-se tempo_atual é maior que 2000, então, faça
3.1.2-tempo_agora = 0
3.1.3-troca a imagem do elemento por outra que você quer

NOTA: pygame.clock.get_ticks() retorna o tempo em milissegundos desde a hora da chamada do pygame.init

____________________________________________
https://nerdki.blogspot.com/ acessa aí vai lá, é grátis!
Capeta (demo) do meu trabalho:
https://cpusam.github.io/


3. Re: ALTERAR IMAGEM A CADA 5 SEGUNDOS PYGAMES PYTHON

Vinicius
alli

(usa Outra)

Enviado em 02/12/2020 - 00:00h

def main(self):
while True:
if self.mainScreen:

self.screen.blit(self.background, (0, 0))
self.titleText.draw(self.screen)
self.titleText2.draw(self.screen)


for e in event.get():

if self.should_exit(e):
sys.exit()
if e.type == KEYUP:

self.reset(0)
self.startGame = True
self.mainScreen = False

elif self.startGame:
if not self.enemies and not self.explosionsGroup:
currentTime = time.get_ticks()

if currentTime - self.gameTimer < 3000:
self.Ship(self.image = self.IMAGES['2']) #isso?

self.screen.blit(self.background, (0, 0))
self.scoreText2 = Text(FONT, 20, str(self.score),
GREEN, 305,47)
self.scoreText.draw(self.screen)
self.title.draw(self.screen)

self.scoreText2.draw(self.screen)
self.scoreText3.draw(self.screen2)

self.check_input()
self.reset(0)

if currentTime - self.gameTimer > 3000:
self.gameTimer += 3000
else:
currentTime = time.get_ticks()
self.screen.blit(self.background, (0, 0))
self.scoreText2 = Text(FONT, 20, str(self.score), GREEN,
425, 50)
self.scoreText.draw(self.screen)
self.title.draw(self.screen)
self.scoreText2.draw(self.screen)
self.check_input()
self.enemies.update(currentTime)
self.allSprites.update(self.keys, currentTime)
self.explosionsGroup.update(currentTime)
self.check_collisions()



display.update()
self.clock.tick(60)



eu tenho essa main. Coloco nela então? ai faço a diferença do tempo atual.. ai passo tipo Nave(ímagem[aqui qual iamgem quero trocar]) mas ou menos isso?







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts