Go to file
Max Bradbury 67628e4879 "new id" and "add thing" functions 2020-06-24 12:40:15 +01:00
.github/workflows remove rustfmt 2020-04-19 07:37:36 +01:00
src "new id" and "add thing" functions 2020-06-24 12:40:15 +01:00
.gitignore move test resources 2020-04-14 00:17:40 +01:00
Cargo.toml implement Clone 2020-05-31 16:12:23 +01:00
LICENSE Create LICENSE 2020-04-05 18:59:30 +01:00
README.md todo 2020-06-24 12:39:26 +01:00

README.md

bitsy-parser

Rust Crates.io

a library for parsing Bitsy game data.

the version number follows Bitsy itself, so version 0.70.* targets Bitsy 7.0.

how to use

a simple example program:

extern crate bitsy_parser;
use bitsy_parser::game::Game;
use std::{env, fs};

fn main() {
    let input_file = env::args()
        .nth(1)
        .expect("No input path specified. Usage: `bitsy-validate filepath`");

    Game::from(fs::read_to_string(input_file).unwrap()).unwrap();

    println!("OK!");
}

some more practical uses would be things like:

  • remove duplicate tiles
  • merge two Bitsy games together
  • programmatically create Bitsy games
  • a Bitsy game editor

todo

  • implement Result return types on ::from functions so that we can handle errors
  • replace Image with Vec or something. seems like a pointless abstraction
  • replace game avatar with helper functions to get and set the sprite with an ID of A
  • implement PartialEq for tiles etc. for the sake of checking for duplicate tiles?
  • dedupe functions for tiles, sprites, etc.

tidy up

  • refactor the more shonky bits to idiomatic rust