Mercurial > touhou
comparison eosd @ 492:887de1309491
Add friendly fire in netplay.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Sat, 21 Sep 2013 20:26:39 +0200 |
parents | 711c75115675 |
children | 6be9c99a3a24 |
comparison
equal
deleted
inserted
replaced
491:2276229282fd | 492:887de1309491 |
---|---|
46 parser.add_argument('--hints', metavar='HINTS', default=None, help='Hints file, to display text while playing.') | 46 parser.add_argument('--hints', metavar='HINTS', default=None, help='Hints file, to display text while playing.') |
47 parser.add_argument('--verbosity', metavar='VERBOSITY', choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'], help='Select the wanted logging level.') | 47 parser.add_argument('--verbosity', metavar='VERBOSITY', choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'], help='Select the wanted logging level.') |
48 parser.add_argument('--game', metavar='GAME', choices=['EoSD'], default='EoSD', help='Select the game engine to use.') | 48 parser.add_argument('--game', metavar='GAME', choices=['EoSD'], default='EoSD', help='Select the game engine to use.') |
49 parser.add_argument('--port', metavar='PORT', type=int, default=0, help='Local port to use for netplay') | 49 parser.add_argument('--port', metavar='PORT', type=int, default=0, help='Local port to use for netplay') |
50 parser.add_argument('--remote', metavar='REMOTE', default=None, help='Remote address') | 50 parser.add_argument('--remote', metavar='REMOTE', default=None, help='Remote address') |
51 parser.add_argument('--no-friendly-fire', action='store_false', help='Allow friendly-fire during netplay.') | |
51 | 52 |
52 args = parser.parse_args() | 53 args = parser.parse_args() |
53 | 54 |
54 | 55 |
55 import sys | 56 import sys |
99 Game.cleanup(self) | 100 Game.cleanup(self) |
100 | 101 |
101 | 102 |
102 def main(window, path, data, stage_num, rank, character, replay, save_filename, | 103 def main(window, path, data, stage_num, rank, character, replay, save_filename, |
103 skip_replay, boss_rush, debug, enable_background, enable_particles, | 104 skip_replay, boss_rush, debug, enable_background, enable_particles, |
104 enable_music, hints, verbosity, port, remote): | 105 enable_music, hints, verbosity, port, remote, friendly_fire): |
105 | 106 |
106 resource_loader = Loader(path) | 107 resource_loader = Loader(path) |
107 | 108 |
108 try: | 109 try: |
109 resource_loader.scan_archives(data) | 110 resource_loader.scan_archives(data) |
151 addr = None | 152 addr = None |
152 selected_player = 1 | 153 selected_player = 1 |
153 | 154 |
154 prng = Random(0) | 155 prng = Random(0) |
155 con = Network(port, addr, selected_player) | 156 con = Network(port, addr, selected_player) |
156 states = [PlayerState(character=1, power=default_power, continues=continues), | 157 states = [PlayerState(0, character=1, power=default_power, continues=continues), |
157 PlayerState(character=3, power=default_power, continues=continues)] | 158 PlayerState(1, character=3, power=default_power, continues=continues)] |
158 else: | 159 else: |
159 con = None | 160 con = None |
160 selected_player = 0 | 161 selected_player = 0 |
161 states = [PlayerState(character=character, power=default_power, continues=continues)] | 162 states = [PlayerState(0, character=character, power=default_power, continues=continues)] |
162 | 163 |
163 if hints: | 164 if hints: |
164 with open(hints, 'rb') as file: | 165 with open(hints, 'rb') as file: |
165 hints = Hint.read(file) | 166 hints = Hint.read(file) |
166 | 167 |
202 level.difficulty = difficulty | 203 level.difficulty = difficulty |
203 save_keystates = [] | 204 save_keystates = [] |
204 | 205 |
205 hints_stage = hints.stages[stage_num - 1] if hints else None | 206 hints_stage = hints.stages[stage_num - 1] if hints else None |
206 | 207 |
207 game = game_class(resource_loader, states, stage_num, rank, difficulty, common, prng=prng, hints=hints_stage) | 208 game = game_class(resource_loader, states, stage_num, rank, difficulty, |
209 common, prng=prng, hints=hints_stage, | |
210 friendly_fire=friendly_fire) | |
208 | 211 |
209 if not enable_particles: | 212 if not enable_particles: |
210 def new_particle(pos, anim, amp, number=1, reverse=False, duration=24): | 213 def new_particle(pos, anim, amp, number=1, reverse=False, duration=24): |
211 pass | 214 pass |
212 game.new_particle = new_particle | 215 game.new_particle = new_particle |
249 fixed_pipeline=args.fixed_pipeline) | 252 fixed_pipeline=args.fixed_pipeline) |
250 | 253 |
251 main(window, args.path, tuple(args.data), args.stage, args.rank, | 254 main(window, args.path, tuple(args.data), args.stage, args.rank, |
252 args.character, args.replay, args.save_replay, args.skip_replay, | 255 args.character, args.replay, args.save_replay, args.skip_replay, |
253 args.boss_rush, args.debug, args.no_background, args.no_particles, | 256 args.boss_rush, args.debug, args.no_background, args.no_particles, |
254 args.no_music, args.hints, args.verbosity, args.port, args.remote) | 257 args.no_music, args.hints, args.verbosity, args.port, args.remote, |
258 args.no_friendly_fire) | |
255 | 259 |
256 import gc | 260 import gc |
257 gc.collect() | 261 gc.collect() |