Tworzę małą grę i chcę zrobić kolejne okno oddzielnie od mojego głównego.Wiele wyświetlaczy w Pygame
Mam główną grę w głównym oknie i chcę otworzyć nowe okno i zrobić małą animację, gdy użytkownik coś robi.
W poniższym przykładowym kodzie poniżej, gdy użytkownik naciśnie "a", chcę, aby otworzył nowe okno i tam się rozmył.
Tu skonfigurować dwa okna: (wiem to robi praca, to, o co pytam, jak to zrobić)
SCREEN_X = 400
SCREEN_Y = 400
BSCREEN_X = 240
BSCREEN_Y = 160
BATTLE_SCENE = pygame.display.set_mode((BSCREEN_X, BSCREEN_Y))
SCREEN = pygame.display.set_mode((SCREEN_X, SCREEN_Y))
a następnie program:
def run_ani():
#Do animation, blitting to BATTLE_SCENE
return
def main_game():
ending=False
while ending==False:
clock.tick(30)
for event in pygame.event.get():
if event.type == pygame.QUIT: ending=True
if event.type == KEYDOWN: # key down or up?
if event.key == K_ESCAPE:
ending=True # Time to leave
print("Stopped Early by user")
elif event.key == K_a:
run_ani()
#Normal screen motion, blitting to SCREEN
if ending: pygame.quit()
return
tej pory to, co robi, rysuje główny ekran, a kiedy A jest wciśnięty, przestaje rysować animacje głównego ekranu, ale nadal rysuje pozostałe animacje na głównym ekranie i rysuje w lewym górnym rogu.
Jestem pewien, że robi to, bo jestem ustawienie BATTLE_SCENE
być mniejszy niż na głównym ekranie, a więc gdy blittingiem do BATTLE_SCENE
to Blits do obszaru utworzonego (240x160) w górnym rogu ekranu głównego.
Jednak chcę, aby BATTLE_SCENE
było oddzielnym oknem, więc gdy naciśnie "a", wyskoczy, zrobi to, zamknie lub przynajmniej przejdzie za główny ekran.
Jak to zrobić? Czy to możliwe?
Nie powinieneś tego robić mimo to. –
Czy to oznacza, że powinienem to zrobić? nieco więcej wyjaśnień byłoby miło :) – hammythepig
Utwórz obszar w istniejącym oknie animacji. –