Skip to content

Commit f599d6e

Browse files
committed
event.pid is actually an index into replay.people.
And all this time we thought it was the player number. Crazy! Fixes #90, at least for the example replay given.
1 parent e007851 commit f599d6e

File tree

2 files changed

+10
-11
lines changed

2 files changed

+10
-11
lines changed

sc2reader/events.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ def __init__(self, frame, pid):
1616
# self.time = Length(seconds=self.second)
1717

1818
def load_context(self, replay):
19-
# print "Hi", self.pid, replay.person, self.__class__
20-
if self.pid != 16 and self.pid not in replay.person:
21-
self.logger.error("Bad pid ({}) for event {} at {}.".format(self.pid, self.__class__, Length(seconds=int(self.frame/16))))
22-
23-
if self.pid != 16:
24-
self.player = replay.person[self.pid]
19+
if self.pid < len(replay.people):
20+
self.player = replay.people[self.pid]
21+
elif self.pid != 16:
22+
self.logger.error("Bad pid ({0}) for event {1} at {2}.".format(self.pid, self.__class__, Length(seconds=self.second)))
23+
else:
24+
pass # This is a global event
2525

2626
def _str_prefix(self):
2727
player_name = self.player.name if getattr(self,'pid', 16)!=16 else "Global"

sc2reader/resources.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -511,14 +511,13 @@ def load_events(self):
511511
event.load_context(self)
512512
# TODO: Should this be documented or removed? I don't like it.
513513
if event.pid != 16:
514-
player = self.person[event.pid]
515-
player.events.append(event)
514+
event.player.events.append(event)
516515
if is_camera:
517-
player.camera_events.append(event)
516+
event.player.camera_events.append(event)
518517
elif is_selection:
519-
player.selection_events.append(event)
518+
event.player.selection_events.append(event)
520519
elif is_ability:
521-
player.ability_events.append(event)
520+
event.player.ability_events.append(event)
522521

523522
def register_reader(self, data_file, reader, filterfunc=lambda r: True):
524523
"""

0 commit comments

Comments
 (0)