22from log_analyser .objects .round import Round
33from log_analyser .objects .team import Team
44from datetime import datetime
5-
5+ import os
6+ import json
67
78class Map (Object ):
89
@@ -122,13 +123,13 @@ def add_hero_swap(self, data):
122123 self .rounds [self .actual_round ].teams [data ["team_name" ]].players [data ["player_name" ]].characters [data ["character_name" ]].add_end_time ({"end" : data ["time" ]})
123124
124125 self .events .append ({"type" : "hero_swap" , "timestamp" : data ["time" ], "player" : data ["player_name" ],
125- "description" : "{} swap on {}" .format (data ["player_name" ], data ["character_swap" ])})
126+ "description" : "{} swap on {}" .format (data ["player_name" ], data ["character_swap" ]), "hero" : self . find_character_name_in_english ( data [ "character_swap" ]) })
126127
127128 def add_hero_spawn (self , data ):
128129
129130 self .add_player (data )
130131 self .events .append ({"type" : "hero_spawn" , "timestamp" : data ["time" ], "player" : data ["player_name" ],
131- "description" : "{} spawn with {}" .format (data ["player_name" ], data ["character_name" ])})
132+ "description" : "{} spawn with {}" .format (data ["player_name" ], data ["character_name" ]), "hero" : self . find_character_name_in_english ( data [ "character_name" ]) })
132133
133134 def create_if_player_and_caracter_not_exist (self , team , player_name , character_name ):
134135
@@ -146,7 +147,7 @@ def add_ultimate_start(self, data):
146147 self .rounds [self .actual_round ].teams [data [3 ]].players [data [4 ]].characters [data [5 ]].add_ultimate_start (ultimate_start_data )
147148
148149 self .events .append ({"type" : "ultimate" , "timestamp" : data [2 ], "player" : data [4 ],
149- "description" : "{} use {} ultimate" .format (data [4 ], data [5 ])})
150+ "description" : "{} use {} ultimate" .format (data [4 ], data [5 ]), "hero" : self . find_character_name_in_english ( data [ 5 ]) })
150151
151152 def add_ultimate_end (self , data ):
152153
@@ -235,4 +236,21 @@ def aggregate_stats(self):
235236 players_data [player_name ] = players_data .get (player_name , [])
236237 players_data [player_name ].append ({"round" : index , "stats" : aggregated_stats })
237238
238- self .stats_graph = players_data
239+ self .stats_graph = players_data
240+
241+ def find_character_name_in_english (self , character_name ):
242+
243+ folder_path = "log_analyser/roles/lg/"
244+ files = os .listdir (folder_path )
245+
246+ # Parcourir les fichiers
247+ for file_name in files :
248+ # Vérifier si le fichier est un fichier JSON
249+ if file_name .endswith ('.json' ):
250+ file_path = os .path .join (folder_path , file_name )
251+ with open (file_path , 'r' , encoding = 'utf-8' ) as file :
252+ data = json .load (file )
253+ if character_name in data :
254+ return data [character_name ] # Retourne la valeur associée au nom du personnage
255+ print ("Character name not found in english : " , character_name )
256+ return ""
0 commit comments