diff --git a/modules/alice.py b/modules/alice.py
index 657e63f..a702be8 100644
--- a/modules/alice.py
+++ b/modules/alice.py
@@ -472,7 +472,7 @@ def cleanTranslatedText(translatedText, varResponse):
return [line for line in translatedText.split('\\n') if line]
def extractTranslation(translatedTextList, is_list):
- pattern = r'[\\]*`?(.*?)[\\]*?`?'
+ pattern = r'[\\]*`?(.*?)[\\]*?`??Line\d+>'
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
if is_list:
return [re.findall(pattern, line)[0][1] for line in translatedTextList if re.search(pattern, line)]
diff --git a/modules/json.py b/modules/json.py
index d1615b8..86a7820 100644
--- a/modules/json.py
+++ b/modules/json.py
@@ -445,7 +445,7 @@ def cleanTranslatedText(translatedText, varResponse):
return [line for line in translatedText.split('\\n') if line]
def extractTranslation(translatedTextList, is_list):
- pattern = r'[\\]*`?(.*?)[\\]*?`?'
+ pattern = r'[\\]*`?(.*?)[\\]*?`??Line\d+>'
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
if is_list:
return [re.findall(pattern, line)[0][1] for line in translatedTextList if re.search(pattern, line)]
diff --git a/modules/kansen.py b/modules/kansen.py
index f7c31a7..6cced34 100644
--- a/modules/kansen.py
+++ b/modules/kansen.py
@@ -575,7 +575,7 @@ def cleanTranslatedText(translatedText, varResponse):
return [line for line in translatedText.split('\\n') if line]
def extractTranslation(translatedTextList, is_list):
- pattern = r'[\\]*`?(.*?)[\\]*?`?'
+ pattern = r'[\\]*`?(.*?)[\\]*?`??Line\d+>'
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
if is_list:
return [re.findall(pattern, line)[0][1] for line in translatedTextList if re.search(pattern, line)]
diff --git a/modules/rpgmakermvmz.py b/modules/rpgmakermvmz.py
index 1ae617a..66ae18c 100644
--- a/modules/rpgmakermvmz.py
+++ b/modules/rpgmakermvmz.py
@@ -1933,7 +1933,7 @@ def cleanTranslatedText(translatedText, varResponse):
return [line for line in translatedText.split('\n') if line]
def extractTranslation(translatedTextList, is_list):
- pattern = r'[\\]*`?(.*?)[\\]*?`?'
+ pattern = r'[\\]*`?(.*?)[\\]*?`??Line\d+>'
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
if is_list:
return [re.findall(pattern, line)[0][1] for line in translatedTextList if re.search(pattern, line)]
diff --git a/modules/tyrano.py b/modules/tyrano.py
index 195f42b..6921362 100644
--- a/modules/tyrano.py
+++ b/modules/tyrano.py
@@ -76,7 +76,7 @@ def handleTyrano(filename, estimate):
else:
try:
- with open('translated/' + filename, 'w', encoding='shift_jis', errors='ignore') as outFile:
+ with open('translated/' + filename, 'w', encoding='utf8', errors='ignore') as outFile:
start = time.time()
translatedData = openFiles(filename)
@@ -118,7 +118,7 @@ def getResultString(translatedData, translationTime, filename):
errorString + Fore.RESET
def openFiles(filename):
- with open('files/' + filename, 'r', encoding='cp932') as readFile:
+ with open('files/' + filename, 'r', encoding='utf8') as readFile:
translatedData = parseTyrano(readFile, filename)
# Delete lines marked for deletion
@@ -165,14 +165,14 @@ def translateTyrano(data, pbar, totalLines):
while i < len(data):
# Speaker
- if '[ns]' in data[i]:
- matchList = re.findall(r'\[ns\](.+?)\[', data[i])
+ if '#' in data[i]:
+ matchList = re.findall(r'#【(.+)】', data[i])
if len(matchList) != 0:
response = getSpeaker(matchList[0])
speaker = response[0]
tokens[0] += response[1][0]
tokens[1] += response[1][1]
- data[i] = '[ns]' + speaker + '[nse]\n'
+ data[i] = '#【' + speaker + '】\n'
else:
speaker = ''
@@ -205,22 +205,19 @@ def translateTyrano(data, pbar, totalLines):
# Lines
matchList = re.findall(r'(.+?)\[[rpcms]+\]$', data[i])
if len(matchList) > 0:
+ # Skip if comment
+ if matchList[0][0] == ';':
+ continue
+
+ # Grab Text
currentGroup.append(matchList[0])
if len(data) > i+1:
- while '[r]' in data[i+1]:
+ while re.search(r'(.+?)\[[rpcms]+\]$', data[i+1]) is not None:
if insertBool is True:
data[i] = '\d\n'
pbar.update(1)
i += 1
- matchList = re.findall(r'(.+?)\[r\]', data[i])
- if len(matchList) > 0:
- currentGroup.append(matchList[0])
- while '[pcms]' in data[i+1]:
- if insertBool is True:
- data[i] = '\d\n'
- pbar.update(1)
- i += 1
- matchList = re.findall(r'(.+?)\[pcms\]', data[i])
+ matchList = re.findall(r'(.+?)\[[rpcms]+\]$', data[i])
if len(matchList) > 0:
currentGroup.append(matchList[0])
# Join up 401 groups for better translation.
@@ -310,7 +307,7 @@ def translateTyrano(data, pbar, totalLines):
# Set
data.insert(i, line.strip() + '[r]\n')
i+=1
- data[i-1] = data[i-1].replace('[r]', '[pcms]')
+ data[i-1] = data[i-1].replace('[r]', '[p]')
translatedBatch.pop(0)
speaker = ''
currentGroup = []
@@ -354,20 +351,20 @@ def translateTyrano(data, pbar, totalLines):
# Save some money and enter the character before translation
def getSpeaker(speaker):
match speaker:
- case '誠':
- return ['Makoto', [0,0]]
- case '夏都':
- return ['Natsu', [0,0]]
- case '宗一郎':
- return ['Souichirou', [0,0]]
- case '彩月':
- return ['Satsuki', [0,0]]
- case '茜梨':
- return ['Akari', [0,0]]
- case 'ポホヨネン':
- return ['Pohjonen', [0,0]]
- case '荒井':
- return ['Arai', [0,0]]
+ case '瞳':
+ return ['Hitomi', [0,0]]
+ case 'アイ ':
+ return ['Ai', [0,0]]
+ case 'リン':
+ return ['Rin', [0,0]]
+ case '小虎':
+ return ['Kotora', [0,0]]
+ case '玫瑰 ':
+ return ['Meigui', [0,0]]
+ case '創 ':
+ return ['So', [0,0]]
+ case '葛生':
+ return ['Kuzu', [0,0]]
case '愛梨':
return ['Airi', [0,0]]
case '朋美':
@@ -512,17 +509,12 @@ def batchList(input_list, batch_size):
def createContext(fullPromptFlag, subbedT):
characters = 'Game Characters:\n\
-中澤 誠 (Nakazawa Makoto) - Male\n\
-日向 夏都 (Hyuuga Natsu) - Female\n\
-出渕 宗一郎 (Izubuchi Souichirou) - Male\n\
-南 彩月 (Minami Satsuki) - Female\n\
-越智 茜梨 (Ochi Akari) - Female\n\
-ターヤ ポホヨネン (Tarja Pohjonen) - Female\n\
-マルガリータ バスクェス 穂村 (Margarita Vasquez Homura) - Female\n\
-花沢 愛梨 (Hanazawa Airi) - Female\n\
-五十嵐 朋美 (Igarashi Tomomi) - Female\n\
-前田 美沙緒 (Maeda Misao) - Female\n\
-村上 怜 (Murakami Sato) - Female\n\
+瞳 (Hitomi) - Female\n\
+リン (Rin) - Female\n\
+アイ (Ai) - Female\n\
+玫瑰 (Meigui) - Male\n\
+創 (So) - Male\n\
+小虎 (Kotora) - Female\n\
'
system = PROMPT if fullPromptFlag else \
@@ -575,7 +567,7 @@ def cleanTranslatedText(translatedText, varResponse):
return [line for line in translatedText.split('\\n') if line]
def extractTranslation(translatedTextList, is_list):
- pattern = r'[\\]*`?(.*?)[\\]*?`?'
+ pattern = r'[\\]*`?(.*?)[\\]*?`??Line\d+>'
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
if is_list:
return [re.findall(pattern, line)[0][1] for line in translatedTextList if re.search(pattern, line)]