Add train generation and builder for blueprints
This commit is contained in:
parent
3ec2d34f65
commit
6ac0cab8d5
7 changed files with 338 additions and 18 deletions
29
src/bin/decode_blueprint.rs
Normal file
29
src/bin/decode_blueprint.rs
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
use base64::prelude::*;
|
||||
use clap::Parser;
|
||||
use factorio_blueprint::blueprint::{decode, encode};
|
||||
use std::path::PathBuf;
|
||||
|
||||
#[derive(Debug, Parser)]
|
||||
struct Args {
|
||||
filename: PathBuf,
|
||||
#[arg(short, long)]
|
||||
encode: bool,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let args = Args::parse();
|
||||
|
||||
let s = std::fs::read_to_string(args.filename).unwrap();
|
||||
|
||||
if args.encode {
|
||||
let j: serde_json::Value = serde_json::from_str(&s).unwrap();
|
||||
let d = encode(&serde_json::to_string(&j).unwrap());
|
||||
println!("{}", d);
|
||||
} else {
|
||||
let d = decode(&s);
|
||||
|
||||
let j: serde_json::Value = serde_json::from_str(&d).unwrap();
|
||||
|
||||
println!("{}", serde_json::to_string_pretty(&j).unwrap());
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue