diff --git a/.gitignore b/.gitignore index 40b86eb..3af53d7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,6 @@ app.wat png2c penger.c hand.c +index.html +museum.c +pengers.h diff --git a/app.c b/app.c index 1fe5f3e..7daf825 100644 --- a/app.c +++ b/app.c @@ -1,4 +1,4 @@ -#include "penger.c" +#include "pengers.h" #include "hand.c" #define GREEN 0xff00ff00 @@ -11,6 +11,7 @@ const unsigned int width = 800; const unsigned int height = 600; unsigned int BUFFER[width * height]; +int id = 0; // importer depuis js int get_scale(void); @@ -97,20 +98,20 @@ int rand(int min, int max) void rebondi(v2 *pos, int scale) { float div = -1.5; - if (pos->x - penger_width*scale/2 < 0) { - pos->x = penger_width*scale/2; + if (pos->x - pengers_width[id]*scale/2 < 0) { + pos->x = pengers_width[id]*scale/2; velocity.x /= div; } - if (pos->y - penger_height*scale/2 < 0) { - pos->y = penger_height*scale/2; + if (pos->y - pengers_height[id]*scale/2 < 0) { + pos->y = pengers_height[id]*scale/2; velocity.y /= div; } - if (pos->x + penger_width*scale/2 >= width) { - pos->x = width - penger_width*scale/2; + if (pos->x + pengers_width[id]*scale/2 >= width) { + pos->x = width - pengers_width[id]*scale/2; velocity.x /= div; } - if (pos->y + penger_height*scale/2 >= height) { - pos->y = height - penger_height*scale/2; + if (pos->y + pengers_height[id]*scale/2 >= height) { + pos->y = height - pengers_height[id]*scale/2; velocity.y /= div; } } @@ -123,6 +124,7 @@ int collision(v2 point, int x, int y, int w, int h) void init() { + pengers_init(); } void draw(float dt) @@ -131,8 +133,8 @@ void draw(float dt) // position du penger en haut a gauche de l'image v2 penger_origin = {0}; - penger_origin.x = penger_pos.x - penger_width*scale/2; - penger_origin.y = penger_pos.y - penger_height*scale/2; + penger_origin.x = penger_pos.x - pengers_width[id]*scale/2; + penger_origin.y = penger_pos.y - pengers_height[id]*scale/2; // jump if (keys[SPACE]) { @@ -141,7 +143,7 @@ void draw(float dt) } // mouse push - if (collision(mouse, penger_origin.x, penger_origin.y, penger_width*scale, penger_height*scale)) { + if (collision(mouse, penger_origin.x, penger_origin.y, pengers_width[id]*scale, pengers_height[id]*scale)) { v2 force = v2_diff(penger_pos, mouse); force = v2_normalize(force); force = v2_scale(force, 5); @@ -185,9 +187,9 @@ void draw(float dt) rebondi(&penger_pos, scale); // dessine le penger sur le canva - for (int y = 0; y < penger_height; y++) { - for (int i = 0; i < penger_width; i++) { - if (penger_img[y][i] <= 0x00FFFFFF) // pixel transparant + for (int y = 0; y < pengers_height[id]; y++) { + for (int i = 0; i < pengers_width[id]; i++) { + if (pengers_img[id][y*pengers_width[id] + i] <= 0x00FFFFFF) // pixel transparant continue; for (int s1 = 0; s1 < scale; s1++) { for (int s2 = 0; s2 < scale; s2++) { @@ -195,7 +197,7 @@ void draw(float dt) int idx_y = penger_origin.y + y*scale+s2; if (idx_x < 0 || idx_x >= width || idx_y < 0 || idx_y >= height) continue; - BUFFER[idx_y*width + idx_x] = penger_img[y][i]; + BUFFER[idx_y*width + idx_x] = pengers_img[id][y*pengers_width[id] + i]; } } } diff --git a/build.sh b/build.sh index 9723f87..1ff4be5 100755 --- a/build.sh +++ b/build.sh @@ -1,6 +1,6 @@ #!/bin/bash -export_sym="init draw key_pressed key_released set_velocity set_mouse BUFFER width height" +export_sym="init draw key_pressed key_released set_velocity set_mouse BUFFER width height id" export_cmd="" for e in $export_sym; do export_cmd="$export_cmd -Wl,--export=$e"; @@ -14,10 +14,38 @@ else a=$1 fi -set -xe +#set -xe clang png2c.c -o png2c -lm -./png2c "penger.png" > penger.c +mkdir -p museum.c +rm -f museum.c/* + +pengers_html=$'\n' +pengers_include=$'\n' +id=0 +for p in $(ls museum); do + file=$(echo $p | sed "s/\.png$//g") + ./png2c "museum/"$p $id > museum.c/$file.c + pengers_html+=$' \n' + pengers_include+='#include "museum.c/'$file$'.c"\n' + ((id=id+1)) +done + +echo "int pengers_height[$id];" > pengers.h +echo "int pengers_width[$id];" >> pengers.h +echo "unsigned int *pengers_img[$id];" >> pengers.h +echo "$pengers_include" >> pengers.h +echo "void pengers_init(void) {" >> pengers.h +((id=id-1)) +for i in $(seq 0 $id); do + echo " penger_init_$i();" >> pengers.h; +done +echo "}" >> pengers.h + +echo -e "$pengers_html" > pengers_image.html.temp +sed -e '/Choose your penger:/rpengers_image.html.temp' index.html.template > index.html +rm pengers_image.html.temp + ./png2c "hand.png" > hand.c clang -O2 --target=wasm32 -fno-builtin -nostdlib --no-standard-libraries -Wl,--no-entry $export_cmd -Wl,--allow-undefined -o $f.wasm $a diff --git a/index.html b/index.html deleted file mode 100644 index b5ec7d8..0000000 --- a/index.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - -
-

- - - -
-

Press arrow key to move

-

Press space key to jump

-

Penger is afraid of your stinky hand

- - diff --git a/index.html.template b/index.html.template new file mode 100644 index 0000000..3c6abe7 --- /dev/null +++ b/index.html.template @@ -0,0 +1,47 @@ + + + + + + + +
+ +
+ + + +
+

+

Press arrow key to move

+

Press space key to jump

+

Penger is afraid of your stinky hand

+
+ + + diff --git a/load.js b/load.js index adbe241..afbad7b 100644 --- a/load.js +++ b/load.js @@ -7,6 +7,10 @@ function wasm_variable(name) { return global_memory[global_instance.exports[name].value / 4]; } +function wasm_set_variable(name, val) +{ + return global_memory[global_instance.exports[name].value / 4] = val; +} function wasm_function(name) { return global_instance.exports[name]; @@ -18,6 +22,7 @@ window.onload = () => { var scale_p = document.getElementById("scale"); var reset_but = document.getElementById("reset"); var canvas = document.getElementById("demo-canvas"); + var pengers_img = document.getElementsByClassName('penger-img'); scale_p.innerText = "scale: " + scale; scale_but.onclick = () => { scale++; @@ -34,6 +39,9 @@ window.onload = () => { var r = canvas.getBoundingClientRect(); wasm_function('set_mouse')(e.clientX - r.x, e.clientY - r.y); } + for (var i = 0; i < pengers_img.length; i++) { + pengers_img[i].onclick = (e) => {wasm_set_variable('id', e.target.getAttribute('penger-id'))} + } }; (async() => { @@ -90,6 +98,7 @@ wasm_function('init')(); let prev = null; function first(timestamp) { + wasm_set_variable('id', Math.random() * document.getElementsByClassName('penger-img').length); prev = timestamp; wasm_function('draw')(0.16); window.requestAnimationFrame(loop); diff --git a/museum/18Plusger.png b/museum/18Plusger.png new file mode 100644 index 0000000..dc46e20 Binary files /dev/null and b/museum/18Plusger.png differ diff --git a/museum/Adelieger.png b/museum/Adelieger.png new file mode 100644 index 0000000..d751f43 Binary files /dev/null and b/museum/Adelieger.png differ diff --git a/museum/Baldger.png b/museum/Baldger.png new file mode 100644 index 0000000..cfd93b0 Binary files /dev/null and b/museum/Baldger.png differ diff --git a/museum/Blenger.png b/museum/Blenger.png new file mode 100644 index 0000000..34c22c7 Binary files /dev/null and b/museum/Blenger.png differ diff --git a/museum/BlueWolologer.png b/museum/BlueWolologer.png new file mode 100644 index 0000000..0b8774b Binary files /dev/null and b/museum/BlueWolologer.png differ diff --git a/museum/Camelger.png b/museum/Camelger.png new file mode 100644 index 0000000..30ee687 Binary files /dev/null and b/museum/Camelger.png differ diff --git a/museum/Camellow.png b/museum/Camellow.png new file mode 100644 index 0000000..69892ba Binary files /dev/null and b/museum/Camellow.png differ diff --git a/museum/Capger.png b/museum/Capger.png new file mode 100644 index 0000000..b70a3e6 Binary files /dev/null and b/museum/Capger.png differ diff --git a/museum/CapgerSaysTransRights.png b/museum/CapgerSaysTransRights.png new file mode 100644 index 0000000..a25e293 Binary files /dev/null and b/museum/CapgerSaysTransRights.png differ diff --git a/museum/CephonPenger.png b/museum/CephonPenger.png new file mode 100644 index 0000000..1806628 Binary files /dev/null and b/museum/CephonPenger.png differ diff --git a/museum/Clipenger.png b/museum/Clipenger.png new file mode 100644 index 0000000..d7c47ae Binary files /dev/null and b/museum/Clipenger.png differ diff --git a/museum/Clownger.png b/museum/Clownger.png new file mode 100644 index 0000000..bdbe96c Binary files /dev/null and b/museum/Clownger.png differ diff --git a/museum/Coffeeger.png b/museum/Coffeeger.png new file mode 100644 index 0000000..c02ce4e Binary files /dev/null and b/museum/Coffeeger.png differ diff --git a/museum/Cookger.png b/museum/Cookger.png new file mode 100644 index 0000000..c6c514e Binary files /dev/null and b/museum/Cookger.png differ diff --git a/museum/Copeger.png b/museum/Copeger.png new file mode 100644 index 0000000..cc4e73f Binary files /dev/null and b/museum/Copeger.png differ diff --git a/museum/Criminalger.png b/museum/Criminalger.png new file mode 100644 index 0000000..b6cccf7 Binary files /dev/null and b/museum/Criminalger.png differ diff --git a/museum/Cryger.png b/museum/Cryger.png new file mode 100644 index 0000000..31ce84e Binary files /dev/null and b/museum/Cryger.png differ diff --git a/museum/CrygerBlood.png b/museum/CrygerBlood.png new file mode 100644 index 0000000..b4c7ea1 Binary files /dev/null and b/museum/CrygerBlood.png differ diff --git a/museum/CrygerChernobyl.png b/museum/CrygerChernobyl.png new file mode 100644 index 0000000..4227da6 Binary files /dev/null and b/museum/CrygerChernobyl.png differ diff --git a/museum/Cyberger.png b/museum/Cyberger.png new file mode 100644 index 0000000..3d7c8aa Binary files /dev/null and b/museum/Cyberger.png differ diff --git a/museum/DarthPenger.png b/museum/DarthPenger.png new file mode 100644 index 0000000..4e6fac3 Binary files /dev/null and b/museum/DarthPenger.png differ diff --git a/museum/Deadger.png b/museum/Deadger.png new file mode 100644 index 0000000..74abc58 Binary files /dev/null and b/museum/Deadger.png differ diff --git a/museum/Demureger.png b/museum/Demureger.png new file mode 100644 index 0000000..1375cb4 Binary files /dev/null and b/museum/Demureger.png differ diff --git a/museum/Disger.png b/museum/Disger.png new file mode 100644 index 0000000..9eec036 Binary files /dev/null and b/museum/Disger.png differ diff --git a/museum/DoctorPenger.png b/museum/DoctorPenger.png new file mode 100644 index 0000000..8bc4100 Binary files /dev/null and b/museum/DoctorPenger.png differ diff --git a/museum/Doomger.png b/museum/Doomger.png new file mode 100644 index 0000000..726e089 Binary files /dev/null and b/museum/Doomger.png differ diff --git a/museum/EvilCyberger.png b/museum/EvilCyberger.png new file mode 100644 index 0000000..4e390bf Binary files /dev/null and b/museum/EvilCyberger.png differ diff --git a/museum/Factoryger.png b/museum/Factoryger.png new file mode 100644 index 0000000..c17a054 Binary files /dev/null and b/museum/Factoryger.png differ diff --git a/museum/Fatger.png b/museum/Fatger.png new file mode 100644 index 0000000..1bbb500 Binary files /dev/null and b/museum/Fatger.png differ diff --git a/museum/Ferrisger.png b/museum/Ferrisger.png new file mode 100644 index 0000000..be1e4b7 Binary files /dev/null and b/museum/Ferrisger.png differ diff --git a/museum/Fesh.png b/museum/Fesh.png new file mode 100644 index 0000000..22e92be Binary files /dev/null and b/museum/Fesh.png differ diff --git a/museum/Feshger.png b/museum/Feshger.png new file mode 100644 index 0000000..3c7fa18 Binary files /dev/null and b/museum/Feshger.png differ diff --git a/museum/Frankenpenger.png b/museum/Frankenpenger.png new file mode 100644 index 0000000..32e0548 Binary files /dev/null and b/museum/Frankenpenger.png differ diff --git a/museum/FullCookger.png b/museum/FullCookger.png new file mode 100644 index 0000000..e066123 Binary files /dev/null and b/museum/FullCookger.png differ diff --git a/museum/GNUPenger.png b/museum/GNUPenger.png new file mode 100644 index 0000000..aa598d3 Binary files /dev/null and b/museum/GNUPenger.png differ diff --git a/museum/Geniusger.png b/museum/Geniusger.png new file mode 100644 index 0000000..36360de Binary files /dev/null and b/museum/Geniusger.png differ diff --git a/museum/Ghostger.png b/museum/Ghostger.png new file mode 100644 index 0000000..8272a14 Binary files /dev/null and b/museum/Ghostger.png differ diff --git a/museum/Ghostyger.png b/museum/Ghostyger.png new file mode 100644 index 0000000..9c90a31 Binary files /dev/null and b/museum/Ghostyger.png differ diff --git a/museum/Githubger.png b/museum/Githubger.png new file mode 100644 index 0000000..debbe9b Binary files /dev/null and b/museum/Githubger.png differ diff --git a/museum/Goldger.png b/museum/Goldger.png new file mode 100644 index 0000000..1e52a15 Binary files /dev/null and b/museum/Goldger.png differ diff --git a/museum/Gonger.png b/museum/Gonger.png new file mode 100644 index 0000000..3e82cd6 Binary files /dev/null and b/museum/Gonger.png differ diff --git a/museum/Gopnikger.png b/museum/Gopnikger.png new file mode 100644 index 0000000..4a05714 Binary files /dev/null and b/museum/Gopnikger.png differ diff --git a/museum/Grubenger.png b/museum/Grubenger.png new file mode 100644 index 0000000..7c99c98 Binary files /dev/null and b/museum/Grubenger.png differ diff --git a/museum/Gunger.png b/museum/Gunger.png new file mode 100644 index 0000000..febd4bd Binary files /dev/null and b/museum/Gunger.png differ diff --git a/museum/HDPenger.png b/museum/HDPenger.png new file mode 100644 index 0000000..a6861de Binary files /dev/null and b/museum/HDPenger.png differ diff --git a/museum/Hackger.png b/museum/Hackger.png new file mode 100644 index 0000000..042bcae Binary files /dev/null and b/museum/Hackger.png differ diff --git a/museum/Heisenberger.png b/museum/Heisenberger.png new file mode 100644 index 0000000..ec9aed8 Binary files /dev/null and b/museum/Heisenberger.png differ diff --git a/museum/HolyCPenger.png b/museum/HolyCPenger.png new file mode 100644 index 0000000..f003a1a Binary files /dev/null and b/museum/HolyCPenger.png differ diff --git a/museum/Holyger.png b/museum/Holyger.png new file mode 100644 index 0000000..f835b30 Binary files /dev/null and b/museum/Holyger.png differ diff --git a/museum/Hoodger.png b/museum/Hoodger.png new file mode 100644 index 0000000..18cc00d Binary files /dev/null and b/museum/Hoodger.png differ diff --git a/museum/Howdyger.png b/museum/Howdyger.png new file mode 100644 index 0000000..cff6092 Binary files /dev/null and b/museum/Howdyger.png differ diff --git a/museum/Ideager.png b/museum/Ideager.png new file mode 100644 index 0000000..8719191 Binary files /dev/null and b/museum/Ideager.png differ diff --git a/museum/JPenger.png b/museum/JPenger.png new file mode 100644 index 0000000..b49dbd5 Binary files /dev/null and b/museum/JPenger.png differ diff --git a/museum/Jonkger.png b/museum/Jonkger.png new file mode 100644 index 0000000..0f30361 Binary files /dev/null and b/museum/Jonkger.png differ diff --git a/museum/Kidger.png b/museum/Kidger.png new file mode 100644 index 0000000..91014ea Binary files /dev/null and b/museum/Kidger.png differ diff --git a/museum/Knightger.png b/museum/Knightger.png new file mode 100644 index 0000000..45dedc6 Binary files /dev/null and b/museum/Knightger.png differ diff --git a/museum/Laptopger.png b/museum/Laptopger.png new file mode 100644 index 0000000..459af86 Binary files /dev/null and b/museum/Laptopger.png differ diff --git a/museum/Luigiger.png b/museum/Luigiger.png new file mode 100644 index 0000000..1cba23f Binary files /dev/null and b/museum/Luigiger.png differ diff --git a/museum/Macger.png b/museum/Macger.png new file mode 100644 index 0000000..4c4f800 Binary files /dev/null and b/museum/Macger.png differ diff --git a/museum/Madger.png b/museum/Madger.png new file mode 100644 index 0000000..5febc06 Binary files /dev/null and b/museum/Madger.png differ diff --git a/museum/Malger.png b/museum/Malger.png new file mode 100644 index 0000000..bbec08e Binary files /dev/null and b/museum/Malger.png differ diff --git a/museum/Marioger.png b/museum/Marioger.png new file mode 100644 index 0000000..ceb0cc4 Binary files /dev/null and b/museum/Marioger.png differ diff --git a/museum/Michaelger.png b/museum/Michaelger.png new file mode 100644 index 0000000..33c42f8 Binary files /dev/null and b/museum/Michaelger.png differ diff --git a/museum/Millhouseger.png b/museum/Millhouseger.png new file mode 100644 index 0000000..7602088 Binary files /dev/null and b/museum/Millhouseger.png differ diff --git a/museum/Mineger.png b/museum/Mineger.png new file mode 100644 index 0000000..41bc459 Binary files /dev/null and b/museum/Mineger.png differ diff --git a/museum/Momger.png b/museum/Momger.png new file mode 100644 index 0000000..dd156ec Binary files /dev/null and b/museum/Momger.png differ diff --git a/museum/Moustacheger.png b/museum/Moustacheger.png new file mode 100644 index 0000000..8c81fb8 Binary files /dev/null and b/museum/Moustacheger.png differ diff --git a/museum/Nerdger.png b/museum/Nerdger.png new file mode 100644 index 0000000..ea8c1bd Binary files /dev/null and b/museum/Nerdger.png differ diff --git a/museum/NinjaPenger.png b/museum/NinjaPenger.png new file mode 100644 index 0000000..a54d0d1 Binary files /dev/null and b/museum/NinjaPenger.png differ diff --git a/museum/Oldger.png b/museum/Oldger.png new file mode 100644 index 0000000..7a100a8 Binary files /dev/null and b/museum/Oldger.png differ diff --git a/museum/P_.png b/museum/P_.png new file mode 100644 index 0000000..c8d5741 Binary files /dev/null and b/museum/P_.png differ diff --git a/museum/Paintger.png b/museum/Paintger.png new file mode 100644 index 0000000..e753c87 Binary files /dev/null and b/museum/Paintger.png differ diff --git a/museum/Partyger.png b/museum/Partyger.png new file mode 100644 index 0000000..600e848 Binary files /dev/null and b/museum/Partyger.png differ diff --git a/museum/Pe.png b/museum/Pe.png new file mode 100644 index 0000000..3ad9b31 Binary files /dev/null and b/museum/Pe.png differ diff --git a/museum/Peng.png b/museum/Peng.png new file mode 100644 index 0000000..14db757 Binary files /dev/null and b/museum/Peng.png differ diff --git a/museum/PengKisser.png b/museum/PengKisser.png new file mode 100644 index 0000000..2fb99ff Binary files /dev/null and b/museum/PengKisser.png differ diff --git a/museum/Pengachu.png b/museum/Pengachu.png new file mode 100644 index 0000000..a997762 Binary files /dev/null and b/museum/Pengachu.png differ diff --git a/museum/Penganger.png b/museum/Penganger.png new file mode 100644 index 0000000..9dc185e Binary files /dev/null and b/museum/Penganger.png differ diff --git a/museum/Pengcoder.png b/museum/Pengcoder.png new file mode 100644 index 0000000..b1b2e24 Binary files /dev/null and b/museum/Pengcoder.png differ diff --git a/museum/Penger.png b/museum/Penger.png new file mode 100644 index 0000000..380c64d Binary files /dev/null and b/museum/Penger.png differ diff --git a/museum/PengerClose.png b/museum/PengerClose.png new file mode 100644 index 0000000..1845ef1 Binary files /dev/null and b/museum/PengerClose.png differ diff --git a/museum/PengerCoin.png b/museum/PengerCoin.png new file mode 100644 index 0000000..f03182a Binary files /dev/null and b/museum/PengerCoin.png differ diff --git a/museum/PengerFront.png b/museum/PengerFront.png new file mode 100644 index 0000000..548101f Binary files /dev/null and b/museum/PengerFront.png differ diff --git a/museum/PengerGiga.png b/museum/PengerGiga.png new file mode 100644 index 0000000..90dc498 Binary files /dev/null and b/museum/PengerGiga.png differ diff --git a/museum/PengerH.png b/museum/PengerH.png new file mode 100644 index 0000000..a951dda Binary files /dev/null and b/museum/PengerH.png differ diff --git a/museum/PengerHeart.png b/museum/PengerHeart.png new file mode 100644 index 0000000..c62b55d Binary files /dev/null and b/museum/PengerHeart.png differ diff --git a/museum/PengerNote.png b/museum/PengerNote.png new file mode 100644 index 0000000..077df37 Binary files /dev/null and b/museum/PengerNote.png differ diff --git a/museum/PengerNumberOne.png b/museum/PengerNumberOne.png new file mode 100644 index 0000000..70690b6 Binary files /dev/null and b/museum/PengerNumberOne.png differ diff --git a/museum/PengerRidingCamellow.png b/museum/PengerRidingCamellow.png new file mode 100644 index 0000000..7410ccd Binary files /dev/null and b/museum/PengerRidingCamellow.png differ diff --git a/museum/PengerSeller.png b/museum/PengerSeller.png new file mode 100644 index 0000000..9f5e748 Binary files /dev/null and b/museum/PengerSeller.png differ diff --git a/museum/PengerSilverfoot.png b/museum/PengerSilverfoot.png new file mode 100644 index 0000000..c05cc76 Binary files /dev/null and b/museum/PengerSilverfoot.png differ diff --git a/museum/PengerStatue.png b/museum/PengerStatue.png new file mode 100644 index 0000000..420218c Binary files /dev/null and b/museum/PengerStatue.png differ diff --git a/museum/PengerStream.png b/museum/PengerStream.png new file mode 100644 index 0000000..d196a95 Binary files /dev/null and b/museum/PengerStream.png differ diff --git a/museum/PengerTPose.png b/museum/PengerTPose.png new file mode 100644 index 0000000..7ad2ffd Binary files /dev/null and b/museum/PengerTPose.png differ diff --git a/museum/PengerThumbsUp.png b/museum/PengerThumbsUp.png new file mode 100644 index 0000000..ab6f371 Binary files /dev/null and b/museum/PengerThumbsUp.png differ diff --git a/museum/Pengerberry.png b/museum/Pengerberry.png new file mode 100644 index 0000000..1e97143 Binary files /dev/null and b/museum/Pengerberry.png differ diff --git a/museum/Penghost.png b/museum/Penghost.png new file mode 100644 index 0000000..f74b327 Binary files /dev/null and b/museum/Penghost.png differ diff --git a/museum/Penglup.png b/museum/Penglup.png new file mode 100644 index 0000000..c131492 Binary files /dev/null and b/museum/Penglup.png differ diff --git a/museum/Pinker.png b/museum/Pinker.png new file mode 100644 index 0000000..fa8e8a8 Binary files /dev/null and b/museum/Pinker.png differ diff --git a/museum/Pipimiger.png b/museum/Pipimiger.png new file mode 100644 index 0000000..55dcc26 Binary files /dev/null and b/museum/Pipimiger.png differ diff --git a/museum/Policeger.png b/museum/Policeger.png new file mode 100644 index 0000000..38397d7 Binary files /dev/null and b/museum/Policeger.png differ diff --git a/museum/PongarTheBarbarian.png b/museum/PongarTheBarbarian.png new file mode 100644 index 0000000..f690bc5 Binary files /dev/null and b/museum/PongarTheBarbarian.png differ diff --git a/museum/Ponger.png b/museum/Ponger.png new file mode 100644 index 0000000..e895580 Binary files /dev/null and b/museum/Ponger.png differ diff --git a/museum/PongerWizard.png b/museum/PongerWizard.png new file mode 100644 index 0000000..6fe6af9 Binary files /dev/null and b/museum/PongerWizard.png differ diff --git a/museum/Popukoger.png b/museum/Popukoger.png new file mode 100644 index 0000000..c621981 Binary files /dev/null and b/museum/Popukoger.png differ diff --git a/museum/PowerPenger.png b/museum/PowerPenger.png new file mode 100644 index 0000000..0dc0ad4 Binary files /dev/null and b/museum/PowerPenger.png differ diff --git a/museum/Presentger.png b/museum/Presentger.png new file mode 100644 index 0000000..45ea32f Binary files /dev/null and b/museum/Presentger.png differ diff --git a/museum/PrincessPeachger.png b/museum/PrincessPeachger.png new file mode 100644 index 0000000..46a5fa1 Binary files /dev/null and b/museum/PrincessPeachger.png differ diff --git a/museum/Queenger.png b/museum/Queenger.png new file mode 100644 index 0000000..b83a1b7 Binary files /dev/null and b/museum/Queenger.png differ diff --git a/museum/RedWolologer.png b/museum/RedWolologer.png new file mode 100644 index 0000000..c4f53f7 Binary files /dev/null and b/museum/RedWolologer.png differ diff --git a/museum/Redger.png b/museum/Redger.png new file mode 100644 index 0000000..3b8411c Binary files /dev/null and b/museum/Redger.png differ diff --git a/museum/Richger.png b/museum/Richger.png new file mode 100644 index 0000000..2302784 Binary files /dev/null and b/museum/Richger.png differ diff --git a/museum/Rockhopger.png b/museum/Rockhopger.png new file mode 100644 index 0000000..bbe7ad7 Binary files /dev/null and b/museum/Rockhopger.png differ diff --git a/museum/Rubyger.png b/museum/Rubyger.png new file mode 100644 index 0000000..efcb0fe Binary files /dev/null and b/museum/Rubyger.png differ diff --git a/museum/SailorMoonger.png b/museum/SailorMoonger.png new file mode 100644 index 0000000..97515a3 Binary files /dev/null and b/museum/SailorMoonger.png differ diff --git a/museum/Saluteger.png b/museum/Saluteger.png new file mode 100644 index 0000000..0313a02 Binary files /dev/null and b/museum/Saluteger.png differ diff --git a/museum/Samiger.png b/museum/Samiger.png new file mode 100644 index 0000000..bb40eae Binary files /dev/null and b/museum/Samiger.png differ diff --git a/museum/ScientistPenger.png b/museum/ScientistPenger.png new file mode 100644 index 0000000..77aef50 Binary files /dev/null and b/museum/ScientistPenger.png differ diff --git a/museum/ScientistPengerFlask.png b/museum/ScientistPengerFlask.png new file mode 100644 index 0000000..5fc5f19 Binary files /dev/null and b/museum/ScientistPengerFlask.png differ diff --git a/museum/Seniorger.png b/museum/Seniorger.png new file mode 100644 index 0000000..89dd4d4 Binary files /dev/null and b/museum/Seniorger.png differ diff --git a/museum/Skeleger.png b/museum/Skeleger.png new file mode 100644 index 0000000..175c030 Binary files /dev/null and b/museum/Skeleger.png differ diff --git a/museum/SkiFreeger.png b/museum/SkiFreeger.png new file mode 100644 index 0000000..145c645 Binary files /dev/null and b/museum/SkiFreeger.png differ diff --git a/museum/Sleepger.png b/museum/Sleepger.png new file mode 100644 index 0000000..eec95cf Binary files /dev/null and b/museum/Sleepger.png differ diff --git a/museum/Sonarqubeger.png b/museum/Sonarqubeger.png new file mode 100644 index 0000000..18bde18 Binary files /dev/null and b/museum/Sonarqubeger.png differ diff --git a/museum/Soupger.png b/museum/Soupger.png new file mode 100644 index 0000000..933ab03 Binary files /dev/null and b/museum/Soupger.png differ diff --git a/museum/Spainger.png b/museum/Spainger.png new file mode 100644 index 0000000..800e4d4 Binary files /dev/null and b/museum/Spainger.png differ diff --git a/museum/Spillger.png b/museum/Spillger.png new file mode 100644 index 0000000..16eb621 Binary files /dev/null and b/museum/Spillger.png differ diff --git a/museum/Sponger.png b/museum/Sponger.png new file mode 100644 index 0000000..1dea1ea Binary files /dev/null and b/museum/Sponger.png differ diff --git a/museum/Startleger.png b/museum/Startleger.png new file mode 100644 index 0000000..18fe41f Binary files /dev/null and b/museum/Startleger.png differ diff --git a/museum/Stronger.png b/museum/Stronger.png new file mode 100644 index 0000000..c75e45e Binary files /dev/null and b/museum/Stronger.png differ diff --git a/museum/Suitger.png b/museum/Suitger.png new file mode 100644 index 0000000..476e7d3 Binary files /dev/null and b/museum/Suitger.png differ diff --git a/museum/SuperPenger.png b/museum/SuperPenger.png new file mode 100644 index 0000000..d97e3c8 Binary files /dev/null and b/museum/SuperPenger.png differ diff --git a/museum/Surfger.png b/museum/Surfger.png new file mode 100644 index 0000000..7bd0935 Binary files /dev/null and b/museum/Surfger.png differ diff --git a/museum/Susger.png b/museum/Susger.png new file mode 100644 index 0000000..ad81bb6 Binary files /dev/null and b/museum/Susger.png differ diff --git a/museum/Swagger.png b/museum/Swagger.png new file mode 100644 index 0000000..7edb944 Binary files /dev/null and b/museum/Swagger.png differ diff --git a/museum/Swenger.png b/museum/Swenger.png new file mode 100644 index 0000000..3298716 Binary files /dev/null and b/museum/Swenger.png differ diff --git a/museum/TakeoutCoffeeger.png b/museum/TakeoutCoffeeger.png new file mode 100644 index 0000000..985b897 Binary files /dev/null and b/museum/TakeoutCoffeeger.png differ diff --git a/museum/Toadger.png b/museum/Toadger.png new file mode 100644 index 0000000..f8ac1a8 Binary files /dev/null and b/museum/Toadger.png differ diff --git a/museum/Transparencenger.png b/museum/Transparencenger.png new file mode 100644 index 0000000..2eee9a2 Binary files /dev/null and b/museum/Transparencenger.png differ diff --git a/museum/Tuxger.png b/museum/Tuxger.png new file mode 100644 index 0000000..f0ee8c5 Binary files /dev/null and b/museum/Tuxger.png differ diff --git a/museum/TwitchPenger.png b/museum/TwitchPenger.png new file mode 100644 index 0000000..7b3f2a3 Binary files /dev/null and b/museum/TwitchPenger.png differ diff --git a/museum/USAger.png b/museum/USAger.png new file mode 100644 index 0000000..ac43ca5 Binary files /dev/null and b/museum/USAger.png differ diff --git a/penger.png b/museum/Urinalger.png similarity index 73% rename from penger.png rename to museum/Urinalger.png index 58c50f3..784de4a 100644 Binary files a/penger.png and b/museum/Urinalger.png differ diff --git a/museum/Waitinger.png b/museum/Waitinger.png new file mode 100644 index 0000000..838af74 Binary files /dev/null and b/museum/Waitinger.png differ diff --git a/museum/Weezger.png b/museum/Weezger.png new file mode 100644 index 0000000..0ec04e6 Binary files /dev/null and b/museum/Weezger.png differ diff --git a/museum/Wrightger.png b/museum/Wrightger.png new file mode 100644 index 0000000..ddbcaa4 Binary files /dev/null and b/museum/Wrightger.png differ diff --git a/museum/Younger.png b/museum/Younger.png new file mode 100644 index 0000000..192a700 Binary files /dev/null and b/museum/Younger.png differ diff --git a/museum/Zombieger.png b/museum/Zombieger.png new file mode 100644 index 0000000..ad8eda9 Binary files /dev/null and b/museum/Zombieger.png differ diff --git a/png2c.c b/png2c.c index a7beb7e..fa9dbdb 100644 --- a/png2c.c +++ b/png2c.c @@ -19,20 +19,42 @@ int main(int argc, const char *argv[]) return 1; } - int file_name_len = strlen(img_path) - strlen(".png"); - - printf("int %.*s_height = %d;\n", file_name_len, img_path, height); - printf("int %.*s_width = %d;\n", file_name_len, img_path, width); - printf("unsigned int %.*s_img[%d][%d] = {\n", file_name_len, img_path, height, width); + if (argc < 3) { // no id provided + int file_name_len = strlen(img_path) - strlen(".png"); - for (int y = 0; y < height; y++) { - printf(" "); - for (int i = 0; i < width; i++) { - printf("0x%08X,", data[y*width + i]); + printf("int %.*s_height = %d;\n", file_name_len, img_path, height); + printf("int %.*s_width = %d;\n", file_name_len, img_path, width); + printf("unsigned int %.*s_img[%d][%d] = {\n", file_name_len, img_path, height, width); + + for (int y = 0; y < height; y++) { + printf(" "); + for (int i = 0; i < width; i++) { + printf("0x%08X,", data[y*width + i]); + } + printf("\n"); } - printf("\n"); - } - printf("};\n"); + printf("};\n"); + } else { // id provided + int id = atoi(argv[2]); + + printf("unsigned int penger_img_%d[] = {\n", id); + + for (int y = 0; y < height; y++) { + printf(" "); + for (int i = 0; i < width; i++) { + printf("0x%08X,", data[y*width + i]); + } + printf("\n"); + } + + printf("};\n"); + + printf("void penger_init_%d(void) {\n", id); + printf(" pengers_height[%d] = %d;\n", id, height); + printf(" pengers_width[%d] = %d;\n", id, width); + printf(" pengers_img[%d] = penger_img_%d;\n", id, id); + printf("}\n"); + } }