quickshell: Archie breathes in his sleep

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-08-04 21:41:06 +01:00
parent 1f246b6734
commit f3e55d59f8

View file

@ -1319,6 +1319,30 @@ in
".....TTTTTTTTKKKKKKKKKKKKTTTT...............", ".....TTTTTTTTKKKKKKKKKKKKTTTT...............",
"......TTTTTT..........TTTTTT................" "......TTTTTT..........TTTTTT................"
] ]
// Mid-breath: the same pose with his ribcage lifted one cell,
// just behind the collar where a dog's chest actually is. His
// belly stays put that side is against the cushion.
readonly property var sleepIn: [
"............................................",
"............................................",
"............................................",
"............................................",
"............................................",
"............................................",
"............................................",
"............................................",
"............................................",
"..............................KKKKKKKKK.....",
"................KKKKKKKKKK...KKKKKKKKKKKK...",
"KKKKKKKKKKKKKKKKKKKKKKKKKKKRRKKKKKK.KKKKK...",
"..KKKKKKKKKKKKKKKKKKKKKKKKKRRKKKKKTTTTTKKK..",
"..KKKKKKKKKKKKKKKKKKKKKKKKKRRKKKKKTTTTTTTTT.",
"...KKKKKKKKKKKKKKKKKKKKKKKKRRKKKKKTTTTTTT...",
"...KKKKKKKKKKKKKKKKKKKKKKKKRRTTTT...........",
"....KKKKKKKKKKKKKKKKKKKKKKRRTTTT............",
".....TTTTTTTTKKKKKKKKKKKKTTTT...............",
"......TTTTTT..........TTTTTT................"
]
readonly property var bowlArt: [ readonly property var bowlArt: [
".....BBBBBB.....", ".....BBBBBB.....",
"...BBBBBBBBBB...", "...BBBBBBBBBB...",
@ -1567,8 +1591,13 @@ in
: (archie.stepped ? archie.walkB : archie.walkA); : (archie.stepped ? archie.walkB : archie.walkA);
} }
} else { } else {
// Breathing: in for a third of the cycle, then
// back down and a pause. 91 ticks is about three
// seconds a breath, which is where a small dog
// asleep actually sits.
archie.frame = archie.mode === "eat" ? archie.eat archie.frame = archie.mode === "eat" ? archie.eat
: archie.mode === "sleep" ? archie.sleepArt : archie.mode === "sleep"
? (archie.hold % 91 < 32 ? archie.sleepIn : archie.sleepArt)
: (archie.hold % 26 < 13 ? archie.walkA : archie.wag); : (archie.hold % 26 < 13 ? archie.walkA : archie.wag);
if (--archie.hold <= 0) archie.wander(); if (--archie.hold <= 0) archie.wander();
} }