diff --git a/game.py b/game.py index e927b92..5713d4c 100644 --- a/game.py +++ b/game.py @@ -66,9 +66,13 @@ if __name__ == "__main__": demo_parser = demoparser2.DemoParser("demo.dem") game_info = demo_parser.parse_ticks(["X", "Y", "Z", "pitch", "yaw", "is_alive", "team", "player_steamid"]) + header_info = demo_parser.parse_header() + map_name = header_info['map_name'] players = demo_parser.parse_player_info() - m = Match("de_dust2", game_info) + start_tick = int(input()) + m = Match(map_name, game_info) + m.tick = start_tick for index, row in players.iterrows(): m.add_player(Player(row["name"], row["steamid"])) diff --git a/match.py b/match.py index dae77fa..e7c55d3 100644 --- a/match.py +++ b/match.py @@ -20,6 +20,11 @@ class Match: def _update_player_positions(self) -> None: # inefficient, might need to change current_tick = self.game_info[self.game_info["tick"] == self.tick] + + # empty tick + if current_tick.empty: + return + for player in self.players: player.x = current_tick[current_tick["player_steamid"] == player.steam_id]["X"].values[0] player.y = current_tick[current_tick["player_steamid"] == player.steam_id]["Y"].values[0]