Mercurial > touhou
comparison eosd @ 378:11d895b6c0dc
Add the debug feature to start a game at the end of a replay.
| author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
|---|---|
| date | Wed, 29 Aug 2012 18:38:29 +0200 |
| parents | 8f2f3053906a |
| children | 6c0cb3eee33e |
comparison
equal
deleted
inserted
replaced
| 377:70e2ed71b09c | 378:11d895b6c0dc |
|---|---|
| 61 EoSDGame.cleanup(self) | 61 EoSDGame.cleanup(self) |
| 62 | 62 |
| 63 | 63 |
| 64 | 64 |
| 65 def main(path, data, stage_num, rank, character, replay, save_filename, | 65 def main(path, data, stage_num, rank, character, replay, save_filename, |
| 66 boss_rush, fps_limit, single_buffer, debug, fixed_pipeline, | 66 skip_replay, boss_rush, fps_limit, single_buffer, debug, |
| 67 display_background): | 67 fixed_pipeline, display_background): |
| 68 | 68 |
| 69 resource_loader = Loader(path) | 69 resource_loader = Loader(path) |
| 70 | 70 |
| 71 try: | 71 try: |
| 72 resource_loader.scan_archives(data) | 72 resource_loader.scan_archives(data) |
| 102 default_power = [0, 64, 128, 128, 128, 128, 0][stage_num - 1] | 102 default_power = [0, 64, 128, 128, 128, 128, 0][stage_num - 1] |
| 103 states = [PlayerState(character=character, power=default_power)] | 103 states = [PlayerState(character=character, power=default_power)] |
| 104 | 104 |
| 105 game_class = EoSDGameBossRush if boss_rush else EoSDGame | 105 game_class = EoSDGameBossRush if boss_rush else EoSDGame |
| 106 | 106 |
| 107 runner = GameRunner(resource_loader, fps_limit=fps_limit, double_buffer=(not single_buffer), fixed_pipeline=fixed_pipeline) | 107 runner = GameRunner(resource_loader, fps_limit=fps_limit, double_buffer=(not single_buffer), fixed_pipeline=fixed_pipeline, skip=skip_replay) |
| 108 while True: | 108 while True: |
| 109 if replay: | 109 if replay: |
| 110 level = replay.levels[stage_num - 1] | 110 level = replay.levels[stage_num - 1] |
| 111 if not level: | 111 if not level: |
| 112 raise Exception | 112 raise Exception |
| 192 parser.add_argument('-s', '--stage', metavar='STAGE', type=int, default=None, help='Stage, 1 to 7 (Extra).') | 192 parser.add_argument('-s', '--stage', metavar='STAGE', type=int, default=None, help='Stage, 1 to 7 (Extra).') |
| 193 parser.add_argument('-r', '--rank', metavar='RANK', type=int, default=0, help='Rank, from 0 (Easy, default) to 3 (Lunatic).') | 193 parser.add_argument('-r', '--rank', metavar='RANK', type=int, default=0, help='Rank, from 0 (Easy, default) to 3 (Lunatic).') |
| 194 parser.add_argument('-c', '--character', metavar='CHARACTER', type=int, default=0, help='Select the character to use, from 0 (ReimuA, default) to 3 (MarisaB).') | 194 parser.add_argument('-c', '--character', metavar='CHARACTER', type=int, default=0, help='Select the character to use, from 0 (ReimuA, default) to 3 (MarisaB).') |
| 195 parser.add_argument('--replay', metavar='REPLAY', help='Select a replay') | 195 parser.add_argument('--replay', metavar='REPLAY', help='Select a replay') |
| 196 parser.add_argument('--save-replay', metavar='REPLAY', help='Save the upcoming game into a replay file') | 196 parser.add_argument('--save-replay', metavar='REPLAY', help='Save the upcoming game into a replay file') |
| 197 parser.add_argument('--skip-replay', action='store_true', help='Skip the replay and start to play when it’s finished') | |
| 197 parser.add_argument('-b', '--boss-rush', action='store_true', help='Fight only bosses') | 198 parser.add_argument('-b', '--boss-rush', action='store_true', help='Fight only bosses') |
| 198 parser.add_argument('--single-buffer', action='store_true', help='Disable double buffering') | 199 parser.add_argument('--single-buffer', action='store_true', help='Disable double buffering') |
| 199 parser.add_argument('--fps-limit', metavar='FPS', default=60, type=int, help='Set fps limit') | 200 parser.add_argument('--fps-limit', metavar='FPS', default=60, type=int, help='Set fps limit') |
| 200 parser.add_argument('--debug', action='store_true', help='Set unlimited continues, and perhaps other debug features.') | 201 parser.add_argument('--debug', action='store_true', help='Set unlimited continues, and perhaps other debug features.') |
| 201 parser.add_argument('--fixed-pipeline', action='store_true', help='Use the fixed pipeline instead of the new programmable one.') | 202 parser.add_argument('--fixed-pipeline', action='store_true', help='Use the fixed pipeline instead of the new programmable one.') |
| 202 parser.add_argument('--no-background', action='store_false', help='Disable background display (huge performance boost on slow systems).') | 203 parser.add_argument('--no-background', action='store_false', help='Disable background display (huge performance boost on slow systems).') |
| 203 | 204 |
| 204 args = parser.parse_args() | 205 args = parser.parse_args() |
| 205 | 206 |
| 206 main(args.path, tuple(args.data), args.stage, args.rank, args.character, | 207 main(args.path, tuple(args.data), args.stage, args.rank, args.character, |
| 207 args.replay, args.save_replay, args.boss_rush, args.fps_limit, | 208 args.replay, args.save_replay, args.skip_replay, args.boss_rush, |
| 208 args.single_buffer, args.debug, args.fixed_pipeline, args.no_background) | 209 args.fps_limit, args.single_buffer, args.debug, args.fixed_pipeline, |
| 210 args.no_background) |
