diff --git a/apps/drinkcounter/ChangeLog b/apps/drinkcounter/ChangeLog new file mode 100644 index 000000000..bb80ab4d7 --- /dev/null +++ b/apps/drinkcounter/ChangeLog @@ -0,0 +1 @@ +0.10: Initial release \ No newline at end of file diff --git a/apps/drinkcounter/README.md b/apps/drinkcounter/README.md new file mode 100644 index 000000000..298c82743 --- /dev/null +++ b/apps/drinkcounter/README.md @@ -0,0 +1,12 @@ +# Drink Counter + +Counts drinks you had for science. Calculates BAC. + +## Usage + + + + +## Creator + +Hank - contact at http://forum.espruino.com diff --git a/apps/drinkcounter/app.js b/apps/drinkcounter/app.js new file mode 100644 index 000000000..dcd1e8e76 --- /dev/null +++ b/apps/drinkcounter/app.js @@ -0,0 +1,48 @@ +Bangle.setLCDPower(1); +Bangle.setLCDTimeout(0); +g.reset(); +c = 1; + + +var icoBeer = require("heatshrink").decompress(atob("lEoxH+AG2BAAoecEpAoWC4fXAAIGGAAowTDxAmJE4YGGE5QeJE5QHHE7owJE0pQKE7pQJE86fnE5QJSE5YUHBAIJQYxIpFAAvGBBAJIExYoGDgIACBBApFExonCDYoAOFSAnbFJYnE6vVDYYFHAwakQE4YaFAoQGJEIYoME7QoEE7ogFE/4neTBgntY84n/E+7HUE64mDE8IAFEw4nDTBifIE9gmId7gALE5IGCAooGDE6gASE8yaME7gmOFIgAREqIAhA==")); +var icoCocktail = require("heatshrink").decompress(atob("lEoxH+AH4AJtgABEkgmiEiXGAAIllAAiXeEAPXAQQDCFBYmTEgYqDFBZNWAIZRME6IfBEAYuEE5J2UwIAaJ5QncFBB3DB4YGCACQnKTQgoXE5bIEE6qfKPAZRFA4MUABgmNPAonBCgQnPExgpFPIgoNEyBSF4wGBFBgmSABCjJTZwoXEzwoHE0AoFE0QnCFAQmhKAonjFAInCE0Qn/E/4n/E/4n/wInDFEAhBEwQoDFLYdCEwooEFTAjHAAwoYIYgAMPDglT")); +var icoShot = require("heatshrink").decompress(atob("lEoxH+AH4A/AH4A/AH4AqwIAgE+HXADRPME8ZQM5AnSZBQkGAAYngEYonfJA5QQE8zGJFAYfKFBwmKE4iYIE7rpIeYgAJE5woEEpQKHTxhQIIpJaHJxgn/E8zGQZBAnQYxxQRFQYnlFgon5FCYmDE6LjHZRQmPE5AAOE/4njFCTGQKCwmRKAgATE54oWEyAqTDZY")); + +function setColor(delta){ + c+=delta; + c = Math.max(c,0); + c = Math.min(c,2); + if (c<1){ + g.setColor(c,0,0); + Bangle.setLCDBrightness(c >= 0.1 ? c : 0.1); + }else{ + g.setColor(1,c-1,c-1); + Bangle.setLCDBrightness(1); + } + g.fillRect(0,0,g.getWidth(),g.getHeight()); +} + +function updownHandler(direction){ + if (direction == undefined){ + c=1; + setColor(0); + } else { + setColor(-direction * 0.1); + } +} + +setColor(0); + + g.drawImage(icoBeer,0,100); + g.drawImage(icoCocktail,40,100); + g.drawImage(icoShot,80,100); + +// Bangle 1: +// BTN1: light up toward white +// BTN3: light down to red +// BTN2: reset +// Bangle 2: +// Swipe up: light up toward white +// Swipe down: light down to red +// BTN1: reset +Bangle.setUI("updown", updownHandler); diff --git a/apps/drinkcounter/app.png b/apps/drinkcounter/app.png new file mode 100644 index 000000000..b6aaecef9 Binary files /dev/null and b/apps/drinkcounter/app.png differ diff --git a/apps/drinkcounter/drinkcounter-icon.js b/apps/drinkcounter/drinkcounter-icon.js new file mode 100644 index 000000000..8228b2616 --- /dev/null +++ b/apps/drinkcounter/drinkcounter-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("KCiI/tfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19eBgYGBgYGB19fX19fX19fX19fX19fX19fX19fX19fXgYGBgYHX14GBgYGBgYGBgYHX19fX19fX19fX19fX19fX19fX14GBgYHX19eBgYGB19fX19fX19fXgYGBgYGBgYGB19fX19fX19fX19eBgdfX19fX19eB19fX19fX19fX14GBgdfX19eBgYHX19fX19fX19fXgdfX19fX19fX19fX19fX19fX19eBgdfX19fX14GB19fX19fX19fX14HX19fX19fX19fX19fX19fX19fX19fX19fX19fXgdfX19fX19fX14HX19fX19fX19fX19fX19fX19fX19fX19fX19fX14GB19fX19fX19eB19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXgdfX19fX19fXgdfX19fX19fX19fX19fX19fX19fX19fX19fX19fX14HX19fX19fX19eB19fX19fX19fX19fX19fX19fX19fX19fX19fX14HX19fX19fX19fXgdfX19fX19fX14HX19fX19fX19eB19fX19fX19eB19fX19fX19fX14GB19fX19fX14GBgdfX19fX19eBgYHX19fX19eBgdfX19fX19fX19fX14GBgYGBgYGBxoGBgYGBgYGBxsaBgYGBgYGBgdfX19fX19fX19fX19fXgYGBgYHGxsbGxoGBgYHGxsbGxsaBgYGBgdfX19fX19fX19fX19fX14GBxsbGxsbGxsbGxsbGxsbGxsbGxsbGgYGBgYHX19fX19fX19fX19eBgcbGxsbGxsbGxsbGxsbGxsbGxsbGxoGBgYGBgYHX19fX19fX19fXgYHGxsbV1cbGxsbV1cbGxsbV1dXGxsaBgYGBgYGBgdfX19fX19fX14GBxsbV1dXGxsbV1dXVxsbG1dXV1cbGgYHX14GBgYGB19fX19fX19eBgcbG1dXVxsbG1dXV1cbGxtXV1dXGxoGB19fXgYGBgdfX19fX19fXgYHGxtXV1cbGxtXV1dXGxsbV1dXVxoGBgdfX14GBgYHX19fX19fX14GBxsbV1dXGxsbV1dXVxsbG1dXV1caBgYHX19eBgYGB19fX19fX19eBgcbG1dXVxsbG1dXV1cbGxtXV1dXGgYGB19fXgYGBgdfX19fX19fXgYHG1dXV1cbGxtXV1dXGxsbV1dXVxoGBgdfX14GBgYHX19fX19fX14GBxtXV1dXGxsbV1dXVxsbG1dXV1cbGgYHX19eBgYGB19fX19fX19eBgcbG1dXVxsbG1dXV1cbGxtXV1dXGxoGB19fXgYGBgdfX19fX19fXgYHGxtXV1cbGxtXV1dXGxsbV1dXVxsaBgdfX14GBgYHX19fX19fX14GBxsbV1dXGxsbV1dXVxsbG1dXV1cbGgYHX19eBgYGB19fX19fX19eBgcbG1dXVxsbG1dXV1cbGxtXV1dXGgYGB19fXgYGBgdfX19fX19fXgYHGxtXV1cbGxtXV1dXGxsbV1dXVxoGBgdfXgYGBgYHX19fX19fX14GBxsbV1dXGxsbV1dXVxsbG1dXV1caBgYGBgYGBgYHX19fX19fX19eBgcbV1dXVxsbG1dXV1cbGxtXV1dXGxoGBgYGBgYGB19fX19fX19fXgYHG1dXV1cbGxtXV1dXGxsbV1dXVxsaBgYGBgYGB19fX19fX19fX14GBxsbV1dXGxsbV1dXVxsbG1dXV1cbGgYHX19fX19fX19fX19fX19eBgcbG1dXVxsbGxtXVxsbGxtXV1cbGxoGB19fX19fX19fX19fX19fXgYHGxsbGxsbGxsbGxsbGxsbGxsbGxsaBgdfX19fX19fX19fX19fX14GBxsbGxsbGxsbGxsbGxsbGxsbGxsaBgYHX19fX19fX19fX19fX19eBgcbGxsbGxsbGxsbGxsbGxsbGxsbGgYHX19fX19fX19fX19fX19fX19eBgYGBgYGBgYGBgYGBgYGBgYGBgdfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19c=")) diff --git a/apps/drinkcounter/metadata.json b/apps/drinkcounter/metadata.json new file mode 100644 index 000000000..5930c6b5a --- /dev/null +++ b/apps/drinkcounter/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "drinkcounter", + "name": "Drink Counter", + "shortName": "Drink Counter", + "version": "0.10", + "description": "Counts drinks you had for science.", + "allow_emulator":true, + "icon": "app.png", + "type": "app", + "tags": "health", + "supports": ["BANGLEJS","BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"drinkcounter.app.js","url":"app.js"}, + {"name":"drinkcounter.img","url":"drinkcounter-icon.js","evaluate":true} + ] +} \ No newline at end of file