Skip to content

Commit 4d7109d

Browse files
committed
Minor improvements to the replayer script.
1 parent 086b21c commit 4d7109d

File tree

1 file changed

+45
-33
lines changed

1 file changed

+45
-33
lines changed

sc2reader/scripts/sc2replayer.py

Lines changed: 45 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -50,39 +50,51 @@ def get_args():
5050

5151
def main():
5252
args = get_args()
53-
replay = sc2reader.read_file(args.FILE,debug=True)
54-
print "Release {0}".format(replay.release_string)
55-
print "{0} on {1}".format(replay.type,replay.map)
56-
for player in replay.players:
57-
print player
58-
print "\n--------------------------\n\n"
59-
60-
# Allow picking of the player to 'watch'
61-
if args.player:
62-
events = replay.player[args.player].events
63-
else:
64-
events = replay.events
65-
66-
# Loop through the events
67-
data = sc2reader.config.build_data[replay.build]
68-
for event in events:
69-
event.apply(data)
70-
71-
# Use their options to filter the event stream
72-
if isinstance(event,AbilityEvent) or\
73-
isinstance(event,SelectionEvent) or\
74-
isinstance(event,PlayerJoinEvent) or\
75-
isinstance(event, PlayerLeaveEvent) or\
76-
isinstance(event,GameStartEvent) or\
77-
(args.hotkeys and isinstance(event,HotkeyEvent)) or\
78-
(args.cameras and isinstance(event,CameraEvent)):
79-
80-
print event
81-
if args.bytes:
82-
print "\t"+event.bytes.encode('hex')
83-
84-
if re.search('UNKNOWN|ERROR', str(event)):
85-
myGetch()
53+
for filename in sc2reader.utils.get_files(args.FILE):
54+
replay = sc2reader.read_file(filename,debug=True)
55+
print "Release {0}".format(replay.release_string)
56+
print "{0} on {1}".format(replay.type,replay.map)
57+
for player in replay.players:
58+
print player
59+
print "\n--------------------------\n\n"
60+
61+
# Allow picking of the player to 'watch'
62+
if args.player:
63+
events = replay.player[args.player].events
64+
else:
65+
events = replay.events
66+
67+
# Loop through the events
68+
data = sc2reader.config.build_data[replay.build]
69+
for event in events:
70+
try:
71+
event.apply(data)
72+
except ValueError as e:
73+
if str(e) == "Using invalid abilitiy matchup.":
74+
myGetch()
75+
else:
76+
raise e
77+
78+
# Use their options to filter the event stream
79+
80+
if isinstance(event,AbilityEvent) or\
81+
isinstance(event,SelectionEvent) or\
82+
isinstance(event,PlayerJoinEvent) or\
83+
isinstance(event, PlayerLeaveEvent) or\
84+
isinstance(event,GameStartEvent) or\
85+
(args.hotkeys and isinstance(event,HotkeyEvent)) or\
86+
(args.cameras and isinstance(event,CameraEvent)):
87+
'''
88+
if isinstance(event, SelectionEvent) or isinstance(event, HotkeyEvent):
89+
'''
90+
print event
91+
#myGetch()
92+
if args.bytes:
93+
print "\t"+event.bytes.encode('hex')
94+
95+
if re.search('UNKNOWN|ERROR', str(event)):
96+
myGetch()
97+
8698

8799

88100
if __name__ == '__main__':

0 commit comments

Comments
 (0)