[ad_1]
Lo hice para que si haces clic vayas al centro de la pantalla, pero solo quiero que eso suceda si estás en la pantalla de muerte, lo que sucede cuando sales de la pantalla, ¿cómo hago para que el clic solo funcione si la muerte? la pantalla se muestra
Lo que he probado:
import pygame import random SCREEN_WIDTH = 800 SCREEN_HIEGHT = 600 gravity = 4 pygame.init() screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HIEGHT)) bg_image = pygame.image.load('Background.png') bg_rect = bg_image.get_rect() losing_image = pygame.image.load('losing screen.png') losing_rect = losing_image.get_rect() player_image = pygame.image.load('Character.png') player_rect = player_image.get_rect() player_rect.x = 30 player_rect.y = 300 dead = False clock = pygame.time.Clock() run = True score = 0 while run: for event in pygame.event.get(): if event.type == pygame.MOUSEBUTTONDOWN: player_rect.y = 300 player_rect.x= 30 if event.type == pygame.QUIT: run = False key = pygame.key.get_pressed() if key[pygame.K_w]: player_rect.y -= 7 if player_rect.y < 790: player_rect.y += gravity screen.fill((0,0,0)) screen.blit(bg_image, bg_rect) screen.blit(player_image, player_rect, ) if player_rect.y >= 580: dead = True screen.blit(losing_image, losing_rect) pygame.display.flip() pygame.display.update() clock.tick(60) pygame.quit()
Solución 1
No puedes controlar cuándo se generan los eventos. Solo puedes configurar una condición en la que, cuando se llama a tu controlador de eventos, verificas el estado de tu juego (una bandera en tu caso) que muestra la “pantalla de muerte” y luego procedes en consecuencia. Tendrás que configurar la bandera (establecida en verdadero) cuando se muestre tu “pantalla de muerte”, luego restablecer esa bandera (establecida en falso) cuando sea apropiado.
[ad_2]
コメント