Mercurial > skaapsteker
view scripts/level-shot @ 620:6cc0d54df531
Some light cleanup.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Fri, 06 May 2011 16:59:23 +0200 |
parents | dc73dda93fb1 |
children |
line wrap: on
line source
#!/usr/bin/env python "Skaapsteker level -> image tool" from __future__ import division import optparse import os.path import sys sys.path.insert(0, os.path.dirname(os.path.dirname(__file__))) import pygame from pygame.locals import SWSURFACE from skaapsteker.constants import SCREEN from skaapsteker.level import Level from skaapsteker.sprites.player import Player from skaapsteker.gamestate import GameState from skaapsteker.sound import SoundSystem from skaapsteker.data import filepath def run(levelname): game = GameState(None) game.load_game(filepath("game.json")) player = Player(game.world, SoundSystem(False)) level = Level(levelname, player) level.backgrounds = [] level_surface = level.get_surface() for sprite in game.create_sprites(levelname): level.sprites.add(sprite) clip_rect = pygame.Rect((0, 0), level_surface.get_size()) level_surface.set_clip(clip_rect) level_surface.fill((220, 220, 220)) level.draw(level_surface) level.sprites.draw(level_surface) pygame.image.save(level_surface, levelname + '.png') def main(): p = optparse.OptionParser(usage="%prog [options] levelname") opts, args = p.parse_args() if len(args) != 1: p.error("Must provide level name") pygame.display.init() pygame.font.init() pygame.display.set_mode(SCREEN, SWSURFACE) run(args[0]) if __name__ == '__main__': main()