zoom level select longer, fix draw order
This commit is contained in:
parent
8b9c944824
commit
003141b7e4
25
NS.py
25
NS.py
|
@ -458,8 +458,8 @@ class LevelSelect(GameChild):
|
||||||
y = 250
|
y = 250
|
||||||
indent = 10
|
indent = 10
|
||||||
dsr = self.get_display_surface().get_rect()
|
dsr = self.get_display_surface().get_rect()
|
||||||
self.platforms = [Platform(self, (dsr.centerx, y)), Platform(self, (0, y)), Platform(self, (0, y))]
|
self.platforms = [Platform(self, (0, y)), Platform(self, (dsr.centerx, y)), Platform(self, (0, y))]
|
||||||
self.platforms[1].view.location.left = dsr.left + indent
|
self.platforms[0].view.location.left = dsr.left + indent
|
||||||
self.platforms[2].view.location.right = dsr.right - indent
|
self.platforms[2].view.location.right = dsr.right - indent
|
||||||
self.platforms[0].set_glowing((NS.LNW, NS.LSE))
|
self.platforms[0].set_glowing((NS.LNW, NS.LSE))
|
||||||
self.platforms[1].set_glowing((NS.LNW, NS.LSW))
|
self.platforms[1].set_glowing((NS.LNW, NS.LSW))
|
||||||
|
@ -551,23 +551,24 @@ class LevelSelect(GameChild):
|
||||||
for level_index in range(3):
|
for level_index in range(3):
|
||||||
if level_index != self.level_index_selected:
|
if level_index != self.level_index_selected:
|
||||||
self.platforms[level_index].view.play(self.platforms[level_index].view.wipe_out)
|
self.platforms[level_index].view.play(self.platforms[level_index].view.wipe_out)
|
||||||
self.previews[level_index].play(self.previews[level_index].wipe_out)
|
self.previews[level_index].play(self.previews[level_index].wipe_out, interval=100)
|
||||||
self.get_audio().play_sfx("complete_pattern_3")
|
self.get_audio().play_sfx("complete_pattern_3")
|
||||||
elif not self.get_game().wipe.is_playing() and any(preview.is_hidden() for preview in self.previews):
|
elif not self.get_game().wipe.is_playing() and any(preview.is_hidden() for preview in self.previews):
|
||||||
self.get_game().wipe.start(self.launch_selected_index)
|
self.get_game().wipe.start(self.launch_selected_index)
|
||||||
for platform in self.platforms:
|
for platform in self.platforms:
|
||||||
platform.update()
|
platform.update()
|
||||||
for ii, preview in enumerate(self.previews):
|
for ii, preview in enumerate(self.previews):
|
||||||
if ii == self.level_index_selected:
|
if ii != self.level_index_selected:
|
||||||
self.zoom += 0.1
|
|
||||||
frame = pygame.transform.scale(
|
|
||||||
preview.get_current_frame(), (int(preview.location.w * self.zoom), int(preview.location.h * self.zoom)))
|
|
||||||
rect = frame.get_rect()
|
|
||||||
rect.center = preview.location.center
|
|
||||||
preview.update()
|
|
||||||
self.get_display_surface().blit(frame, rect)
|
|
||||||
else:
|
|
||||||
preview.update()
|
preview.update()
|
||||||
|
if self.level_index_selected is not None:
|
||||||
|
preview = self.previews[self.level_index_selected]
|
||||||
|
self.zoom += 0.1
|
||||||
|
frame = pygame.transform.scale(
|
||||||
|
preview.get_current_frame(), (int(preview.location.w * self.zoom), int(preview.location.h * self.zoom)))
|
||||||
|
rect = frame.get_rect()
|
||||||
|
rect.center = preview.location.center
|
||||||
|
preview.update()
|
||||||
|
self.get_display_surface().blit(frame, rect)
|
||||||
|
|
||||||
|
|
||||||
class Button(Sprite):
|
class Button(Sprite):
|
||||||
|
|
Loading…
Reference in New Issue