update name entry for new controller, fix title prompt rotation

This commit is contained in:
ohsqueezy 2024-01-16 11:03:16 -08:00
parent 732f26fb38
commit d79750782d
2 changed files with 18 additions and 17 deletions

2
config
View File

@ -34,7 +34,7 @@ quit = K_ESCAPE
advance = K_RETURN
[joy]
advance = 8
advance = 9
left = 4
right = 5

View File

@ -249,7 +249,7 @@ class Title(GameChild):
self.music = Sound(self.get_resource("audio", "title"))
self.advance = Sound(self.get_resource("audio", "title-advance"))
self.prompt_surface = pygame.image.load(self.get_configuration("display", "prompt-image")).convert_alpha()
self.prompt_surface = pygame.transform.smoothscale(self.prompt_surface, (440, 440 * 0.6666))
self.prompt_surface = self.get_game().orient(pygame.transform.smoothscale(self.prompt_surface, (440, 440 * 0.6666)))
self.subscribe(self.respond)
def respond(self, event):
@ -306,8 +306,9 @@ class Title(GameChild):
logo.clear_frames()
elapsed = self.holding_button_elapsed / self.get_configuration("input", "title-hold")
if elapsed:
logo.add_frame(self.get_game().orient(pygame.transform.scale(
self.prompt_surface, (max(0, 440 - int(elapsed * 440)), max(0, 440 * 0.6666 - int(elapsed * 440 * 0.6666))))))
size = self.get_game().orient(
pygame.Rect(0, 0, max(0, 440 - int(elapsed * 440)), max(0, 440 * 0.6666 - int(elapsed * 440 * 0.6666))))
logo.add_frame(pygame.transform.scale(self.prompt_surface, size.size))
else:
logo.add_frame(self.prompt_surface)
logo.location.center = self.get_display_surface().get_rect().center
@ -905,19 +906,20 @@ class Initials(GameChild):
self.left_last_pressed = 0
self.button_prompt = BlinkingSprite(self, 500)
font = pygame.font.Font(self.get_resource("terminus/Terminus.ttf"), 32)
self.button_prompt.add_frame(self.get_game().orient(font.render("HOLD RIGHT TO ENTER", True, pygame.Color(0, 0, 0), pygame.Color(255, 255, 255))))
self.button_prompt.add_frame(self.get_game().orient(
font.render("PRESS START FOR NEXT LETTER", True, pygame.Color(0, 0, 0), pygame.Color(255, 255, 255))))
if not self.get_game().rotated:
self.button_prompt.location.midbottom = self.get_display_surface().get_rect().midbottom
self.button_prompt.location.midbottom = self.get_display_surface().get_rect().move(0, -200).midbottom
else:
self.button_prompt.location.midright = self.get_display_surface().get_rect().midright
self.button_prompt.location.midright = self.get_display_surface().get_rect().move(-200, 0).midright
self.reset()
self.deactivate()
self.font = Font(self.get_resource("display", "initials-font"), self.LETTER_SIZE)
self.text = "---"
self.subscribe(self.respond)
def reset(self):
self.idle_time = 0
self.text = "---"
self.index = 0
self.holding_button = False
self.holding_button_elapsed = 0
@ -929,17 +931,16 @@ class Initials(GameChild):
if self.active:
self.idle_time = 0
compare = self.get_game().delegate.compare
if compare(event, "left", cancel=False):
self.left_last_pressed = pygame.time.get_ticks()
if compare(event, "right", cancel=False):
# if compare(event, "left", cancel=False):
# self.left_last_pressed = pygame.time.get_ticks()
if compare(event, "advance"):
self.holding_button = True
elif compare(event, "right", cancel=True):
self.holding_button = False
self.holding_button_elapsed = 0
if (compare(event, "right", cancel=True) and pygame.time.get_ticks() - self.left_last_pressed > 200) or compare(event, "left", cancel=True):
if compare(event, "left", cancel=True):
self.holding_button_elapsed = self.get_configuration("input", "initials-hold")
# if (compare(event, "right", cancel=True) and pygame.time.get_ticks() - self.left_last_pressed > 200) or compare(event, "left", cancel=True):
if compare(event, "left") or compare(event, "right"):
if compare(event, "left"):
increment = -1
elif compare(event, "right", cancel=True):
elif compare(event, "right"):
increment = 1
letter = self.text[self.index]
if letter == '-':