Files
neon 0752319647 feat(koreader): draw the reading pets in colour and add six more
Redraw every reading pet as a shaded 64 x 64 master with a colour and a
grey per palette entry, one lazily loaded module per pet, and add the
mimic, mummy, witch, skeleton, candle and alien. Paint in colour on
colour screens, keep pet colours in night mode, scale by half steps and
give pet tiles a dithered refresh so Kaleido shows their colour.
2026-10-26 16:01:25 +00:00

471 lines
31 KiB
Lua

-- Generated by tools/build_buddy_sprites.py; edit the pixel masters there.
-- Six poses of 64 x 64 cells. The palette maps each character to its colour
-- (0xRRGGBB) and the grey (0-255) a black-and-white screen shows instead.
return {
palette = {
["!"] = { 0x5a4508, 68 },
["#"] = { 0xffe58a, 221 },
["$"] = { 0xffd54f, 204 },
["%"] = { 0x0f3d42, 51 },
["&"] = { 0x8cdfdb, 204 },
["("] = { 0xc4f3ee, 221 },
[")"] = { 0x58c3c5, 170 },
["*"] = { 0x379aa1, 119 },
["+"] = { 0x221c26, 34 },
[","] = { 0xffffff, 255 },
["-"] = { 0xf59aa6, 221 },
["."] = { 0x1b595e, 68 },
["/"] = { 0x25313a, 51 },
["0"] = { 0xeef5f8, 238 },
["1"] = { 0x3f4d57, 68 },
["2"] = { 0xc9d8e0, 204 },
["3"] = { 0x6b5b47, 102 },
["4"] = { 0x8f806b, 136 },
["5"] = { 0xa7bac4, 187 },
["6"] = { 0xfbf4e4, 238 },
["7"] = { 0x4d3608, 51 },
["8"] = { 0xb3a68e, 170 },
["9"] = { 0xffd54f, 204 },
[":"] = { 0xf3cb63, 204 },
[";"] = { 0xe0ab35, 170 },
["<"] = { 0x6b4c0e, 85 },
["="] = { 0xf3cb63, 204 },
[">"] = { 0xb0811c, 136 },
["?"] = { 0xe4d8c0, 221 },
["@"] = { 0x7a550a, 85 },
["A"] = { 0xfbd66a, 221 },
["B"] = { 0x5a3d05, 68 },
["C"] = { 0x5f86c4, 102 },
["D"] = { 0x9bb6dd, 170 },
["E"] = { 0x3d5a78, 85 },
["F"] = { 0x826712, 102 },
["G"] = { 0xeef7fd, 238 },
["H"] = { 0xffffff, 255 },
["I"] = { 0x7c8f9a, 136 },
["J"] = { 0x5d5a63, 85 },
["K"] = { 0xffffff, 255 },
["L"] = { 0x817e85, 136 },
["M"] = { 0x5e1a35, 51 },
["N"] = { 0xec5f8f, 153 },
["O"] = { 0xe24a3b, 119 },
["P"] = { 0xf68cb0, 170 },
["Q"] = { 0xec5f8f, 136 },
["R"] = { 0xf5c623, 187 },
["S"] = { 0x3f86e0, 119 },
["T"] = { 0xc7426f, 119 },
["U"] = { 0x4cb050, 136 },
["V"] = { 0x5b1a2a, 51 },
["W"] = { 0xef7489, 153 },
["X"] = { 0xfff1b8, 238 },
["Y"] = { 0xf0b62e, 187 },
["Z"] = { 0xc58d17, 136 },
["["] = { 0x1a3275, 51 },
["]"] = { 0x6a92ea, 136 },
["^"] = { 0x3f6fd8, 102 },
["_"] = { 0x13265c, 34 },
["a"] = { 0x2c4fae, 85 },
["b"] = { 0x8cc8f0, 204 },
["c"] = { 0x0f3a36, 51 },
["d"] = { 0x4cb8ab, 153 },
["e"] = { 0x4cb8ab, 153 },
["f"] = { 0x2a958a, 119 },
["g"] = { 0x1d6d65, 85 },
},
read = {
" ",
" ",
" ",
" ",
" !! !! ",
" !##! !##! ",
" !#$! !#$! ",
" !$$! !$$! ",
" !! !! ",
" % % ",
" % % ",
" % % ",
" %%%%%%%%%%%%%%%%% % ",
" %%&(((((&&&&&&&&&)%% ",
" %%%(((((((((&&&&&&&&&&)%%% ",
" %&(((((((((((&&&&&&&&&&))))% ",
" %%(((((((((((((&&&&&&&&&&&))))%% ",
" %&(((((((((((((&&&&&&&&&&&&))))))% ",
" %&&((((((((((((&&&&&&&&&&&&&))))))*% ",
" %&(((((((((((&&&&&&&&&&&&&&&)))))))% ",
" %&&((())((((&&&&&&&&&&&&&&&&))))))))*% ",
" %&&&))))))&&&&&&&&&&&&&&&&&))))))))))% ",
" %&&&))))))))))&&&&&&&&&&&&))))))))))))*% ",
" %&&%%%%%%%%%%%%%%&&&&&&%%%%%%%%%%%%%%)*% ",
" %&&++++++++++++++&&&&&&++++++++++++++**% ",
" %&&++++++++++++++&&&&&&+++++++++++++)**% ",
" %&&&+++++++++++++&&&&&)+++++++++++++***% ",
" %&&&++++++++++++&&&&&)))++++++++++++***% ",
" %&&&+++,+++++++&&))))))++++++,++++***% ",
" %))&&&+++++++++))))))))+++++++++)****% ",
" %))))))++++))))))))))))))++++))****% ",
" %)))))))))))))))))))))))))))))*****% ",
" %---))))))))))))))))))))))))**---% ",
" -----)))))))))))))))))))))***----- ",
" ---))))))))))))))))))))******--- ",
" %%)))))))))%)))%))******%% ",
" %)))))))))%%%********% ",
" %)))))*************% ",
" %****************% ",
" %**************% ",
" %............% ",
" /00000000000/ ",
" /10000000001/ ",
" %%%%% %% /0111111111/ %% %%%%% ",
" %%((&&&%% %&)//000222222222//((% %%((&&&%% ",
" 333.&&&&&&).334440002222222222255444333.&&&&&&).33 ",
" 36.&&&&&)))).6666444222222222244466666.&&&&&)))).3 ",
" 777466.))))))).888666664442292444666666888.))))))).64777 ",
" 7::466..).))...6666666666649,4666666666666..).))...64;;7 ",
" 7::46666.....6666666666666429466666666666666.....6664;;7 ",
" 7::466688888888888888866664<<466668888888888888886664;;7 ",
" 7::466666666666666666666664==466666666666666666666664;;7 ",
" 7==466666666666666666666664==466666666666666666666664;;7 ",
" 7==466688888888888888866664==466668888888888888886664;;7 ",
" 7==466666666666666666666664==466666666666666666666664;;7 ",
" 7==466666666666666666666664==466666666666666666666664;;7 ",
" 7==466688888888888888866664==466668888888888888886664;;7 ",
" 7==466666666666666666666664;;466666666666666666666664;;7 ",
" 7;=444444444444444446666664;;466666644444444444444444;>7 ",
" 7;;;;;;;;;;;;;;;;;;;4446664;;4666444;;;;;;;;;;;;;;;;>>>7 ",
" 7777????????????????;;;4444;;4????????????@@@?7777777777 ",
" 777777777777;;;;4;;4;;;;77777777@A@7 ",
" 7777;;;;7777 BBB ",
" 7777 B ",
},
sleep = {
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" CCCCCCC ",
" C ",
" C ",
" C ",
" C ",
" C ",
" CCCCCCC ",
" DDDDD ",
" D ",
" D ",
" D ",
" DDDDD ",
" ",
" ",
" ",
" ",
" !!! !!! ",
" !#! EEEEEEEE !#! ",
" !FFEEEGGGGGGGGEEEFF! ",
" E%GGGGGGGGGGGGGGG% ",
" EHG%GGGGGGGGGGGGG%GE ",
" EHGGG%GGGGGGGGGGG%GGGE ",
" EHGGGG%..........G%GGGGE ",
" EHGGG..((((&&&&&)..GGGGE ",
" EHGGG.((((((&&&&&&)).GGGGE ",
" EHGG.((((((&&&&&&&))).GGGE ",
" EGGG.&(((((&&&&&&&&)))).GGGE ",
" EGGG.&&(&&&&&&&&&&))))).GGGE ",
" EGGG.&&&&&&&&&&&&)))))).GGGE ",
" EGGG.&&&&&&&&&&&))))))*.GGGE ",
" EGGG.&&+&&&+&&)))+)))+*.GGGE ",
" EGGG.&&&+++&))))))+++**.GGGE ",
" //1111111111111111111111111111// ",
" //////02222222222222222222222222222222////// ",
" ///22222222222222222222222222222222222222222555/// ",
" //22222222222222222222222222222222222222222555555555// ",
" /222222222222222222222222222222222222225555555555555555/ ",
" /222222222222222222222222222222255555555555555555555555/ ",
" //22222##22222222##22255555##55555555##55555555##555// ",
" ///55555555555555555555555555555555555555555555/// ",
" //////55555555555555555555555555555555////// ",
" ///11111111111111111111111111/// ",
" //IIIIIIIIIIIIIIIIIIIIII// ",
" ////IIIIIIIIIIIIII//// ",
" ////////////// ",
" ",
" ",
" ",
" ",
},
party = {
" JJJ ",
" JKJ ",
" JLJ ",
" MM N ",
" O !! MM MM N ",
" O !##! MPM MPPM ",
" !#$! M### MPQM ",
" !$$! MPQQM MQQM RR ",
" !! MPQQQM MM ",
" S % M#####M % ",
" S % MQQQQQQM % ",
" % MQQQQQQTM % ",
" %%%%M$$$$$$$$$%%% % ",
" %%&(((((&&&&&&&&&)%% ",
" %%%(((((((((&&&&&&&&&&)%%% ",
" %&(((((((((((&&&&&&&&&&))))% ",
" %%(((((((((((((&&&&&&&&&&&))))%% OO ",
" %&(((((((((((((&&&&&&&&&&&&))))))% ",
" R %&&((((((((((((&&&&&&&&&&&&&))))))*% ",
" R %&(((((((((((&&&&&&&&&&&&&&&)))))))% ",
" %&&(((((((((&&&&&&&&&&&&&&&&))))))))*% ",
" %&&&((((((&&&&&&&&&&&&&&&&&))))))))))% ",
" %&&&&&&&&&&&&&&&&&&&&&&&&&&&))))))))))*% ",
" %&&&&&&&&&++&&&&&&&&&&&&&&&))++)))))))*% ",
" %&&&&&&++++++++&&&&&&&&&&)++++++++)))**% ",
" %&&&&&+++&&&&+&+&&&&&&&&)+)+))))+++))**% U ",
" %&&&&&+&&&&&&&+++&&&&&))+++)))))))+)***% U ",
" NN %&&&&++&&&&&&&&&+&&&&)))+)))))))))++***% ",
" %&&&+&&&&&&&&&&+&))))))+))))))))))+**% ",
" %))&&&&&&&&&&&)))))))))))))))))))****% ",
" %))))))))))))))))))))))))))))))****% ",
" %)))))))))))))))))))))))))))))*****% ",
" %---))))))))))))))))))))))))**---% ",
" -----))))))))))))V))))))))***----- ",
" ---)))))))))))VVVVV))))******--- ",
" %(&%%)))))))))VVWVV))******%%&)% ",
" %&% %))))))))VWWWV*******% %)% ",
" %&&% %)))))****V********% %))% ",
" %&&% %****************% %))% S ",
" %&&% %**************% %))% S ",
" %))% %............% %))% ",
" UU %)))% /00000000000/ %)))% ",
" %))% /10000000001/ %))% ",
" %**% /0111111111/ %))% ",
" %**//000222222222//*)% ",
" %*100022222222222551*% ",
" %100222222222222551% ",
" /222222222922222555/ ",
" /222222229,92225555/ ",
" /222222222922255555/ ",
" /222222222222555555/ ",
" /222222222255555555/ ",
" /222222222555555555/ ",
" /222222255555555555/ ",
" /IIIIIIIIIIIIIIIIIII ",
" /5555555555555555/ ",
" /555555555555555I/ ",
" /155555555555I1/ ",
" //II155555555II1II// ",
" /IIII111////111IIII/ ",
" /IIIIII/ /IIIIII/ ",
" //////// //////// ",
" ",
" ",
},
ribbon = {
" ",
" ",
" ",
" ",
" !! !! ",
" !##! !##! ",
" !#$! !#$! ",
" !$$! !$$! ",
" !! !! ",
" % % ",
" % % ",
" % % ",
" %%%%%%%%%%%%%%%%% % ",
" %%&(((((&&&&&&&&&)%% ",
" %%%(((((((((&&&&&&&&&&)%%% ",
" %&(((((((((((&&&&&&&&&&))))% ",
" %%(((((((((((((&&&&&&&&&&&))))%% ",
" %&(((((((((((((&&&&&&&&&&&&))))))% ",
" %&&((((((((((((&&&&&&&&&&&&&))))))*% ",
" %&(((((((((((&&&&&&&&&&&&&&&)))))))% ",
" %&&(((++((((&&&&&&&&&&&&&&&&))++))))*% ",
" %&&&++++++&&&&&&&&&&&&&&&&&)+++++))))% ",
" %&&&++++++++++&&&&&&&&&&&&++++++++++))*% ",
" %&&++++,,+++++++&&&&&&&&+++++,,++++++)*% ",
" %&&++++,+++++++++&&&&&&++++++,+++++++**% ",
" %&&++++++++++++++&&&&&&+++++++++++++)**% ",
" %&&&+++++++++++++&&&&&)+++++++++++++***% ",
" %&&&++++++++++++&&&&&)))++++++++++++***% ",
" %&&&+++++++,+++&&))))))++++++++,++***% ",
" %))&&&+++++++++))))))))+++++++++)****% ",
" %))))))++++))))))))))))))++++))****% ",
" %)))))))))))))))))))))))))))))*****% ",
" %---))))))))))))))))))))))))**---% ",
" -----)))))))))))))))))))))***----- ",
" ---))))))))))))))))))))******--- ",
" %%)))))))))%)))%))******%% ",
" %)))))))))%%%********% ",
" %)))))*************% ",
" %****************% ",
" %**************% ",
" %............% ",
" /00000000000/ ",
" /10000000001/ ",
" %% /01@@@0@@@1/ %% ",
" %&)//000@XX@AA@22//((% ",
" %&&100@@@XXXAAAA@@@51((% ",
" %&)100@XXXXAAAAAYY@51&&% ",
" %&&1222@XXXA@@@AAYY@551&&% ",
" %&)%12222@AA@XZX@YY@5551%))% ",
" %))% /22@@AA@XZZXX@YY@@5/ %))% ",
" %...% /22@AAA@XXZXX@YYY@5/ %)..%% ",
" %&&% /22@@AA@XXZXX@YY@@5/ %.&&% ",
" %&&))% /2222@AY@XZX@YY@555/ %&&))% ",
" %))% /222@YYYY@@@YYYZ@55/ %))% ",
" %%%% /III@YYYYYYYYZZZ@III %%%% ",
" /55@@@YYYYYZZ@@@5/ ",
" /555[]@ZZ@ZZ@[55I/ ",
" /1[]^@@@5@@@^[1/ ",
" //II[^^[5555[^^[II// ",
" /III[^^[////[^^[III/ ",
" /II[[[^_ _[[a[II/ ",
" ///_//__ _//__/// ",
" _ ",
" ",
},
yawn = {
" ",
" ",
" ",
" ",
" !! !! ",
" !##! !##! ",
" !#$! !#$! ",
" !$$! !$$! ",
" !! !! ",
" % % ",
" % % ",
" % % ",
" %%%%%%%%%%%%%%%%% % ",
" %%&(((((&&&&&&&&&)%% ",
" %%%(((((((((&&&&&&&&&&)%%% ",
" %&(((((((((((&&&&&&&&&&))))% ",
" %%(((((((((((((&&&&&&&&&&&))))%% ",
" %&(((((((((((((&&&&&&&&&&&&))))))% ",
" %&&((((((((((((&&&&&&&&&&&&&))))))*% ",
" %&(((((((((((&&&&&&&&&&&&&&&)))))))% ",
" %&&(((((((((&&&&&&&&&&&&&&&&))))))))*% ",
" %&&&((((((&&&&&&&&&&&&&&&&&))))))))))% ",
" %&&&&&&++&&&&&&&&&&&&&&&&&&&))))++))))*% ",
" %&&&&&&&++&&&&&&&&&&&&&&&&&))))++)))))*% ",
" %&&&&&&&&+++&&&&&&&&&&&&&))))+++)))))**% ",
" %&&&&&&&&&&++&&&&&&&&&&&))))++)))))))**% ",
" %&&&&&&&&&&&++&&&&&&&&)))))++)))))))b**% ",
" %&&&&&&&&&&++&&&&&&&&)))))))++)))))bb**% ",
" %&&&&&&&+++&&&&&&)))))))))))+++)))***% ",
" %))&&&&++&&&&&))))))))))))))))++)****% ",
" %))))++)))))))))))))))))))))))++***% ",
" %)))))))))))))))))))))))))))))*****% ",
" %---))))))))))))))))))))))))**---% ",
" -----)))))))))))))))))))))***----- ",
" ---))))))))))))VVV)))))******--- ",
" %%)))))))))VVVVV))******%% ",
" %))))))))VVWVV*******% ",
" %)))))**VWWWV******% ",
" %*******WWW******% ",
" %**************% ",
" %............% ",
" /00000000000/ ",
" /10000000001/ ",
" %% /0111111111/ %% ",
" %&)//000222222222//((% ",
" %&&100022222222222551((% ",
" %&)100222222222222551&&% ",
" %&&12222222229222225551&&% ",
" %&)%1222222229,922255551%))% ",
" %))% /222222222922255555/ %))% ",
" %...% /222222222222555555/ %)..%% ",
" %&&% /222222222255555555/ %.&&% ",
" %&&))% /222222222555555555/ %&&))% ",
" %))% /222222255555555555/ %))% ",
" %%%% /IIIIIIIIIIIIIIIIIII %%%% ",
" /5555555555555555/ ",
" /555555555555555I/ ",
" /155555555555I1/ ",
" //II155555555II1II// ",
" /IIII111////111IIII/ ",
" /IIIIII/ /IIIIII/ ",
" //////// //////// ",
" ",
" ",
},
wait = {
" !! !! ",
" !##! !##! ",
" !#$! !#$! ",
" !$$! !$$! ",
" !! !! ",
" % % ",
" % % ",
" % % ",
" %%%%%%%%%%%%%%%%% % ",
" %%&(((((&&&&&&&&&)%% ",
" %%%(((((((((&&&&&&&&&&)%%% ",
" %&(((((((((((&&&&&&&&&&))))% ",
" %%(((((((((((((&&&&&&&&&&&))))%% ",
" %&(((((((((((((&&&&&&&&&&&&))))))% ",
" %&&((((((((((((&&&&&&&&&&&&&))))))*% ",
" %&(((((((((((&&&&&&&&&&&&&&&)))))))% ",
" %&&(((++((((&&&&&&&&&&&&&&&&))++))))*% ",
" %&&&++,,++&&&&&&&&&&&&&&&&&),,+++))))% ",
" %&&&+++,++++++&&&&&&&&&&&&+++,++++++))*% ",
" %&&+++++++++++++&&&&&&&&+++++++++++++)*% ",
" %&&++++++++++++++&&&&&&++++++++++++++**% ",
" %&&++++++++++++++&&&&&&+++++++++++++)**% ",
" %&&&+++++++++++++&&&&&)+++++++++++++***% ",
" %&&&++++++++++++&&&&&)))++++++++++++***% ",
" %&&&+++++++,+++&&))))))++++++++,++***% ",
" %))&&&+++++++++))))))))+++++++++)****% ",
" %))))))++++))))))))))))))++++))****% ",
" %)))))))))))))))))))))))))))))*****% ",
" %---))))))))))))))))))))))))**---% ",
" -----)))))))))))))))))))))***----- ",
" ---))))))))))))))))))))******--- ",
" %%)))))))))%)))%))******%% ",
" %)))))))))%%%********% ",
" %)))))*************% ",
" %****************% ",
" %**************% ",
" %............% ",
" /00000000000/ ",
" /10000000001/ ",
" %% /0111111111/ %% ",
" %&)//000222222222//((% ",
" %&&100022222222222551((% ",
" %&)100222222222222551&&% ",
" %&&12222222229222225551&&% ",
" %&)%1222222229,922255551%))% ",
" %))% /222222222922255555/ %))% ",
" %...% /222222222222555555/ %)..%% ",
" %&&% /222222222255555555/ %.&&% ",
" %&&))% /222222222555555555/ %&&))% ",
" %))% /222222255555555555/ %))% ",
" %..% /IIIIIIIIIIIIIIIIIII %..% ",
" 777777::::77=155555555555555551=777====777777 ",
" 34444444444441555555555555555I14444444444;;:7 ",
" 366666666666661155555555555I1166666666664;;:7 ",
" 3???????????11II155555555II1II11?????????;;:7 ",
" 3444444444441IIII1111111111IIII1444444444;>:7 ",
" 7<<<<<<<<<<<1IIIIII1<<<<1IIIIII1<<<<<<<<<<<:7 ",
" cccccddddddddddee11111111eeee11111111eeeeeeeeeeeffcccc ",
" cddd444444444444466666666444466666666444444444444444fc ",
" cdee4???????????????????????????????????????????????fc ",
" cdee466666666666666666666666666666666666666666666664fc ",
" cdee4???????????????????????????????????????????????fc ",
" cdff444444444444444444444444444444444444444444444444gc ",
" cdcccccccccccccccccccccccccccccccccccccccccccccccccccc ",
},
}