diff --git a/game/scripts/utility/common_functions.rpy b/game/scripts/utility/common_functions.rpy index 72d27df5..03a883ab 100644 --- a/game/scripts/utility/common_functions.rpy +++ b/game/scripts/utility/common_functions.rpy @@ -127,14 +127,15 @@ init python early: return obj def is_integer(s): - def zero(s): - return (len(s) > 1 and s.startswith("0")) - s = str(s) - - if s and s[0] in ("-", "+"): - return (not zero(s[1:]) and s[1:].isdigit()) - return (not zero(s) and s.isdigit()) + if not s: + return False + if s[0] in ("-", "+"): + # calling lstrip("0+-") would be faster but not exactly identical + s = s[1:] + if s.lstrip("0").isdigit(): + return True + return False def timeit(func, loops=10000, args=(), kwargs={}): start = time.time()