so change the EnhanceDialogue class to this:
class EnhanceDialogue:
def __init__(self,text:str,speed=0.1) -> None:
self.text = text
self.speed = speed
self.print_input()
def print_input(self):
parsed = ""
colours = []
i = 0
flag = False
while i != len(self.text):
if flag:
if self.text[i] == "m":
flag = False
parsed += "2"
colours[-1][0] += self.text[i]
colours[-1][1].append(i)
else:
if self.text[i] == '\x1b':
parsed += "1"
colours.append(['\x1b', [i]])
flag = True
else:
parsed += "0"
i += 1
col = ""
style = ""
for i in range(len(self.text)):
if colours:
for c in colours:
if i in c[1]:
if len(c[0]) == 5:
col = c[0]
elif len(c[0]) == 4:
style = c[0]
if parsed[i] == "0":
print(col + style + self.text[i], end="", sep="", flush=True)
time.sleep(self.speed)
print()

