diff --git a/apps.json b/apps.json index c46d5f8a9..464b1564f 100644 --- a/apps.json +++ b/apps.json @@ -337,5 +337,17 @@ {"name":".tfmodel","url":"gesture-tfmodel.js","evaluate":true}, {"name":"*gesture","url":"gesture-icon.js","evaluate":true} ] + }, + { "id": "pparrot", + "name": "Party Parrot", + "icon": "party-parrot.png", + "description": "Party with a parrot on your wrist", + "tags": "party,parrot,lol", + "type":"app", + "storage": [ + {"name":"+pparrot","url":"party-parrot.json"}, + {"name":"-pparrot","url":"party-parrot.js"}, + {"name":"*pparrot","url":"party-parrot-icon.js","evaluate":true} + ] } ] diff --git a/apps/party-parrot-icon.js b/apps/party-parrot-icon.js new file mode 100644 index 000000000..7dbe2cdf3 --- /dev/null +++ b/apps/party-parrot-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/AH4A/AHeBq1WlcAAAUrqwJBwJM/IQJLEABBUBw5N8IotPAAhRHJu+HJolPvWe4XJAAvCz1zkhRDeuuBdIdzzxLGAA+eUwUreeacDJqCkDuah0JwUkJoTiBdg4AJKAZO2z0kA4KjH4RbGUAcAqxOtwJOCHgY6Dp5FEz1PBQUAuYLCvQIDlesJ1eHlaWGJ4YJEzwIDAARlCCYkAwLtucopPH4SdCldWqxmCp5PGlbttGwJPMTwVWrgACW4aqDLwSgqTxBHBkjiE5I/CJwYABNIeeud6KYSgp1iFBTwzoCvQ7BAoQ+CJ4qgCLwS4EUFDuCTwwAHdw4ABXQ4RDd2JPReAV6CQigqaYMkJxpPNuYSId1AyFJ61PCYskgErd25PUeAWsJ8/Cd8Lwow7uRAAITBlZPIvRPIeEjuSAANPCgJOFDpJPCgBPjlcAkhOQ5N6eA5PwwLQIABY8CJ4ptJJ8usGALuSeBCeCNo5iDT0kA4RPSHoUrJwlPDo96BYOBJ0GHTwRPUUAbxBXhYQBlesJ8CACJ63CkhQCAQNzB5DujdoaCKeJ5rLBwTuhZ4VzAQN6J6nJDIQaKf4WHT0TPBFAMkJ6oZDTxDujJwQwCZATwVDISeJvTuhwLtCJIaGLKBwXJEgMr1hOhP4igCp7xWVRTuf1lWEQNzZZAJGADFzdz5ODSpDMBBYLyWAAwgBlaedJwZCJKAUkzzudTzpONZ4gQBzyjYvRPewKPCHhuekhRCKQNzAAJUTNwWsJzsAbx/CvRREDCIADp8AlZPaJyajEudPKYQZTCwJPaJy6mFdyafcJzgAWJ7ROz5NzGYJPWJ2nJvQ0BwJOUw8rJ2fJzxPXqwYBvROxAAI2BqyeUC4NPJ2fJuY4Bw5PSwLt0eAqgTlafCAGo4BleBJ6gA5lZPRqxP7eJY")) \ No newline at end of file diff --git a/apps/party-parrot.js b/apps/party-parrot.js new file mode 100644 index 000000000..d9f3e8a36 --- /dev/null +++ b/apps/party-parrot.js @@ -0,0 +1,23 @@ +(function(){ +var imgs = [ + require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/AH4A/AHeBq1WlcAAAUrqwJBwJM/IQJLEABBUBw5N8IotPAAhRHJu+HJolPvWe4XJAAvCz1zkhRDeuuBdIdzzxLGAA+eUwUreeacDJqCkDuah0JwUkJoTiBdg4AJKAZO2z0kA4KjH4RbGUAcAqxOtwJOCHgY6Dp5FEz1PBQUAuYLCvQIDlesJ1eHlaWGJ4YJEzwIDAARlCCYkAwLtucopPH4SdCldWqxmCp5PGlbttGwJPMTwVWrgACW4aqDLwSgqTxBHBkjiE5I/CJwYABNIeeud6KYSgp1iFBTwzoCvQ7BAoQ+CJ4qgCLwS4EUFDuCTwwAHdw4ABXQ4RDd2JPReAV6CQigqaYMkJxpPNuYSId1AyFJ61PCYskgErd25PUeAWsJ8/Cd8Lwow7uRAAITBlZPIvRPIeEjuSAANPCgJOFDpJPCgBPjlcAkhOQ5N6eA5PwwLQIABY8CJ4ptJJ8usGALuSeBCeCNo5iDT0kA4RPSHoUrJwlPDo96BYOBJ0GHTwRPUUAbxBXhYQBlesJ8CACJ63CkhQCAQNzB5DujdoaCKeJ5rLBwTuhZ4VzAQN6J6nJDIQaKf4WHT0TPBFAMkJ6oZDTxDujJwQwCZATwVDISeJvTuhwLtCJIaGLKBwXJEgMr1hOhP4igCp7xWVRTuf1lWEQNzZZAJGADFzdz5ODSpDMBBYLyWAAwgBlaedJwZCJKAUkzzudTzpONZ4gQBzyjYvRPewKPCHhuekhRCKQNzAAJUTNwWsJzsAbx/CvRREDCIADp8AlZPaJyajEudPKYQZTCwJPaJy6mFdyafcJzgAWJ7ROz5NzGYJPWJ2nJvQ0BwJOUw8rJ2fJzxPXqwYBvROxAAI2BqyeUC4NPJ2fJuY4Bw5PSwLt0eAqgTlafCAGo4BleBJ6gA5lZPRqxP7eJY")), + require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/ABOBq0AAAcrq2B1hK/JgcrJogAFmOBwJN9mJMKAAtWdH8rrliAA1cm8GB4b13wLpDm9ixoALsQTCegJO1JoUxJpoADmLy2JwdcJqBQ4wMGGwKcCrgABUQ1irk3mM3MAgZCeONWTolieYZOFIoQAClZdClagydoU3IoVcIYagDLAcGKQcrCYqgu1iDBgyVDHYjkDmKTCwAABAwVcCYiguTwRFDJ5CeCmJIBAAOAdYQTEUFyHCJwbmEJ4ZDCqxPDrlWBAKkDUFyeCm5PEJAcrdwkGJwjsDDINisSmBlesJ9SFCsRPFUQQEDH4WAJwjwCgxmFeFZPCJw4AFUoSfGDQwQCUFOsg0AmJPaWIagCmKhowIsBrhPNMAJPOxs3KFRPCGYgAJlZPQxsxBANWJ8wzCJxqNDwBPICYxQCUEyNBgxPOriMCJwmADYJPHsUGEwOsd003J51iJ5AbKMgZPmrhPOxqWBlbwEdwQbIMgZPjGYViJ57wGdwYbJT9JPQRYSgDNQTuIWgdW66f2xs3RgRQBKoQTKJ4SfjaZg8KHoMxDJpdCJ/LxCAAUxCJqfkd6gABdgQYNJ9VcJ6WNdoU3CBiuCJ8eBaxqPJgy3Olafl/wnBgBPTKAKeNxs3E4OseHZfQE4KgkeAUrJ8eNmJQl1gmBUE0GKAWBJ8HXlZQCsRQkFIdW1hQfqwlCmLxksU3FQUrUT5PDgE3KEiiGJ8AlCKE2NrjzgJ4VimJTCsSipULgfBlYlBm7zDKMx8CKDWBDoNcOwcGKIUGmM3KkShDwLucEwlcKIalCeUQlBlaeamInIrk3lcrVgYAfrigY1i7CcMIAQUDDtCcESgodoUrJ2WNsQ3BqyeWduQAClaHB65OR1kGT2rwXdwVcJ+rwCJ6Tu4J4dWJ6MrCoMxAGxPUCoQA5mLvUAHZIJA==")), + require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/AH4A/AEOswMrgAACleB1hJ/AAeBqxMDAAsrq1WwJN+TQgALKPesTYkyq9eAAtXlhR9TghMBwYAKr0yewZQ1JwcyJphRIqxOzTgZNPAAdXDAShxToZOUUQTyy1hOCdaChKeN6dZAAcseN+BGAMybQgABcg4KKeIZPsJwUrHIczA4L1Fr0yBIQTBBYdeXQK5BBYRPrqxGFxLXCgEsIYoAFJIOJLIdeNASgqTwUzSoZPELIZDCldWAAIMDCYj6BCARQo1iNBdohPIHodcAARQCmSfFCQhQnTwTXBAAjWCHgdXAgNWJ4dcewSaBNooaCqxPmTw4ABrygCmSmDTwigEfoRSBDYYaCUEqeJKIY7DdwwACBIMzDJAVCJ8iEFABbuHeAcsxIVHq6gmGYRONRIRPJlYWMJ0WsaZSfSgAWJljwkwIyBq5PlmQMB1hPhqwlBrxONxLlCd6WDq5PkQQRPOwczCQJPIlmJJ9wkBJ6FeeBAIBmZmMJ/1WDZkyJ++DlkAlbuGDZYNBqxOh/wzNUBieCmQVKCgRPiwJPSHQRQDXRpkDJ8tXJ6A7CeIKeCNJZPm1jUNAA0zKAQCBlhjOJ80rJ6ODljsCTxgSDlesKESHCG5qNHW56gmqxPUwdXCyKzCwJPkRBw9GCqCgClZQhwLZCUCdeCiKzCKEJPDligTACUzFYRQf1krEgTxUKC1WKLxPDgFXKE1eFgZRdqwiDKFMsKL5PCq4kCmZQmKI0rKTGBJ4QjDlleKNqkX1krNgIjBmQgCmZRpmY0BKLCgCJAVXEAcyrwACUlUrKCZPClggDUQYADUs5REKCdWIY1eq7FEq71naYahTUAUyOY7wpKA1WUDQAxmTxUUAUzxODxIAFA4IJCAQg7ODgojGAgYSCwcrKCgVClgA1HAJPTeAQA5lafUAHZIJA")), + require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdwOBlcAAAsrq2BJn+BqxMHKX5NFJhgAFqxO5TYcruug0HLAAoIBvdQCIZN11icDqBLHAA+gMYRQ0TgcrvhNOAAaiCeWWBTgZNSKAuBJ17rDvZOVeQK4C1hOxdaYAFvbxvdgZOGbgMlLCF8DwSgrJxSKCKALvRUFmslbsJJ4YMG0F1qElld10ATGgGBJ9BOCvaLHHYgNEIoqsBKAIJFUFDtCurbIvhPHcgcrAAL9DBQclUFDtCGQIAJIIUAcYQHDq2ArmAqxsDfIL2BKFAxCvhPK0F7uoODSYVWrgACwBXCLwYQDlaekE4ROKAA97CwJODAAJuCfwYABuqglwKeNAA9QMoJPFrjwDAAjxBlesd0hOSHgeAJwjwDWRCgh1guBqBPTHYKfHOBIIBqxPhEgN7J6yfFJ5VQBILwgwJPWWwJPK0DwpJ66LBd6OgJ8TvXuoXBJ6HLBINWJ8VQJ6d8HYROEwD5BkpP/bYpPFrgIBuoUHqEAlZPiZxAAMHYWAdw18CY91BYOsJ8WgJ6d7UAzuBN5JPCwJPivagUC4MrJwoeJJ4VcJ72BJ4UrJ6igCKALtCqASJqDvhJ4bwVHodWTwQcJ0AQCJz3+QASCMABclDYd1MBmBJ76ABkrYCvZPUR4QABBxInCT0DuCJYJ3CeKt1NJZdClesd0RKBFIbxVqEldtusdwJJDvgqBqDxVTxjtgdwd8Fgd7KC77MT0H+TwLQGKAT4CJ/9WTwxQGupPbd4QABldWq2B1hPbTwwvDVYJRCUbRxDAAhTCJyusSRowEktQAAKhXvd1qBSHKKmBdxIwFuotFUjQjBvgkElZPWlaOCABRPFChwAPEYpPSqy9GAGlWJ6JO7UJgA==")), + require("heatshrink").decompress(atob("qE5xH+AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AtwNWlcAAAUrq2BJP5MJAApS/JoRMJAApR7JotPumfAA10VQlWJ2+AHwZMB4nDABHEz9PeoesJ2icDp5NLKIpkCKGesG4UlJoJOBKJQJBBYT1BeQRQwwJOCTgI/Bb4V0KAxIBp8llb+BCYlWJ2V0IYbzCgBCBJwgKDBoefkoFCUFuBGISWEIglPBI8rAAIYDCYeAJ2hPJcgmArmAqylGJ9ZODz5OEJ5IICq1cAAZQGlZOuJoiWFVQIICcgRPFrhLCuklAgOBJ0+AlZOJJAYABAwgUBJwtcDwMr4itCeE+sJwV0dgoAKU4UrwBPFeARuBUAMr1jslJyhPBIAMlJ5auCeEotCJyRPBMwRPLeAVWJ0eAE4NPJqLvR4iglwIlBFgQATH4ROFJ4qgmFYUAdqRPSWASghTwclJ6qPDJ4srBIIQGwCejT63DksAlZPHp4iD4gQCT0SfXb4ZPFA4N0CIl0eECeCZgSfWeA4hCz4QHJ7usEANPOgQtFeCagDOYV0OIpPCeDruCugkCZoqgUlbtDkpwGB4UAJ7mATYXEQoNPeC3EXYVWTwS/HJ8ErD4IlBeDXDEAQABNxBPfPQTqCEoSgXIIhtJf4ZOawIeBkomDUDYbCNhJPCwBOZwB6Hz8lK4oAT4lPNZRcCwJOheL10DJHEO4LuZdgUAugoHPAQ2JADDubToZOHAATVBBpb6YgGsJy1WdhJQIlYQMTylWJ05QEUQOfejd0EAOBJzElRh/EFwRRDAATuWkrBBJysrbaufKIhqCd1ydCJyZREQYIACDizuWJzLUDdoLyBDSq9CJ6eBJzYAbJ4WsTyuf4gAzT6usCoKfBp4AzlY4BwBPRCoQA5qxPRJ3ZQMA==")) +]; + +function drawImg (i) { + g.drawImage({ + width: 80, height: 57, bpp: 8, + transparent : 254, + buffer: require("heatshrink").decompress(atob(imgs[i]))}, 0, 0, {scale: 3}); +} + +var currImg = 0; +drawImg(currImg); +setInterval(function() { + currImg = (currImg + 1) % imgs.length; + drawImg(currImg); +}, 400); +})(); \ No newline at end of file diff --git a/apps/party-parrot.json b/apps/party-parrot.json new file mode 100644 index 000000000..abf950e47 --- /dev/null +++ b/apps/party-parrot.json @@ -0,0 +1,5 @@ +{ + "name":"Party Parrot","type":"app", + "icon":"*pparrot", + "src":"-pparrot" +} \ No newline at end of file diff --git a/apps/party-parrot.png b/apps/party-parrot.png new file mode 100644 index 000000000..63af86ae7 Binary files /dev/null and b/apps/party-parrot.png differ