PATCH: Fixed crash during round change

This commit is contained in:
2025-03-10 17:57:38 +01:00
parent f72d7bcba5
commit cbda94373d
2 changed files with 10 additions and 1 deletions

View File

@@ -66,9 +66,13 @@ if __name__ == "__main__":
demo_parser = demoparser2.DemoParser("demo.dem") demo_parser = demoparser2.DemoParser("demo.dem")
game_info = demo_parser.parse_ticks(["X", "Y", "Z", "pitch", "yaw", "is_alive", "team", "player_steamid"]) 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() 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(): for index, row in players.iterrows():
m.add_player(Player(row["name"], row["steamid"])) m.add_player(Player(row["name"], row["steamid"]))

View File

@@ -20,6 +20,11 @@ class Match:
def _update_player_positions(self) -> None: def _update_player_positions(self) -> None:
# inefficient, might need to change # inefficient, might need to change
current_tick = self.game_info[self.game_info["tick"] == self.tick] current_tick = self.game_info[self.game_info["tick"] == self.tick]
# empty tick
if current_tick.empty:
return
for player in self.players: for player in self.players:
player.x = current_tick[current_tick["player_steamid"] == player.steam_id]["X"].values[0] 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] player.y = current_tick[current_tick["player_steamid"] == player.steam_id]["Y"].values[0]