diff --git a/electric_sieve/ElectricSieve.py b/electric_sieve/ElectricSieve.py index f415bfd..a65b04d 100644 --- a/electric_sieve/ElectricSieve.py +++ b/electric_sieve/ElectricSieve.py @@ -925,6 +925,7 @@ class Initials(GameChild): def __init__(self, parent): GameChild.__init__(self, parent) + 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)))) @@ -951,16 +952,18 @@ 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): 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) or compare(event, "left", cancel=True): - if compare(event, "right", cancel=True): - increment = 1 - elif compare(event, "left", cancel=True): + 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): increment = -1 + elif compare(event, "right", cancel=True): + increment = 1 letter = self.text[self.index] if letter == '-': letter = 'A' if increment == 1 else 'Z'