Bump version for addition of README and Daisy character

master
Paul Cockrell 2020-04-07 09:18:35 +01:00
parent 9f91b5559b
commit 4ad3f59561
3 changed files with 38 additions and 21 deletions

View File

@ -914,7 +914,7 @@
{ "id": "marioclock", { "id": "marioclock",
"name": "Mario Clock", "name": "Mario Clock",
"icon": "marioclock.png", "icon": "marioclock.png",
"version":"0.07", "version":"0.08",
"description": "Animated retro Mario clock, with Gameboy style 8-bit grey-scale graphics.", "description": "Animated retro Mario clock, with Gameboy style 8-bit grey-scale graphics.",
"tags": "clock,mario,retro", "tags": "clock,mario,retro",
"type": "clock", "type": "clock",

View File

@ -4,4 +4,5 @@
0.04: modify date to display to be more at the original idea but still localized 0.04: modify date to display to be more at the original idea but still localized
0.05: use 12/24 hour clock from settings 0.05: use 12/24 hour clock from settings
0.06: Performance refactor, and enhanced graphics! 0.06: Performance refactor, and enhanced graphics!
0.07: Swipe right to change between Mario and Toad characters, swipe left to toggle night mode 0.07: Swipe right to change between Mario and Toad characters, swipe left to toggle night mode
0.08: Add Readme. Add Princes Daisy

View File

@ -27,6 +27,7 @@ const DARKEST = "#122d3e";
const NIGHT = "#001818"; const NIGHT = "#001818";
// Character names // Character names
const DAISY = "daisy";
const TOAD = "toad"; const TOAD = "toad";
const MARIO = "mario"; const MARIO = "mario";
@ -65,11 +66,18 @@ function genRanNum(min, max) {
function switchCharacter() { function switchCharacter() {
const curChar = characterSprite.character; const curChar = characterSprite.character;
let newChar; let newChar;
if (curChar === MARIO) { switch(curChar) {
newChar = TOAD; case DAISY:
} else { newChar = MARIO;
newChar = MARIO; break;
case TOAD:
newChar = DAISY;
break;
case MARIO:
default:
newChar = TOAD;
} }
characterSprite.character = newChar; characterSprite.character = newChar;
@ -193,6 +201,19 @@ function drawCoin() {
drawCoinFrame(coinSprite.x, coinSprite.y); drawCoinFrame(coinSprite.x, coinSprite.y);
} }
function drawDaisyFrame(idx, x, y) {
switch(idx) {
case 0:
const dFr1 = require("heatshrink").decompress(atob("h8UxH+AAsHAIgAI60HAIQOJBYIABDpMHAAwNNB4wOJB4gIEHgQBBBxYQCBwYLDDhIaEBxApEw4qDAgIOHDwiIEBwtcFIRWIUgWHw6TIAQXWrlcWZAqBDQIeBBxQaBDxIcCHIQ8JDAIAFWJLPHA=="));
g.drawImage(dFr1, x, y);
break;
case 1:
default:
const dFr2 = require("heatshrink").decompress(atob("h8UxH+AAsHAIgAI60HAIQOJBYIABDpMHAAwNNB4wOJB4gIEHgQBBBxYQCBwYLDDhIaEBxApEw4qDAgIOHDwiIEBwtcFIRWIUgQvBSZACCBwNcWZQcCAAIPIDgYACFw4YBDYIOCD4waEDYI+HaBQ="));
g.drawImage(dFr2, x, y);
}
}
function drawMarioFrame(idx, x, y) { function drawMarioFrame(idx, x, y) {
switch(idx) { switch(idx) {
case 0: case 0:
@ -200,10 +221,9 @@ function drawMarioFrame(idx, x, y) {
g.drawImage(mFr1, x, y); g.drawImage(mFr1, x, y);
break; break;
case 1: case 1:
default:
const mFr2 = require("heatshrink").decompress(atob("h8UxH+AAkHAAYKFBolcAAIPIBgYPDBpgfGFIY7EA4YcEBIPWAAYdDC4gLDAII5ECoYOFDogODFgoJCBwYZCAQYOFBAhAFFwZKGHQpMDw+HCQYEBSowOBBQIdCCgTOIFgiVHFwYCBUhA9FBwz8HAo73GACQA=")); // Mario frame 2 const mFr2 = require("heatshrink").decompress(atob("h8UxH+AAkHAAYKFBolcAAIPIBgYPDBpgfGFIY7EA4YcEBIPWAAYdDC4gLDAII5ECoYOFDogODFgoJCBwYZCAQYOFBAhAFFwZKGHQpMDw+HCQYEBSowOBBQIdCCgTOIFgiVHFwYCBUhA9FBwz8HAo73GACQA=")); // Mario frame 2
g.drawImage(mFr2, x, y); g.drawImage(mFr2, x, y);
break;
default:
} }
} }
@ -214,10 +234,9 @@ function drawToadFrame(idx, x, y) {
g.drawImage(tFr1, x, y); g.drawImage(tFr1, x, y);
break; break;
case 1: case 1:
default:
const tFr2 = require("heatshrink").decompress(atob("iEUxH+ACkHAAoNJrnWAAQRGg/WrgACB4QEBCAYOBB44QFB4QICAg4QBBAQbDEgwPCHpAGCGAQ9KAYQPKCYg/EJAoADAwaKFw4BEP4YQCBIIABB468EB4QADYIoQGDwQOGBYQrDb4wcGFxYLDMoYgHRYgwKABAMBA")); // Mario frame 2 const tFr2 = require("heatshrink").decompress(atob("iEUxH+ACkHAAoNJrnWAAQRGg/WrgACB4QEBCAYOBB44QFB4QICAg4QBBAQbDEgwPCHpAGCGAQ9KAYQPKCYg/EJAoADAwaKFw4BEP4YQCBIIABB468EB4QADYIoQGDwQOGBYQrDb4wcGFxYLDMoYgHRYgwKABAMBA")); // Mario frame 2
g.drawImage(tFr2, x, y); g.drawImage(tFr2, x, y);
break;
default:
} }
} }
@ -251,10 +270,13 @@ function drawCharacter(date, character) {
} }
switch(characterSprite.character) { switch(characterSprite.character) {
case(TOAD): case DAISY:
drawDaisyFrame(characterSprite.frameIdx, characterSprite.x, characterSprite.y);
break;
case TOAD:
drawToadFrame(characterSprite.frameIdx, characterSprite.x, characterSprite.y); drawToadFrame(characterSprite.frameIdx, characterSprite.x, characterSprite.y);
break; break;
case(MARIO): case MARIO:
default: default:
drawMarioFrame(characterSprite.frameIdx, characterSprite.x, characterSprite.y); drawMarioFrame(characterSprite.frameIdx, characterSprite.x, characterSprite.y);
} }
@ -362,13 +384,7 @@ function init() {
Bangle.showLauncher(); Bangle.showLauncher();
}, BTN2, {repeat:false,edge:"falling"}); }, BTN2, {repeat:false,edge:"falling"});
Bangle.on('lcdPower', (on) => { Bangle.on('lcdPower', (on) => on ? startTimers() : clearTimers());
if (on) {
startTimers();
} else {
clearTimers();
}
});
Bangle.on('faceUp', (up) => { Bangle.on('faceUp', (up) => {
if (up && !Bangle.isLCDOn()) { if (up && !Bangle.isLCDOn()) {
@ -382,11 +398,11 @@ function init() {
switch(sDir) { switch(sDir) {
// Swipe right (1) - change character (on a loop) // Swipe right (1) - change character (on a loop)
case(1): case 1:
switchCharacter(); switchCharacter();
break; break;
// Swipe left (-1) - change day/night mode (on a loop) // Swipe left (-1) - change day/night mode (on a loop)
case(-1): case -1:
default: default:
toggleNightMode(); toggleNightMode();
} }