Exemple #1
0
def main(stdscr):
    display = interface.Interface(stdscr)
    load_sprites()
    current_scene = None

    def switch_scene(scene):
        current_scene = scene

    current_scene = StartScene(display)
    key = None
    while key != 'QUIT' and current_scene.game_over != True:
        key = display.get_input()
        current_scene.update(display, key)
        if current_scene.next_scene != None:
            current_scene = current_scene.next_scene
    display.__uninit__()
Exemple #2
0
 def __init__(self, position, sprite_key, name='entity', hp=100, max_hp=100):
     super(Entity, self).__init__()
     self.sprites = load_sprites()
     self.sprite = self.sprites[sprite_key]
     self.rect = pg.rect.Rect(
         position,
         (self.sprite.width * self.sprite.scale, self.sprite.height * self.sprite.scale))
     self.name = name
     self.hp = hp
     self.max_hp = max_hp
     self.alive = True
Exemple #3
0
def export_chr(chr_file, png_file, palette=palette, width=8):
    sprs = sprite.load_sprites(chr_file)
    spr_len = sprite.length(sprs)
    height = spr_len / width
    size = (width * 8, height * 8)

    img = Image.new('RGB', size)
    draw = ImageDraw.Draw(img)

    for s_index in range(spr_len):
        spr = sprite.get_sprite(s_index, sprs)
        dx = s_index % width
        dy = s_index / width
        for y in range(8):
            for x in range(8):
                color = spr[y][x]
                draw.point((x+(8*dx),y+(8*dy)), palette[color])
    img.save(png_file, 'PNG')
Exemple #4
0
def export_nametable(nametable_file, chr_file, png_file, palette=palette):
    nts = nametable.load_nametable(nametable_file)
    sprs = sprite.load_sprites(chr_file)

    nt = nametable.get_nametable(0, nts)
    size = (256, 256)
    img = Image.new('RGB', size)
    draw = ImageDraw.Draw(img)

    nt_index = 0

    num_nt = nametable.length(nts)

    for y in range(32):
        for x in range(32):
            dx = nt_index / 32
            dy = nt_index % 32
            spr_index = nt[y][x] + 256
            spr = sprite.get_sprite(spr_index, sprs)
            draw_sprite(spr, dx, dy, draw, palette)
            nt_index += 1

    img.save(png_file, 'PNG')
Exemple #5
0
def import_nametable(png_file, chr_file, nametable_file, palette=palette):
    image = Image.open(png_file)
    sprs = sprite.load_sprites(chr_file)
    nametable = read_nametable(image, sprs, palette)
    write_bin_code(nametable, nametable_file)
Exemple #6
0
def import_nametable(png_file, chr_file, nametable_file, palette=palette):
    image = Image.open(png_file)
    sprs = sprite.load_sprites(chr_file)
    nametable = read_nametable(image, sprs, palette)
    write_bin_code(nametable, nametable_file)