diff --git a/sc2reader/readers.py b/sc2reader/readers.py index 26a2279c..3345e138 100644 --- a/sc2reader/readers.py +++ b/sc2reader/readers.py @@ -58,6 +58,7 @@ def __call__(self, data, replay): observers=data.read_bits(2), user_difficulty=data.read_bits(2), client_debug_flags=data.read_uint64() if replay.base_build >= 22612 else None, + build_coach_enabled=data.read_bool() if replay.base_build >= 59587 else None, ), game_speed=data.read_bits(3), game_type=data.read_bits(3), diff --git a/test_replays/4.0.0.59587/1.SC2Replay b/test_replays/4.0.0.59587/1.SC2Replay new file mode 100644 index 00000000..ad6150d8 Binary files /dev/null and b/test_replays/4.0.0.59587/1.SC2Replay differ diff --git a/test_replays/test_all.py b/test_replays/test_all.py index b789c8c0..c047b32e 100644 --- a/test_replays/test_all.py +++ b/test_replays/test_all.py @@ -537,14 +537,14 @@ def test_312(self): factory = sc2reader.factories.SC2Factory() replay =factory.load_replay(replayfilename,load_level=0) replay =factory.load_replay(replayfilename,load_level=1) - + def test_316(self): for replayfilename in [ "test_replays/3.16/AbyssalReef.SC2Replay", ]: factory = sc2reader.factories.SC2Factory() replay =factory.load_replay(replayfilename) - + def test_54518(self): for replayfilename in [ "test_replays/3.14.0.54518/1.SC2Replay", @@ -553,7 +553,14 @@ def test_54518(self): ]: factory = sc2reader.factories.SC2Factory() replay =factory.load_replay(replayfilename) - + + def test_59587(self): + for replayfilename in [ + "test_replays/4.0.0.59587/1.SC2Replay", + ]: + factory = sc2reader.factories.SC2Factory() + replay = factory.load_replay(replayfilename) + class TestGameEngine(unittest.TestCase): class TestEvent(object):