Compare commits

...

8 Commits

6 changed files with 32 additions and 15 deletions

View File

@ -1,6 +1,6 @@
[package]
name = "pixsy"
version = "0.72.8"
version = "0.75.0"
description = "convert images to Bitsy rooms"
authors = ["Max Bradbury <max@tinybird.info>"]
edition = "2018"
@ -12,7 +12,7 @@ crate-type = ["cdylib"]
[dependencies]
base64 = "^0.12.3"
bitsy-parser = "^0.72.5"
bitsy-parser = "^0.75.0"
image = "^0.23.7"
json = "^0.12.4"
lazy_static = "^1.4.0"

View File

@ -22,6 +22,11 @@ button {
white-space: nowrap;
width: 100%;
&.half {
float: left;
width: 50%;
}
&.pagination:not(.normal) {
position: absolute;
bottom: 5vmin;

View File

@ -8,11 +8,9 @@ html(lang="en-gb")
script(src="includes/croppie.min.js")
body
header
h1
| pixsy
//img(alt="pixsy" src="includes/pixsy.png")
h1 pixsy
p.
version 0.72.8
version 0.75.0
|
#[a(href="http://tinybird.info/image-to-bitsy/old/" target="_blank") old version]
|
@ -24,10 +22,9 @@ html(lang="en-gb")
p.
#[b pixsy] is a tool for #[a(href="http://bitsy.org/") Bitsy Game Maker]
that allows you to generate a room from an image and add it to your game.
p this version is compatible with Bitsy version 7.2 and earlier.
p this version is compatible with Bitsy version 7.5 and earlier.
p.
#[b pixsy] does not currently work via the Itch desktop program.
some users are also currently reporting problems.
if pixsy does not work for you, please try the
#[a(href="http://tinybird.info/image-to-bitsy/old/") old version] instead.
p.
@ -99,14 +96,14 @@ html(lang="en-gb")
button.pagination.prev#back-to-image previous
button.pagination.next#room-next add room
.page.download
h2 done!
p#added
h2 download
textarea#output(autocomplete="off")
br
button#download download
button#clipboard.half copy to clipboard
button#download.half download
button.pagination.prev#add add another image
button.pagination.start#reset start again

View File

@ -24,6 +24,18 @@ function download(filename, text) {
document.body.removeChild(element);
}
function copyToClipboard() {
const button = el("clipboard");
el("output").select();
document.execCommand("copy");
button.innerText = "copied!";
setTimeout(() => {
button.innerText = "copy to clipboard";
}, 2000);
}
function el(id) {
return document.getElementById(id);
}
@ -64,6 +76,7 @@ async function run() {
const buttonAddImage = el("add");
const buttonBackToImage = el("back-to-image");
const buttonCopyToClipboard = el("clipboard")
const buttonDownload = el("download");
const buttonGameDataProceed = el("game-data-next");
const buttonImageProceed = el("image-next");
@ -152,7 +165,6 @@ async function run() {
function checkGameData() {
let result = load_game(textareaGameDataInput.value)
console.log(result);
if (result === "Loaded game") {
buttonGameDataProceed.removeAttribute("disabled");
@ -242,6 +254,9 @@ async function run() {
download("output.bitsy", textareaGameDataOutput.value);
}
buttonCopyToClipboard.addEventListener("click", copyToClipboard);
buttonCopyToClipboard.addEventListener("touchend", copyToClipboard);
buttonDownload.addEventListener("click", handleDownload);
buttonDownload.addEventListener("touchend", handleDownload);

View File

@ -199,7 +199,7 @@ fn palette_from(bg: &bitsy_parser::Colour, fg: &bitsy_parser::Colour) -> bitsy_p
}
fn render_preview(state: &State) -> DynamicImage {
let mut buffer = state.image.as_ref().unwrap().clone().into_rgba();
let mut buffer = state.image.as_ref().unwrap().clone().into_rgba8();
let palette = match &state.palette {
SelectedPalette::None => bitsy_parser::mock::game_default().palettes[0].clone(),

View File

@ -1,6 +1,6 @@
Write your game's title here
# BITSY VERSION 7.2
# BITSY VERSION 7.5
! ROOM_FORMAT 1