33import logging
44from enum import Enum
55
6+ from mgz .fast import Age
7+
68LOGGER = logging .getLogger (__name__ )
9+ FEUDAL_AGE_MARKERS = [
10+ '봉건 시대' ,
11+ 'Edad Feudal' ,
12+ '封建时代' ,
13+ 'Feudalzeit' ,
14+ 'Feodal Çağ' ,
15+ '封建時代' ,
16+ 'Edad Feudal' ,
17+ '領主の時代' ,
18+ 'Zaman Feudal' ,
19+ 'Età feudale' ,
20+ 'Feudal Age' ,
21+ 'Thời phong kiến' ,
22+ 'सामंतवादी युग' ,
23+ 'Era Feudalna' ,
24+ 'Idade Feudal' ,
25+ 'Âge féodal' ,
26+ 'Феодальная эпоха' ,
27+ ]
28+ CASTLE_AGE_MARKERS = [
29+ '성주 시대' ,
30+ 'Ed. Castillos' ,
31+ '城堡时代' ,
32+ 'Ritterzeit' ,
33+ 'Kale Çağı' ,
34+ '城堡時代' ,
35+ 'Edad de los Castillos' ,
36+ '城主の時代' ,
37+ 'Zaman Kastil' ,
38+ 'Età dei castelli' ,
39+ 'Castle Age' ,
40+ 'Thời lâu đài' ,
41+ 'परिवर्तन युग' ,
42+ 'Era Zamków' ,
43+ 'Idade dos Castelos' ,
44+ 'Âge des châteaux' ,
45+ 'Замковая эпоха' ,
46+ ]
47+ IMPERIAL_AGE_MARKERS = [
48+ '왕정 시대' ,
49+ 'Edad Imperial' ,
50+ '帝王时代' ,
51+ 'Imperialzeit' ,
52+ 'İmparatorluk Çağı' ,
53+ '帝王時代' ,
54+ 'Edad Imperial' ,
55+ '帝王の時代' ,
56+ 'Zaman Empayar' ,
57+ 'Età imperiale' ,
58+ 'Imperial Age' ,
59+ 'Thời đế quốc' ,
60+ 'साम्राज्यवादी युग' ,
61+ 'Era Imperiów' ,
62+ 'Idade Imperial' ,
63+ 'Âge impérial' ,
64+ 'Имперская эпоха' ,
65+ ]
766AGE_MARKERS = [
867 'advanced to the' ,
968 'a progressé vers' ,
2685 'ha raggiunto' ,
2786 'avanzó a Ed' ,
2887 'đã nâng cấp' ,
88+ 'युग में उन्नत है।' , # hi
89+ 'telah mara ke' , # ms
90+ 'geçti' , # tr
2991]
3092SAVE_MARKERS = [
3193 'Continuar con la partida en vez de guardar y salir' ,
@@ -84,10 +146,6 @@ def parse_chat(line, encoding, timestamp, players, diplomacy_type=None, originat
84146 if line .find (save_marker ) > 0 :
85147 data ['type' ] = Chat .SAVE
86148 return data
87- for age_marker in AGE_MARKERS :
88- if line .find (age_marker ) > 0 :
89- data ['type' ] = Chat .AGE
90- return data
91149 if line .find ('Voobly: Ratings provided' ) > 0 :
92150 _parse_ladder (data , line )
93151 elif line .find ('Voobly' ) == 3 :
@@ -102,6 +160,17 @@ def parse_chat(line, encoding, timestamp, players, diplomacy_type=None, originat
102160 _parse_json (data , line , diplomacy_type )
103161 else :
104162 _parse_chat (data , line , players , diplomacy_type )
163+
164+ for age_marker in AGE_MARKERS :
165+ if line .find (age_marker ) > 0 :
166+ data ['type' ] = Chat .AGE
167+ if any (marker in line for marker in FEUDAL_AGE_MARKERS ):
168+ data ['age' ] = Age .FEUDAL_AGE
169+ if any (marker in line for marker in CASTLE_AGE_MARKERS ):
170+ data ['age' ] = Age .CASTLE_AGE
171+ if any (marker in line for marker in IMPERIAL_AGE_MARKERS ):
172+ data ['age' ] = Age .IMPERIAL_AGE
173+
105174 if not _validate (data , players ):
106175 data ['type' ] = Chat .DISCARD
107176 return data
0 commit comments