BangleApps/apps/nesclock/app.js

267 lines
50 KiB
JavaScript

{ // must be inside our own scope here so that when we are unloaded everything disappears
// we also define functions using 'let fn = function() {..}' for the same reason. function decls are global
const sm256 = E.toString(require('heatshrink').decompress(atob('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')));
Graphics.prototype.setFontSuperMario256 = function() {
// Actual height 26 (25 - 0)
return this.setFontCustom(
sm256,
32,
atob("DQgHFhMQFwMGBwcLBAsIDw4SExAUEQ8TEA8ICBYKFg4YExAQEQ8PERIJEhARHhIUERQSExUTFhsUEBEGDAkKEw0TEBARDw4REgkSEBEeEhQRFBITFRMWGxQQEREEERYA"),
26 | 65536
);
};
const spb = E.toString(require('heatshrink').decompress(atob('ABcP//v//+/4EBBIXAgH8AgYJLgfegE98AiBgH/+AECBJYYCAAMB/8/n/z+f/3/8nEzIIM/7/x/gZBGwMAn/wn//v4BC54BC4H/wEPwEA+AWBv+/MwIADhwCBH4PwDoMP8AVDNBMHDogABCgQABAgIjBAAX3AQKBCmBQBBwItB/wiBAgIJBgcQEAwEDRYgyCBwyRDEYMfwEB/AIEjwESEQoKHJwKrBVIqnB4CnCAIIACBwKpFQYodCFQRQBBgqQDEQb4BG4Uf/8HFIP4//+h9/wDgDh/vawLbChw2G342CgIXBv6PB+AmBUgLdGU4RKB/P8/+f//5//zwH/n4EBCgMf/j+DCYIADCYW///7fIOfCYQrBToIgBAIIABT4vAHYQnKAAf3BwITDngyCG4PwnATJgPh8EejwECBIsfwPhYIIABewMDSAWAh98gPj8E8j8HwATCg+egF58AERDAXA/E+j8B+fgh5MBGII2CHYITCAwL/Bh/zc4P+MoL5BE4JTDSA/xfgN/x/3DAN/94ECj4dBEQXgDQMDF4N/fQ0AEAIADBwJEBIoIAGh8PCYzaCAgI0BE4gTBAIJMCh67CE44TCE4oTKHYPwEoIEDJ5ZkB+ASBAgSYCJ5P8BQPH/98v47JEYIJICZIyCOQQuCBIJtFYAQxeCgJqBAgrlJDoXzBJDvHDpYTJd5DbRBIJxBDIN/4DHMHZByFFhRUJ5/v/gKBGAMOFgIPB+4DBn5UCF4gsHHIgODKgjqOx//HgQTGBIWAE54dJGI4AEVQIJICYXAh/+BwS+CAAQJCYQfwg//gf/+IhE/ABBh/8XpaNDh5pBGwQCBWQICCgE/DoM/CYMQXAgkIA=')));
Graphics.prototype.setFontSuperPlumberBrothers = function() {
// Actual height 20 (19 - 0)
return this.setFontCustom(
spb,
32,
atob("BQQIDAgJCQQFBQgKBAoECQgGCAgJCAgICAgEBAgKCAgNCAgICAgICAgECAgIDAgICAoICAgICAwICAgFCQU="),
20 | 65536
);
};
const kc = E.toString(require('heatshrink').decompress(atob('AC0P+cH/OABg88gEfA4kD8ARHoEDkUBz8A/8D/kB+Vgjfwj/gn1AjcggOQgAxGsEenEfxkI4Uf//ijGBx3A8/AgABBKQYBB4EEkECiHB/HAvPAgOAgeAg84g8/g0xwUQoEMsBZGnEAv0D2eD+HBzEgw0QoOImFsjkcgFPgE/wEcoEIkEAiH4DgKHCgInDv+A//w8Ec4EDNwsMgEjwFwCAKFBBwxaBOISaBgEwgEsgEyCYsQgEIgEEgECHoOAj/8g/+gBNCCAgAHGIQZBBAZdCA4NAD4QAGsBECXIc/gH4g/gWIJ6D4F/+F//k8n0cg8Px+H//B//ATwIUBhzcD/8H//H//hQ4LGCnE8EAM+j1/h1/EIPD/vg/nwhDYBXQMeGAOP2fHznj/3w//4IIMevjvEnjUCv8AvvA//8v/+n//CATxBSwMB4H9EYN4v88n+Ojvvh3/w8/wePMYUfcAP8j/+j/nh9zCAPBz/gRwISBuA+Bh0en8PMof/wLVBeIN4KYTeBQ4IBB4e88PcuBnBn4yBCoJpCgfwgf84J4B894vYSCh/8gf4cQUxwEY4DlF4Fj4ExBQ0BwB8BgBaBJANsgEzgEREIUMmEMjEGhgcFgEJTgOAgVAgI7ByEApEAkkAiQQGDowAB4OAsHAjFghlggUwgOYgHYbgTNBhx7BDQgJBIgMEjuCjnBxinCDAIAEfQP/wHAGIVH41n+cjjGRglIwUkv8Tv+YwFIsFgjlggbgCegMAn+Bbgf94F/8C2BgDjBh7gCKIP/8P/+DcBuecnfOj7rCwPvwAVBn+Av/wbQM+j0cg8Pg+H8/D+fA/LRCuAWB/whBh//w+B4fh8H/8E/IYJUDAYNwGgJUBIYXnnBDBnGOgECFAU4Kg+AnPAjjRD/0B//AGQPwvFwjk8v0ev8HL4MPwDNDEIN//hUBIZQpBCAZlBGQScBh/AgYQBnDsBCAX+h4lBVI8fPQP8j8/h0HU4KUBKwIQCGQJKCZAWAgOABwghB+EB/kD/0HAIP/4IQBj/4gEYaIRUCg4JB/4wBIYk/Z4UH/gfBOwWA8PAuHwCAP8h4yBD4JGDXQ874Ef4EH8EBFISUB4F/+BlBnEfjkH58H8///I/CPgLmCKgcP/+HnkD35WB8B2Bj0+gEGCwMB4eD/Ph/nx984uf8nn8h08CAKbEKgoyBZwKMCCAP/CAKaCgF4bg8D4CxBTgPAn/4WwRSCVIIQBJIQSCbgTJDgbRB/+An5DEv56ChkCh+Hw4uBAIKYDvxnBj0ACAJUBEYXgn/wIYN/gCIBjhlDgfDw/h54yD7k/h0eg8EgY5CKgP//n//1AgMggAMDMoRjBg4EBviiCAAUIgEkgETbwQTBAAQA==')));
Graphics.prototype.setFontKirbyClassic = function() {
// Actual height 16 (15 - 0)
return this.setFontCustom(
kc,
32,
atob("CQcIDgsQDwQHBwkOBQYFBgoHCgkLCgkKCgkDBg4ODgkRCgoKCgkJCQsECQkHDAkKCgoLCAkICgwJCQkHBgc="),
17 | 65536
);
};
const kcb = E.toString(require('heatshrink').decompress(atob('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')));
Graphics.prototype.setFontKirbyClassicBig = function() {
// Actual height 58 (57 - 0)
return this.setFontCustom(
kcb,
32,
atob("HhgcMiY5NQ4XFx4yExQTFCQZIyEoIyEjIyEKFDIyMiA8JCMjJCAfICYNHx4aKR4jIyMnHR8dIikfHyAXFBc="),
60 | 65536
);
};
const zapf = E.toString(require('heatshrink').decompress(atob('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')));
Graphics.prototype.setFontZapf = function() {
// Actual height 56 (55 - 0)
return this.setFontCustom(
zapf,
32,
atob("EhQVLiUwNQsXFx4yEhcSESUlJSUlJSUlJSUUFDIyMh47Ky8pMismLzQaGTInOi4uKy4vJSstKzsnKCgXERc="),
60 | 65536
);
};
const nes = E.toString(require('heatshrink').decompress(atob('ACsPwH/3/7AQOA/AOFg/AvkHA4YFBwFwCAnh5//AAXh50cBBEAgeMplP/9Go98gIeCgfgkMCmce8EYg0Bx8xiERgHzg0ws3bs02sdt2YIBsEbgEwgZVFthTBJooAEkE/4xdBiEAwEWg0/4ANBgNghkD+EMAoIYCKAMQAQP/AogeBBwXwj8BEAQAKgeAnACKCo9wLpcHgfj8ANB/E/4f8sF2gdgm8DBATiBDIkzgcwm//v/3/6VDmBLCg9x+8fsf2ndn237v838c4CIUAgwyBg68B8duBwN3+9/sPgCIV4HYP4nOHzFxw44DgOAjBeB418u/Htk24YCCt/2/8HEYf+n/z/92eQL1Cs/2v8BCISOCAQNhBYIOB8F8g/ATQcDzg+CEAQCCBAU5agS9BvxlBCIlvv/nIILLIgeHnFzw4MHgMM8FAAwbsC4EkTgNGhkgCocCoEkARAOCCgNGDQMkEAM4EwJBFgFggx9B21gsxiBBwngv+H/F/8f/n/3/wICnwSDBYKwBuOGjFhw8YBAUP+CwCboaeMgH4n/j/1wu0DsE2gdwu8HmFgEYwOCsE3g8/4f8h5bCGpQCCsEwCI6NBAQqGCI4YsBI4ljs/2v9nNY4ZBDgVgBAV/CIQABKwhfHI4UAjkB+EfgALCAQIjDR4Q1EaAP+h/jz9w+8HEYkAHwjtBmACFEYzgB/EPwbyBLIoRIwE+CI0D/hlGLIk/LI9hw0YAQV/w/4FgIjIjdh20Pv/H/k/2AjIj1h81/v3398+NYUDw1+u/nfAc3sc3+d/gPgYojSCFIgIDB4UH/wLCTwp9DEYUH+BiCgfgj7dBR4IIBv4jDa4ngUJUHg99+/fTALFC/gICuFwLId8g/gvzuBHoV+BAN8B4UGg9h+0fs/2/dv2/jvk34dwR4QAB//4gOAiEAuBLBAIMHwEYgP/JQQ=')));
Graphics.prototype.setFontNES = function() {
// Actual height 12 (11 - 0)
return this.setFontCustom(
nes,
32,
atob("DAwMDAgLDAwFBQYKDAwMBAwMDAwMDAwMDAwMBAoKCgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwFBAU="),
12 | 65536
);
};
let drawTimeout;
let settings = Object.assign({
currentFace: "Mario 3"
}, require("Storage").readJSON("nesclock.json", true) || {});
let currentFace = {};
if (settings.currentFace == "Mario 3") {
currentFace = {
'fontFace': "SuperMario256",
'dateFontFace': "NES",
'clockScale': 2,
'clockOffsetX': 0,
'clockOffsetY': 0,
'dateOffsetX': 0,
'dateOffsetY': 48,
'clockShadowOffsetX': 5,
'clockShadowOffsetY': 5,
'dateShadowOffsetX': 1,
'dateShadowOffsetY': 1,
'dateScale': 1,
'clockColor': "#4299f4",
'dateColor': "#ffffff",
'bgColor': "#f5bf66",
'bgImage': {
width: 176,
height: 165,
bpp: 3,
transparent: 1,
buffer: require("heatshrink").decompress(atob("kmT0mQtMkyVImmSpMkjQCByUNAQNJgwLCwYLCoOkBAMg6QIBEDpBCwEJBYNAggLCgQsCgIsCgAgCgAgCLwIIBgESBAIgdIIXAgJKBsEANYMwgBrBzEANYNMgBrBk0ANYOTgBrCwEDFIIgdAwOAiAdBgEIDoMAgkYAYMChgDBgMGboWDAYVBwADBkHAAYIgdIIKkeYsZB/yV0gFAm3aRgMbtqtBhu2wEIg3bFgMDtuggUB23QgMA7dogGAtu0EDqDBgGQKYMApBTBBQMSAYMShIDBhMEbwMEwVAeQNBkDyBkGQCAIgdYv7FCIIQUCKAIgCCgRxBEAY1CNAIgCGoRoBIIQgcIIKRBAHpICIP5B/IIThBAALhBAAMQAYUIAYUEAYUCAYUBDwbiDEDxBBpgGBkMmD4WTD4VJCAMEknAD4MSsAfBhMwCAOEzADBoQgeIINJAX4C/AX4C/AX4C/AX4C/AQPtgAABk3EIPU8h//AAUDIPUD//MAgMP/kCIPFOj//n///18/+MIPFI//P//ypP/z/wIPX//n//pB+AAP5IPdOjnP5n//18/+MIPFJgf5n/ypMP/kCIPM8h0EY4UDH24CD9u2gEAk3Ea5XQB4MCthQ6yfASQX/+E5IPOQn/85IEB//AIPPh//zQQPn5/4a5QCux/8IAMkz/5/8EIPJAB5//75B+AAKD88PM/iDB8/P/HEIPGQn+T/4EB//AH2wCCyfA8FPYwPwnJB5yVO7dggECtg+4AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AVWTwEYHe/YgEA7BBD8PgiRB1pEJAYMAHYWT//8IO1CAwcCIPY2EkAECv8DIOucGwkhxKDBwGEQGYCByAGFhK/0AQh4GwJB/IPUnggJFwxB/IP5B8kgGGyBB/IP5B/IP5B/IP5B/IP5B/IP5BVu0AgE2H2GT2A1BII+TwQFBwEEIN+QiQDBgBBHCQdAIN+EAwcJIJVIKQRBsAwlAIJdiINs4IKFJgEAjhBrkIGEpBBLkBCBZFcJAwsEIJsAIP8AgIWGAUVOFQ0AQZ0xIP6EBIPkkIIUHINFIBhRBLgBB/IP5BD4hB/IP4ACghB/IP5B/IP5B/IP5BFIAZB8hICBoBB8wALDkBB7gQLEIP5B9iQLEwEAhxB3kALGgEAhJB/AAJB/AAOEIP8AjBB1gBBJBQxBvBw5ACgZBik9ggEBILMAiRBhkCECVZJBzhIGDE5BBQsRBgpAGEwBB6uBBegQHCp8AoQyKyehkYuH7AFDDYuQILlI/+IpMngEJgENwEAwEGBwMEkcApMmC4dJgAlDiQsFhJBc8fwIIMOhEf+E/8EP/AWC8dIsOchunmHCukA5OJIMw7BAoOOnhBHgnDgOAgUMmHAgOGAoMxkmcII0BQcEP4MAuE4/l+nArCgcBwI7BgHAwMBDoI3BIMsAhxBBgAvBAAMDAQIrCQYJBBgRBBwFAgeAnJBSG4gA7IP5BCyf/AHyDDv4HC4BNCj4HC+AHCg4HC/gHCgIgDMwYgcQYOAIP7FCIYIABn4LC8AHCh4HC/AHCgYHC/w9DEgYgcIP5B/IImSczwkDEDhB/IP5B/II2TAYOABgU/BYXgA4UPA4X4A4UDA4X+HoYkDEDhB/IP5B/IP5B/IP5B/IP5B/IP5BV4AGDAHUkyRA+IP5B/IP5B/IP5B/IP5B/ACA"))
}
};
} else if (settings.currentFace == "Mario 2") {
currentFace = {
'fontFace': "SuperPlumberBrothers",
'dateFontFace': "NES",
'clockScale': 3,
'clockOffsetX': 0,
'clockOffsetY': -8,
'dateOffsetX': 0,
'dateOffsetY': 54,
'clockShadowOffsetX': 3,
'clockShadowOffsetY': 3,
'dateShadowOffsetX': 1,
'dateShadowOffsetY': 1,
'dateScale': 1,
'clockColor': "#ffffff",
'dateColor': "#ffffff",
'bgColor': "#9290ff",
'bgImage': {
width: 176,
height: 165,
bpp: 3,
transparent: 1,
buffer: require("heatshrink").decompress(atob("yVJkgC/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C8k3SIP8n+Q74tu3/4AB7VJ3//pM2BAX7tpBvm41CAB36INeTt4xC/0AgEHAoP8z4DB8AJB74QC/ukH0smFQMkF4WSoQMEpMhmVJhIYDzMkKYWSv//6Q7bk7yBAoNNNgX2P4QeRgA+B7YcC9IKC3/yIKs///JNAX/+dPIAMSbaggB/OnEAQKBEAJBWC4IjB//AgmR3/AUqtG/8CpEDZgQpDIKk3/R9B/b+DuznX7AFCzO3RIIpBD6lP/xeB/kEHawCKpGfE4Pf/IZTv//zdv8I+fAQcz/u0IYJBU8+T//JIMcn//k+ZBSk/yp837d/IM22/V5F4IZQ/TFB/1IH0ICD5M/YoM3CyIUBAAOCIMuRFYYWQn+f/sH78SIMuT33it/8/zcR8VH/xBnn/gzv/+TFRyVM6A+jAQdmwmTYqMk/iAmAQ0/CaE/IN/+CZ8n/xBsyc/+QTQbCRBbFyWfKiICaz/8CaEm/7YQATf///SCaHevxBsnwTQm/8yBBrwV//QTOp//8A+pAQdH//5CBt//kEINtIz//CBmTv+JH1YCDk9/0hBM/w+tAQf/8gNLz/8IOPv/hBM+BBxx5BN+RBxW4JB/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5BRwf+IOP/4hB/IJuTIOfkCBl+IOQNNIOe/BpfzpxBx/OnJ5n+QeX/BpX0z5Bz/mb5INHp4LBthBx9u0z/5QZPfQef+QZICB8VuIOP9g5PNQeX/BpfcvxBx/0+BpeTIOX/0hBMYufkIP5BO+RBxz5BMz5Bz/hB/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5B/IP5BygF/wBB+yVAkkEIPlMwEJghB9s3chMkYvtmzkBIP1O6BBBYo3+pM8yV/kn/5M/Bwd5nnyBwP+vM/AQIkB5MnDQJBZpH78EAIIsnyfJ/mT5/nyf5847BGQI7Byf/ng7BJoN/n+f/4CB5IzK8hBNp8csM+IIpxBpJBD/5BDRIP5HYX8IIn/z/PIJu+IJtM/fhYoxBDyVPQYpBLHwJBNwEgiRBMpMAhMkBgsnAQP/IIXzYo/zYoYRBIIRNBIJAtCwEAIJ0ggEBB5ICfk1JkMktPAIJ0ypBWBGrkAiBiJWAfv8ECIJlG+SDfgGCEBMD/0kgnOnxBNv/iv+BILsypKkJk/P4mE//+gBBN4fuQbtO/99PAIOH7//w/k95BOoGCv/4ILln/+P/+EBw///v38mQgmAShJBComT5pBKiVBIKQABII9IjUN/8EegOAQZlMz/4YpMghMgggLHn4CB/hBE/15/+GoQaBgAmDk9/4EkyMG8RBNyf+SZPf/JfBWBACEBANOQQP+kmYpMSpEABYNM4BGBgmfkn+IJuSuKDJ//8kjyI78SAQYICz/P8MmoVIfYSeBpnCpEEwGZwxBNpGQTwgCEpnTh0AYpEzyfJ+AIEkakCzAmBhMEgAgByUB/2A5//Ypn//AaBIJKvCQYl/8mT//6t/+zf/5MnN4XCAQPDhAWBgAaC4d9/8H5PkyBBKFAP5iRBLYoxBBfgMSIIOQv//IIYRDQYUkwAFBwdx/kH8MkGQJBJyVtIINunAPI//xdgQFB+V//n/+mSpoCC/8//1P/4aEj9P8hcBeQUAyfpIIKDKEYXgt0GOAIAF/GfwLXCAAXgAQP8FwIdBHoP/xIcHDoICCyFAgGD5EkwVBIJVJ/3AKwPfEY+SDQODBQqFBDoZBBDQ//8VNw4EB/0T//wweIIIL3IAQcEwEAgkfEw+SpkAQYXggM/Y4RBFyf/gEDDQjNB44jFj4wBgBBNgEIa4lIggODtukDRQCLg3zv/wBAUCDSRBBAoJBCwFAIIgCYk6+BgGSoEgIKYCDIIWQoA+aAQcT5MgU4MgVoYCXgMADrZoGgGAhIdYgUAUgI+eQAJlBeQQgXwEAghBckEApBiBoEAgSnfEEACeoCnBIPynBiEJIPtJgEAQfxABgRB+AX4C/AX4C/AX4C4A"))
}
};
} else if (settings.currentFace == "Mario 1") {
currentFace = {
'fontFace': "SuperPlumberBrothers",
'dateFontFace': "NES",
'clockScale': 4,
'clockOffsetX': 0,
'clockOffsetY': -8,
'dateOffsetX': 0,
'dateOffsetY': 54,
'clockShadowOffsetX': 3,
'clockShadowOffsetY': 3,
'dateShadowOffsetX': 1,
'dateShadowOffsetY': 1,
'dateScale': 1,
'clockColor': "#aa4e00",
'dateColor': "#ffffff",
'bgColor': "#9290ff",
'bgImage': {
width: 176,
height: 165,
bpp: 3,
transparent: 1,
buffer: require("heatshrink").decompress(atob("kmSpIC/AX4C/AX4C/AX4C/AX4C/AX4C/ATE8z1P/mf/8n//P/4gU+V/n/+v4gB5IFBBwYmB5P/+fJ8///IjLEAU/IgIpCk5BU+f/MQN5n5BBngCBBweeOIJuB84jNIIIgBz1/IINPIKv/IKGTIIKJBYpqDBz6VBQa5BDYoYFBBwiDDYoIjNMQYjBcAPP/5BULIKkDXIM/+RBG//zIIP/OIIjKPQXkyaVD8mSvIREsJWDyVPJqQCWnn+ZAZcBp8/GouTkkEAoPnOIJQBMQ59CyZ0MAR38YodPboPPk4FBGoZBC+fP8iqB/jIJAoSeFQaxBRdgJBNp//ILi8CHwPJHweT57FGHwd5YtICQoAsrAX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AX4C/AREggEJIPtAH4OAghB8iQDByFAIPeQAYWAhBGCIPGEIIcJgRB6AYUggACBIPMhIIbDChJB4HIZBDwJB3pAJHyBB3oQJIghB2X4QJGoBB1yDPKJhICrwgMKgRB0AYUgBIkgQIMgF8MAU4WAhLxCggRHkIVG0gTBAoQaCILtC7ciGQNtyL7B23ICg4zDIIeg7aDCkmBIL82IIMJjZBBgmNIIOCCItIAYVAgAJC2HbthBCyBBg7NkwMbtmyoBBBrLyGoRBDBIeG7VEB4bdIAS2yrMtwNZlmW4Gsy1LsARFO4RBFy3bsgPDoBBdguS7dtyXJtu25Nk2wvBCImQDZGEPwtIKQYCYkMtHAI+BAQ1sgQ3FDY0lBIMMBAkCILcrHxBBDyQUDDZEl2mSCIIIDkBBapFbIJYCBpCVCIJOkyVMBYsJILNCHxYCC5DyBFpWApEEBAuBQbRBO4AUB7//4/+t//8f/m//+MGzcB/H/5v//l/83//0/+d//8f/O//+P/ggK/+b/4gS+VJg+QvMkwfInmSoPkj1JkHyh8kBwMHNQM8wfJkkeCIOSh4RBEH4gjgkAEAOCgAgCgAgCwAgCoAgCkEDEAMQgIgBhEAEEUH/xiC/4gC/+eEAP/54gBv/nEALmBEALmBMQTmDEEDF/EH8g+ALByF4BYIFBiQaBj0JDQMPggaBg+CDQOD4IsBoPgFgIgh/+B8jXB4Hya4PgNAMf+BoBh/4NAMH/gsBwf+FgL4BgfJEEPyv4gBvM/EAM8z/5MQNP/ggBk/+EAOT/4gB5P/WwX/EEWAgPAgFAgHggEggFwgEQgE4gEIgEcgEEgEOgECgEHgEBgEDwEAEEHf//H/1v//j/83//x/+b//4//N//8v/m//+n/zv//j/53//x/8EEHySQKkBSQPIcAKSBcAKzBcAIOBcAKzBUgKzBCIKzBCIIg/EEbUBEAOCgAgCgAgCwAgCoAgCkEDEAMQgIgBeoIgig/+MQX/EAX/zwgB//PEAN/84gBcwIgBcwJiCcwYggYv4g/kHwBYOQvALBAoMSDQMehIaBh8EDQMHwQaBwfBFgNB8AsBEEP/wPka4PA+TXB8BoBj/wNAMP/BoBg/8FgOD/wsBfAMD5Igh+V/EAN5n4gBnmf/JiBp/8EAMn/wgByf/EAPJ/62C/4giwEB4EAoEA8EAkEAuEAiEAnEAhEAjkAgkAh0AgUAg8AgMAgeAgAggA=="))
}
};
} else if (settings.currentFace == "Kirby") {
currentFace = {
'fontFace': "KirbyClassicBig",
'dateFontFace': "KirbyClassic",
'clockScale': 1,
'clockOffsetX': 0,
'clockOffsetY': 0,
'dateOffsetX': 0,
'dateOffsetY': 54,
'clockShadowOffsetX': 3,
'clockShadowOffsetY': 3,
'dateShadowOffsetX': 2,
'dateShadowOffsetY': 2,
'dateScale': 1,
'clockColor': "#ff00ff",
'dateColor': "#fe6ecc",
'bgColor': "#ffffff",
'bgImage': {
width: 176,
height: 165,
bpp: 3,
transparent: 2,
buffer: require("heatshrink").decompress(atob("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"))
}
};
} else if (settings.currentFace == "Zelda") {
currentFace = {
'fontFace': "Zapf",
'dateFontFace': "NES",
'clockScale': 1,
'clockOffsetX': 0,
'clockOffsetY': -10,
'dateOffsetX': 0,
'dateOffsetY': 40,
'clockShadowOffsetX': 3,
'clockShadowOffsetY': 3,
'dateShadowOffsetX': 2,
'dateShadowOffsetY': 2,
'dateScale': 1,
'clockColor': "#994e00",
'dateColor': "#0c9300",
'bgColor': "#feccc5",
'bgImage': {
width: 176,
height: 165,
bpp: 8,
transparent: 254,
buffer: require("heatshrink").decompress(atob("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"))
}
};
}
// Actually draw the watch face
let draw = function() {
var x = g.getWidth() / 2;
var y = g.getHeight() / 2;
g.reset().clearRect(Bangle.appRect); // clear whole background (w/o widgets)
//Set Background color for face
g.setColor(currentFace.bgColor);
g.fillRect(Bangle.appRect);
g.drawImage(currentFace.bgImage, 0, 24);
var date = new Date();
var timeStr = require("locale").time(date, 1).trim(); // Hour and minute trimmed to center whole text instead of on colon
var dateStr = require("locale").date(date, 0).toUpperCase() + "\n" +
require("locale").dow(date, 0).toUpperCase();
//shadows
g.setColor(0, 0, 0);
g.setFontAlign(0, 0).setFont(currentFace.fontFace, currentFace.clockScale).drawString(timeStr, x + currentFace.clockOffsetX + currentFace.clockShadowOffsetX, y + currentFace.clockOffsetY + currentFace.clockShadowOffsetY);
g.setFontAlign(0, 0).setFont(currentFace.dateFontFace, currentFace.dateScale).drawString(dateStr, x + currentFace.dateOffsetX + currentFace.dateShadowOffsetX, y + currentFace.dateOffsetY + currentFace.dateShadowOffsetY);
//main text
g.setColor(currentFace.clockColor);
g.setFontAlign(0, 0).setFont(currentFace.fontFace, currentFace.clockScale).drawString(timeStr, x + currentFace.clockOffsetX, y + currentFace.clockOffsetY);
// Show date and day of week
g.setColor(currentFace.dateColor);
g.setFontAlign(0, 0).setFont(currentFace.dateFontFace, currentFace.dateScale).drawString(dateStr, x + currentFace.dateOffsetX, y + currentFace.dateOffsetY);
// queue next draw
if (drawTimeout) clearTimeout(drawTimeout);
drawTimeout = setTimeout(function() {
drawTimeout = undefined;
draw();
}, 60000 - (Date.now() % 60000));
};
// Show launcher when middle button pressed
Bangle.setUI({
mode: "clock",
remove: function() {
// Called to unload all of the clock app
if (drawTimeout) clearTimeout(drawTimeout);
drawTimeout = undefined;
delete Graphics.prototype.setFontMarioBrosDS;
delete Graphics.prototype.setFontSuperPlumberBrothers;
delete Graphics.prototype.setFontKirbyClassic;
delete Graphics.prototype.setFontKirbyClassicBig;
delete Graphics.prototype.setFontZapf;
delete Graphics.prototype.setFontNES;
}
});
// Load widgets
Bangle.loadWidgets();
draw();
setTimeout(Bangle.drawWidgets, 0);
}