wobnimo 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/AGENTS.md +18 -4
  2. package/README.md +38 -7
  3. package/dist/characters/bao.d.ts +6 -0
  4. package/dist/characters/bao.js +1 -0
  5. package/dist/characters/berry.d.ts +6 -0
  6. package/dist/characters/berry.js +1 -0
  7. package/dist/characters/boo.js +1 -1
  8. package/dist/characters/bumble.d.ts +6 -0
  9. package/dist/characters/bumble.js +1 -0
  10. package/dist/characters/cacti.d.ts +6 -0
  11. package/dist/characters/cacti.js +1 -0
  12. package/dist/characters/cap.d.ts +6 -0
  13. package/dist/characters/cap.js +1 -0
  14. package/dist/characters/drift.d.ts +6 -0
  15. package/dist/characters/drift.js +1 -0
  16. package/dist/characters/ember.d.ts +6 -0
  17. package/dist/characters/ember.js +1 -0
  18. package/dist/characters/hop.d.ts +6 -0
  19. package/dist/characters/hop.js +1 -0
  20. package/dist/characters/index.d.ts +11 -1
  21. package/dist/characters/index.js +11 -11
  22. package/dist/characters/inky.js +1 -1
  23. package/dist/characters/latte.d.ts +6 -0
  24. package/dist/characters/latte.js +1 -0
  25. package/dist/characters/microduck.js +1 -1
  26. package/dist/characters/miso.js +1 -1
  27. package/dist/characters/mochi.js +1 -1
  28. package/dist/characters/pebble.js +1 -1
  29. package/dist/characters/pip.js +1 -1
  30. package/dist/characters/rex.js +1 -1
  31. package/dist/characters/swirl.d.ts +6 -0
  32. package/dist/characters/swirl.js +1 -0
  33. package/dist/characters/tad.js +1 -1
  34. package/dist/characters/volt.js +1 -1
  35. package/dist/cli.js +1888 -0
  36. package/dist/element.d.ts +20 -2
  37. package/dist/element.js +11 -11
  38. package/dist/index-Cm5wWKoT.d.ts +12 -0
  39. package/dist/index.d.ts +7 -2
  40. package/dist/index.js +6 -6
  41. package/dist/{status-DVudJbtp.d.ts → mascot-DZ91_ss-.d.ts} +1 -10
  42. package/dist/react.d.ts +2 -1
  43. package/dist/react.js +16 -16
  44. package/dist/status-C14-19fT.d.ts +12 -0
  45. package/dist/wobnimo.js +15 -15
  46. package/package.json +30 -4
  47. package/skill/SKILL.md +719 -0
  48. package/skill/examples/bao.ts +73 -0
  49. package/skill/examples/berry.ts +97 -0
  50. package/skill/examples/boo.ts +87 -0
  51. package/skill/examples/bumble.ts +70 -0
  52. package/skill/examples/cacti.ts +79 -0
  53. package/skill/examples/cap.ts +59 -0
  54. package/skill/examples/drift.ts +74 -0
  55. package/skill/examples/ember.ts +78 -0
  56. package/skill/examples/hop.ts +66 -0
  57. package/skill/examples/inky.ts +168 -0
  58. package/skill/examples/latte.ts +73 -0
  59. package/skill/examples/microduck.ts +222 -0
  60. package/skill/examples/miso.ts +182 -0
  61. package/skill/examples/mochi.ts +78 -0
  62. package/skill/examples/pebble.ts +174 -0
  63. package/skill/examples/pip.ts +170 -0
  64. package/skill/examples/rex.ts +193 -0
  65. package/skill/examples/swirl.ts +69 -0
  66. package/skill/examples/tad.ts +117 -0
  67. package/skill/examples/volt.ts +214 -0
  68. package/skill/reference/recipes.md +551 -0
  69. package/skill/reference/spec.md +258 -0
  70. package/skill/templates/starter.ts +73 -0
  71. package/dist/element-DRDEWSGV.d.ts +0 -8
package/AGENTS.md CHANGED
@@ -1,7 +1,8 @@
1
1
  # Wobnimo — guide for AI agents
2
2
 
3
- Wobnimo renders animated mascots in a web app. One engine, ten characters, ten
4
- emotional states. Use this file to add or wire up a mascot correctly.
3
+ Wobnimo renders animated mascots in a web app. One engine, twenty characters, ten
4
+ emotional states, and a skill for designing new characters. Use this file to add or
5
+ wire up a mascot correctly.
5
6
 
6
7
  ## Install
7
8
 
@@ -12,7 +13,7 @@ npm i wobnimo
12
13
  No build step? Add one tag instead:
13
14
 
14
15
  ```html
15
- <script type="module" src="https://cdn.jsdelivr.net/npm/wobnimo@0.1/dist/wobnimo.js"></script>
16
+ <script type="module" src="https://cdn.jsdelivr.net/npm/wobnimo@0.2/dist/wobnimo.js"></script>
16
17
  ```
17
18
 
18
19
  ## Render it
@@ -36,9 +37,22 @@ Size it 96–160 px square. Put it where the assistant or chat lives.
36
37
 
37
38
  `volt` (robot), `pip` (songbird), `mochi` (jelly), `boo` (ghost), `inky` (octopus),
38
39
  `miso` (plush cat), `tad` (tree frog), `pebble` (penguin), `rex` (baby dino),
39
- `microduck` (robot duck). Import one to ship only its ~1.2 KB of data:
40
+ `microduck` (robot duck), `drift` (cloud with headphones), `cacti` (potted cactus),
41
+ `latte` (coffee cup), `bumble` (bumblebee), `swirl` (cinnamon-roll snail), `ember`
42
+ (fox cub), `cap` (mushroom), `berry` (strawberry), `bao` (panda), `hop` (bunny).
43
+ Import one to ship only its ~1.2 KB of data:
40
44
  `import { mochi } from 'wobnimo/characters/mochi'`.
41
45
 
46
+ ## A new character of your own
47
+
48
+ If the user wants a custom mascot ("a sleepy cloud wearing headphones"), don't
49
+ improvise the format. Run `npx wobnimo skill`, then read
50
+ `.claude/skills/wobnimo-mascot/SKILL.md` (the same skill is in
51
+ `node_modules/wobnimo/skill/SKILL.md`) and follow it: `npx wobnimo new <id>`, build it,
52
+ `npx wobnimo check <file>` until there are no errors or warnings, then
53
+ `npx wobnimo preview <file>` and look at the picture. Use the result with
54
+ `<Mascot character={spec} />`, `element.spec = spec` or `mount(el, spec)`.
55
+
42
56
  ## States — the whole point
43
57
 
44
58
  Drive the state from what the app is doing. The ten states and when to use each:
package/README.md CHANGED
@@ -11,15 +11,15 @@
11
11
 
12
12
  ### Give your app a face.
13
13
 
14
- Ten living mascots on one featherweight animation engine for the web.
15
- Real 3D, every mood, ~25&nbsp;KB, zero dependencies — and built so an AI agent can wire it up for you.
14
+ Twenty living mascots on one featherweight animation engine for the web — or describe your own in one sentence and let your agent build it.
15
+ Real 3D, every mood, ~25&nbsp;KB, zero dependencies.
16
16
 
17
17
  [![npm](https://img.shields.io/npm/v/wobnimo?color=d9f55c&labelColor=16181d)](https://www.npmjs.com/package/wobnimo)
18
18
  [![gzip](https://img.shields.io/badge/one%20mascot-~25%20KB%20gzip-d9f55c?labelColor=16181d)](https://pouryaak.github.io/wobnimo/)
19
19
  [![zero deps](https://img.shields.io/badge/dependencies-0-d9f55c?labelColor=16181d)](https://www.npmjs.com/package/wobnimo?activeTab=dependencies)
20
20
  [![license](https://img.shields.io/npm/l/wobnimo?color=d9f55c&labelColor=16181d)](./LICENSE)
21
21
 
22
- **[▶ Live playground](https://pouryaak.github.io/wobnimo/)** · **[Quickstart](#add-one-in-10-seconds)** · **[For AI agents](#for-ai-agents)**
22
+ **[▶ Live playground](https://pouryaak.github.io/wobnimo/)** · **[Quickstart](#add-one-in-10-seconds)** · **[Describe your own](#describe-it-get-it)** · **[For AI agents](#for-ai-agents)**
23
23
 
24
24
  </div>
25
25
 
@@ -34,7 +34,7 @@ in a tag you drop anywhere, with no build step and nothing to configure.
34
34
  No build, no npm, no framework. Two lines in any HTML page:
35
35
 
36
36
  ```html
37
- <script type="module" src="https://cdn.jsdelivr.net/npm/wobnimo@0.1/dist/wobnimo.js"></script>
37
+ <script type="module" src="https://cdn.jsdelivr.net/npm/wobnimo@0.2/dist/wobnimo.js"></script>
38
38
 
39
39
  <wobnimo-mascot character="mochi" state="thinking"></wobnimo-mascot>
40
40
  ```
@@ -44,10 +44,38 @@ That's it — a living mascot is on your page. [Try every character and mood in
44
44
  ## Meet the team
45
45
 
46
46
  **Volt** the LED robot · **Pip** the songbird · **Mochi** the jelly · **Boo** the ghost · **Inky** the octopus ·
47
- **Miso** the plush cat · **Tad** the tree frog · **Pebble** the penguin · **Rex** the baby dino · **Microduck** the robot duck.
47
+ **Miso** the plush cat · **Tad** the tree frog · **Pebble** the penguin · **Rex** the baby dino · **Microduck** the robot duck ·
48
+ **Drift** the sleepy cloud · **Cacti** the potted cactus · **Latte** the coffee cup · **Bumble** the bee · **Swirl** the cinnamon-roll snail ·
49
+ **Ember** the fox cub · **Cap** the toadstool · **Berry** the strawberry · **Bao** the panda · **Hop** the bunny.
48
50
 
49
51
  Each has its own body, surface and personality, and every one of them plays all ten moods.
50
- Recolour any of them to match your brand, or write your own as plain data.
52
+ Recolour any of them to match your brand. The last ten were each designed by an agent from a single sentence —
53
+ which you can do too.
54
+
55
+ ## Describe it. Get it.
56
+
57
+ Want a mascot that is *yours*? Give your coding agent the Wobnimo skill and one sentence:
58
+
59
+ ```bash
60
+ npx wobnimo skill # adds the skill for Claude Code, Codex, Cursor, OpenCode…
61
+ ```
62
+
63
+ > *"Use the wobnimo-mascot skill to make a mascot for this app: a sleepy cloud wearing headphones."*
64
+
65
+ The agent plans the character, writes it as plain data, and then **checks its own work**:
66
+
67
+ ```bash
68
+ npx wobnimo check mascots/drift.ts # measures the real 3D shape: hidden parts, buried eyes,
69
+ # paints that miss, crops, floating pieces — each with the exact fix
70
+ npx wobnimo preview mascots/drift.ts # renders front, side, back, a face close-up and every mood to one PNG
71
+ ```
72
+
73
+ Every message from the checker comes with the number to change, so even small models get there: in our
74
+ tests Claude Haiku built a toaster, an avocado and a baby dragon that passed on the first or second try.
75
+ Watch the live preview while it works with `npx wobnimo preview <file> --live`.
76
+
77
+ The skill is in [`skills/wobnimo-mascot`](./skills/wobnimo-mascot) — install it with
78
+ `npx skills add Pouryaak/wobnimo` too.
51
79
 
52
80
  ## Give your AI a face
53
81
 
@@ -86,6 +114,9 @@ every character has a **Copy for agent** button: it copies one self-contained pr
86
114
  agent (Claude Code, Cursor, Copilot, v0…) exactly what to install and how to wire the mascot to your
87
115
  app's real events. Paste it, and it's done.
88
116
 
117
+ Want a new character instead? See [Describe it. Get it.](#describe-it-get-it) — the
118
+ `wobnimo-mascot` skill walks any agent through designing, checking and previewing one.
119
+
89
120
  Prefer to point your agent at the docs? Everything is at
90
121
  **[pouryaak.github.io/wobnimo/llms.txt](https://pouryaak.github.io/wobnimo/llms.txt)**, and the package
91
122
  ships an `AGENTS.md` so an agent inspecting `node_modules/wobnimo` already knows the rules.
@@ -129,7 +160,7 @@ you only ship what you use.
129
160
 
130
161
  - **Tiny.** One mascot is ~25 KB gzipped, the whole thing has **zero dependencies**, and no Three.js.
131
162
  - **Real, not a sprite.** Characters are signed-distance 3D with studio lighting, so they're crisp at any size and animate from springs, not canned clips.
132
- - **Characters are data.** A character is plain JSON — parts, materials, bones. Recolour, remix with `variant()`, or write your own.
163
+ - **Characters are data.** A character is plain JSON — parts, materials, bones. Recolour, remix with `variant()`, or have your agent write a new one from a sentence.
133
164
  - **Drops in anywhere.** A web component for every framework, a first-class React wrapper, and a CDN tag for no-build pages.
134
165
  - **Respectful.** Honours `prefers-reduced-motion`, sleeps when off-screen, and shares one WebGL context so a page can hold a whole cast.
135
166
 
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A chubby panda. */
4
+ declare const bao: CharacterSpec;
5
+
6
+ export { bao };
@@ -0,0 +1 @@
1
+ var t={id:"bao",name:"Bao",tagline:"A chubby panda cub: round ears, eye patches, and a belly made for sitting",accent:"#2f3b4c",frame:{target:.46,radius:.62},bound:{y:.45,radius:.57},motion:{hop:.1,squash:1.2,snap:.9,talkSquash:.4},materials:{white:{color:"#f6f3ec",f0:.03,spec:.4,shininess:20,rim:1,sheen:.6,surface:{kind:"fur",scale:100,strength:.3,bone:"head"}},whiteBody:{color:"#f6f3ec",shadeOf:"white",f0:.03,spec:.4,shininess:20,rim:1,sheen:.6,surface:{kind:"fur",scale:100,strength:.3}},black:{color:"#26252b",f0:.03,spec:.4,shininess:20,rim:.9,sheen:.6,surface:{kind:"fur",scale:100,strength:.3}},nose:{color:"#1b1a1f",f0:.06,spec:1.8,shininess:200,rim:.3,gloss:.9}},bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.2]],rz:[["roll",.35]]},wave:{rz:[.02,.5,0]}},{name:"head",parent:"body",pivot:[0,.48,.02],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.22,.38,.06],rest:{rz:-0.4},drive:{rz:[["flap",-1]]}},{name:"armR",parent:"body",pivot:[.22,.38,.06],rest:{rz:.4},drive:{rz:[["flap",1]]}}],parts:[{bone:"body",shape:"ellipsoid",at:[0,.26,0],radii:[.29,.27,.26],material:"whiteBody"},{bone:"body",shape:"ellipsoid",at:[-0.15,.08,.14],radii:[.1,.08,.12],blend:.05,material:"black"},{bone:"body",shape:"ellipsoid",at:[.15,.08,.14],radii:[.1,.08,.12],blend:.05,material:"black"},{bone:"body",shape:"ellipsoid",at:[0,.42,-0.01],radii:[.27,.07,.24],blend:.05,material:"black"},{bone:"armL",shape:"capsule",from:[0,0,0],to:[-0.04,-0.16,.06],radius:.07,blend:.04,material:"black"},{bone:"armR",shape:"capsule",from:[0,0,0],to:[.04,-0.16,.06],radius:.07,blend:.04,material:"black"},{bone:"head",shape:"ellipsoid",at:[0,.14,0],radii:[.28,.24,.24],blend:.1,material:"white"},{bone:"head",shape:"ellipsoid",at:[0,.06,.18],radii:[.1,.07,.08],blend:.06,material:"white"},{bone:"head",shape:"ellipsoid",at:[0,.09,.26],radii:[.035,.022,.02],material:"nose"},{bone:"head",shape:"sphere",at:[-0.2,.33,-0.02],radius:.075,blend:.03,material:"black"},{bone:"head",shape:"sphere",at:[.2,.33,-0.02],radius:.075,blend:.03,material:"black"}],paints:[{bone:"head",on:["white"],kind:"ellipse",at:[-0.1,.15,.2],radii:[.06,.08],color:"#26252b",soft:.2},{bone:"head",on:["white"],kind:"ellipse",at:[.1,.15,.2],radii:[.06,.08],color:"#26252b",soft:.2},{bone:"head",on:["white"],kind:"sphere",at:[-0.17,.05,.18],radius:.04,color:"#ffb3c1",soft:.6,opacity:.7},{bone:"head",on:["white"],kind:"sphere",at:[.17,.05,.18],radius:.04,color:"#ffb3c1",soft:.6,opacity:.7}],eyes:{kind:"ball",bone:"head",at:[[-0.095,.16,.21],[.095,.16,.21]],radius:.04,iris:"#3a2a20",irisSize:.7,pupilSize:.5,lid:"black"},face:{kind:"mouth",bone:"head",on:["white"],at:[0,.035,.25],width:.04,color:"#26252b",tongue:"#ff8fa3"},anchors:{top:{bone:"head",at:[.15,.45,.05]},mouth:{bone:"head",at:[0,.035,.27]},ear:{bone:"head",at:[-0.22,.33,0]},feet:{bone:"root",at:[0,.02,.18]}},acting:{idle:{armL:{rz:[0,.05,.5,0]}},thinking:{armR:{rz:1.5,rx:-1.2,ry:-0.4},head:{rz:.1}},listening:{armL:{rz:-0.6,rx:-0.4}},speaking:{armL:{rz:[-0.2,.2,1.2,0]},armR:{rz:[.2,.2,1.2,1.4]}},sleeping:{head:{rx:.25,rz:.15}},working:{armL:{rx:[-0.8,.2,5,0]},armR:{rx:[-0.8,.2,5,Math.PI]}},error:{armL:{rz:-1.6,rx:-0.6},armR:{rz:1.6,rx:-0.6}},surprised:{armL:{rz:-1.1},armR:{rz:1.1}},celebrating:{armL:{rz:[-2.2,.3,4,0]},armR:{rz:[2.2,.3,4,Math.PI]}},sad:{head:{rx:.3},armL:{rz:.1},armR:{rz:-0.1}},happy:{armL:{rz:[-1.5,.3,3,0]},armR:{rz:[1.5,.3,3,1]}}},fx:{happy:[{glyph:"heart",anchor:"top",rate:1.2,velocity:[0,.22,.04],jitter:.1,life:[1,1.3],size:[.04,.06],color:"#ff86b0"}]}};({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as bao};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A strawberry with a leafy hat. */
4
+ declare const berry: CharacterSpec;
5
+
6
+ export { berry };
@@ -0,0 +1 @@
1
+ var t={id:"berry",name:"Berry",tagline:"A plump strawberry with golden seeds and a leafy hat with a stalk on top",accent:"#e8324f",frame:{target:.43,radius:.57},bound:{y:.41,radius:.5},motion:{hop:.15,squash:1.3,snap:1.1,talkSquash:.5},materials:{berry:{color:"#e8324f",f0:.07,spec:1.6,shininess:130,rim:.6,sss:.35,sssColor:"#ff7d8f",gloss:.8},leaf:{color:"#3fa34d",f0:.04,spec:.7,shininess:50,rim:.6,sss:.25,sssColor:"#b8f0a0"},bead:{color:"#1a1012",f0:.06,spec:2.2,shininess:400,rim:.2,gloss:1}},bones:[{name:"body",pivot:[0,-0.042,0],drive:{rx:[["pitch",-0.4]],ry:[["yaw",.6]],rz:[["roll",.5]]}},{name:"hat",parent:"body",pivot:[0,.73,0],jiggle:{axis:[0,1,0],length:.12,freq:3.2,damping:.16,maxAngle:.5}}],parts:[{bone:"body",shape:"roundCone",from:[0,.2,0],to:[0,.48,0],r1:.17,r2:.3,material:"berry"},{bone:"body",shape:"ellipsoid",at:[0,.5,0],radii:[.3,.2,.28],blend:.08,material:"berry"},...[0,1,2,3,4].map(e=>{let a=e/5*Math.PI*2+.3;return {bone:"hat",shape:"ellipsoid",at:[Math.sin(a)*.15,-5e-3,Math.cos(a)*.15],rot:[.5,a,0],radii:[.075,.024,.15],blend:.02,material:"leaf"}}),{bone:"hat",shape:"capsule",from:[0,0,0],to:[.02,.1,0],radius:.022,blend:.03,material:"leaf"}],paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}],eyes:{kind:"bead",bone:"body",at:[[-0.09,.5,.3],[.09,.5,.3]],radii:[.03,.045,.02],material:"bead"},face:{kind:"mouth",bone:"body",on:["berry"],at:[0,.41,.3],width:.045,color:"#5a1020",tongue:"#ff8fa3"},anchors:{top:{bone:"hat",at:[.06,.16,0]},mouth:{bone:"body",at:[0,.41,.31]},ear:{bone:"body",at:[-0.3,.5,0]},feet:{bone:"root",at:[0,.02,.12]}},acting:{thinking:{hat:{rz:.3}},sleeping:{hat:{rz:.4,rx:.2}},error:{hat:{rz:[0,.3,9,0]}},celebrating:{hat:{ry:[0,0,0,0,10]}},sad:{hat:{rx:.4,rz:.3}},happy:{hat:{ry:[0,0,0,0,14]}}}};({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as berry};
@@ -1 +1 @@
1
- var r={id:"boo",name:"Boo",tagline:"Floats, glows from inside, trails motes, a hem that ripples",accent:"#8a6cf0",frame:{target:.78,radius:.92},bound:{y:.72,radius:.72},motion:{float:.22,hop:.12,squash:.8,snap:.8,talkSquash:.6},glowPool:.55,materials:{ghost:{color:"#eceaff",f0:.04,spec:.5,shininess:30,rim:1.4,sss:.4,sssColor:"#b9a4ff",emit:"#6f52d9",emitStrength:.06},bead:{color:"#1b1430",f0:.06,spec:2.2,shininess:400,rim:.2,gloss:1}},bones:[{name:"body",pivot:[0,0,0],drive:{rx:[["pitch",-0.5]],ry:[["yaw",.7]],rz:[["roll",.6]]},wave:{rz:[.03,.45,0]}},{name:"armL",parent:"body",pivot:[-0.36,.74,.04],drive:{rz:[["flap",-1.2]]},wave:{rz:[.08,.7,0]},jiggle:{axis:[-0.8,-0.6,0],length:.15,freq:2,damping:.2,maxAngle:.7}},{name:"armR",parent:"body",pivot:[.36,.74,.04],drive:{rz:[["flap",1.2]]},wave:{rz:[-0.08,.7,1.6]},jiggle:{axis:[.8,-0.6,0],length:.15,freq:2,damping:.2,maxAngle:.7}}],parts:[{bone:"body",shape:"sphere",at:[0,.88,0],radius:.4,material:"ghost"},{bone:"body",shape:"roundCone",from:[0,.88,0],to:[0,.4,0],r1:.4,r2:.47,material:"ghost"},{bone:"body",shape:"hem",y:.34,amplitude:.045,waves:6,speed:2.4,blend:.05,material:"ghost"},{bone:"armL",shape:"capsule",from:[0,0,0],to:[-0.12,-0.09,.02],radius:.07,blend:.08,material:"ghost"},{bone:"armR",shape:"capsule",from:[0,0,0],to:[.12,-0.09,.02],radius:.07,blend:.08,material:"ghost"}],paints:[{bone:"body",on:["ghost"],kind:"sphere",at:[-0.24,.78,.31],radius:.07,color:"#ffa3c4",soft:.6,opacity:.7},{bone:"body",on:["ghost"],kind:"sphere",at:[.24,.78,.31],radius:.07,color:"#ffa3c4",soft:.6,opacity:.7}],eyes:{kind:"bead",bone:"body",at:[[-0.135,.9,.375],[.135,.9,.375]],radii:[.048,.072,.03],material:"bead"},face:{kind:"mouth",bone:"body",on:["ghost"],at:[0,.77,.38],width:.075,color:"#2a1a4a",tongue:"#ff7fa6"},anchors:{top:{bone:"body",at:[.16,1.2,.1]},mouth:{bone:"body",at:[0,.77,.4]},ear:{bone:"body",at:[-0.42,.92,0]},center:{bone:"body",at:[0,.8,0]}},acting:{idle:{armL:{rz:[0,.1,.7,0]},armR:{rz:[0,.1,.7,1.3]}},thinking:{armR:{ry:-1.1,rz:.9},armL:{rz:.25}},listening:{armL:{rz:-1,rx:-0.35}},speaking:{armL:{rz:[-0.3,.3,1.2,0],rx:[-0.3,.2,.9,0]},armR:{rz:[.3,.3,1.2,1.7],rx:[-0.3,.2,.9,2.2]}},sleeping:{armL:{rz:.4},armR:{rz:-0.4},body:{rz:.08}},working:{armL:{rx:[-0.6,.15,6,0],rz:-0.3},armR:{rx:[-0.6,.15,6,Math.PI],rz:.3}},error:{armL:{rz:[-1,.25,10,0]},armR:{rz:[1,.25,10,1]}},surprised:{armL:{rz:-1.4,rx:-0.4},armR:{rz:1.4,rx:-0.4}},celebrating:{armL:{rz:[-1.6,.3,4,0]},armR:{rz:[1.6,.3,4,Math.PI]}},sad:{armL:{rz:.5},armR:{rz:-0.5},body:{rz:.05}},happy:{armL:{rz:[-1.3,.35,3,0]},armR:{rz:[1.3,.35,3,1.2]}}},fx:{ambient:[{glyph:"mote",anchor:"center",rate:1.3,spread:.5,velocity:[0,.07,0],jitter:.06,wobble:.09,life:[2.2,3.2],size:[.04,.02],color:"#b49cff",glow:true}],happy:[{glyph:"heart",anchor:"top",rate:1.2,spread:.2,velocity:[0,.22,.05],jitter:.12,wobble:.06,life:[1,1.3],size:[.04,.07],color:"#ff86b0"}]}};export{r as boo};
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});var t={id:"boo",name:"Boo",tagline:"Floats, glows from inside, trails motes, a hem that ripples",accent:"#8a6cf0",frame:{target:.78,radius:.92},bound:{y:.72,radius:.72},motion:{float:.22,hop:.12,squash:.8,snap:.8,talkSquash:.6},glowPool:.55,materials:{ghost:{color:"#eceaff",f0:.04,spec:.5,shininess:30,rim:1.4,sss:.4,sssColor:"#b9a4ff",emit:"#6f52d9",emitStrength:.06},bead:{color:"#1b1430",f0:.06,spec:2.2,shininess:400,rim:.2,gloss:1}},bones:[{name:"body",pivot:[0,0,0],drive:{rx:[["pitch",-0.5]],ry:[["yaw",.7]],rz:[["roll",.6]]},wave:{rz:[.03,.45,0]}},{name:"armL",parent:"body",pivot:[-0.36,.74,.04],drive:{rz:[["flap",-1.2]]},wave:{rz:[.08,.7,0]},jiggle:{axis:[-0.8,-0.6,0],length:.15,freq:2,damping:.2,maxAngle:.7}},{name:"armR",parent:"body",pivot:[.36,.74,.04],drive:{rz:[["flap",1.2]]},wave:{rz:[-0.08,.7,1.6]},jiggle:{axis:[.8,-0.6,0],length:.15,freq:2,damping:.2,maxAngle:.7}}],parts:[{bone:"body",shape:"sphere",at:[0,.88,0],radius:.4,material:"ghost"},{bone:"body",shape:"roundCone",from:[0,.88,0],to:[0,.4,0],r1:.4,r2:.47,material:"ghost"},{bone:"body",shape:"hem",y:.34,amplitude:.045,waves:6,speed:2.4,blend:.05,material:"ghost"},{bone:"armL",shape:"capsule",from:[0,0,0],to:[-0.12,-0.09,.02],radius:.07,blend:.08,material:"ghost"},{bone:"armR",shape:"capsule",from:[0,0,0],to:[.12,-0.09,.02],radius:.07,blend:.08,material:"ghost"}],paints:[{bone:"body",on:["ghost"],kind:"sphere",at:[-0.24,.78,.31],radius:.07,color:"#ffa3c4",soft:.6,opacity:.7},{bone:"body",on:["ghost"],kind:"sphere",at:[.24,.78,.31],radius:.07,color:"#ffa3c4",soft:.6,opacity:.7}],eyes:{kind:"bead",bone:"body",at:[[-0.135,.9,.375],[.135,.9,.375]],radii:[.048,.072,.03],material:"bead"},face:{kind:"mouth",bone:"body",on:["ghost"],at:[0,.77,.38],width:.075,color:"#2a1a4a",tongue:"#ff7fa6"},anchors:{top:{bone:"body",at:[.16,1.2,.1]},mouth:{bone:"body",at:[0,.77,.4]},ear:{bone:"body",at:[-0.42,.92,0]},center:{bone:"body",at:[0,.8,0]}},acting:{idle:{armL:{rz:[0,.1,.7,0]},armR:{rz:[0,.1,.7,1.3]}},thinking:{armR:{ry:-1.1,rz:.9},armL:{rz:.25}},listening:{armL:{rz:-1,rx:-0.35}},speaking:{armL:{rz:[-0.3,.3,1.2,0],rx:[-0.3,.2,.9,0]},armR:{rz:[.3,.3,1.2,1.7],rx:[-0.3,.2,.9,2.2]}},sleeping:{armL:{rz:.4},armR:{rz:-0.4},body:{rz:.08}},working:{armL:{rx:[-0.6,.15,6,0],rz:-0.3},armR:{rx:[-0.6,.15,6,Math.PI],rz:.3}},error:{armL:{rz:[-1,.25,10,0]},armR:{rz:[1,.25,10,1]}},surprised:{armL:{rz:-1.4,rx:-0.4},armR:{rz:1.4,rx:-0.4}},celebrating:{armL:{rz:[-1.6,.3,4,0]},armR:{rz:[1.6,.3,4,Math.PI]}},sad:{armL:{rz:.5},armR:{rz:-0.5},body:{rz:.05}},happy:{armL:{rz:[-1.3,.35,3,0]},armR:{rz:[1.3,.35,3,1.2]}}},fx:{ambient:[{glyph:"mote",anchor:"center",rate:1.3,spread:.5,velocity:[0,.07,0],jitter:.06,wobble:.09,life:[2.2,3.2],size:[.04,.02],color:"#b49cff",glow:true}],happy:[{glyph:"heart",anchor:"top",rate:1.2,spread:.2,velocity:[0,.22,.05],jitter:.12,wobble:.06,life:[1,1.3],size:[.04,.07],color:"#ff86b0"}]}};({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as boo};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A round bumblebee with tiny wings. */
4
+ declare const bumble: CharacterSpec;
5
+
6
+ export { bumble };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});var t={id:"bumble",name:"Bumble",tagline:"A fuzzy round bumblebee that hovers on wings far too small for it",accent:"#f5b700",frame:{target:.61,radius:.81},bound:{y:.5,radius:.62},motion:{float:.2,hop:.08,squash:1,snap:1.2,talkSquash:.5},materials:{fuzz:{color:"#ffc21a",f0:.03,spec:.4,shininess:20,rim:1.1,sheen:.8,surface:{kind:"fur",scale:110,strength:.4,bone:"body"}},stripe:{color:"#2b2118",f0:.03,spec:.4,shininess:20,rim:.8,sheen:.6},wing:{color:"#e8f6ff",f0:.1,spec:1.8,shininess:200,rim:1.4,sss:.6,sssColor:"#ffffff",gloss:.9},feeler:{color:"#2b2118",f0:.04,spec:.8,shininess:60,rim:.5}},bones:[{name:"body",pivot:[0,.4,0],drive:{rx:[["pitch",-0.4]],ry:[["yaw",.7]],rz:[["roll",.6]]},wave:{rx:[.03,.8,0]}},{name:"wingL",parent:"body",pivot:[-0.12,.3,-0.18],rest:{rz:.5,rx:-0.3},wave:{rz:[.35,14,0]}},{name:"wingR",parent:"body",pivot:[.12,.3,-0.18],rest:{rz:-0.5,rx:-0.3},wave:{rz:[-0.35,14,0]}},{name:"feelerL",parent:"body",pivot:[-0.08,.36,.1],rest:{rz:.35},jiggle:{axis:[0,1,0],length:.14,freq:3,damping:.12}},{name:"feelerR",parent:"body",pivot:[.08,.36,.1],rest:{rz:-0.35},jiggle:{axis:[0,1,0],length:.14,freq:3,damping:.12}}],parts:[{bone:"body",shape:"sphere",at:[0,0,0],radius:.36,material:"fuzz"},{bone:"body",shape:"roundCone",from:[0,-0.05,-0.33],to:[0,-0.08,-0.45],r1:.05,r2:.01,blend:.03,material:"stripe"},{bone:"wingL",shape:"ellipsoid",at:[-0.1,.1,0],rot:[0,0,.5],radii:[.12,.17,.012],material:"wing"},{bone:"wingR",shape:"ellipsoid",at:[.1,.1,0],rot:[0,0,-0.5],radii:[.12,.17,.012],material:"wing"},{bone:"feelerL",shape:"capsule",from:[0,0,0],to:[0,.14,.02],radius:.012,material:"feeler"},{bone:"feelerL",shape:"sphere",at:[0,.15,.02],radius:.03,material:"feeler"},{bone:"feelerR",shape:"capsule",from:[0,0,0],to:[0,.14,.02],radius:.012,material:"feeler"},{bone:"feelerR",shape:"sphere",at:[0,.15,.02],radius:.03,material:"feeler"}],paints:[{bone:"body",on:["fuzz"],kind:"sphere",at:[0,-1.04,0],radius:.9,color:"#2b2118",soft:.03},{bone:"body",on:["fuzz"],kind:"sphere",at:[0,-1.15,0],radius:.9,color:"#ffc21a",soft:.03},{bone:"body",on:["fuzz"],kind:"sphere",at:[0,-1.25,0],radius:.9,color:"#2b2118",soft:.03},{bone:"body",on:["fuzz"],kind:"sphere",at:[0,.98,0],radius:.7,color:"#2b2118",soft:.04},{bone:"body",on:["fuzz"],kind:"sphere",at:[-0.2,-0.05,.27],radius:.06,color:"#ff8a6a",soft:.6,opacity:.7},{bone:"body",on:["fuzz"],kind:"sphere",at:[.2,-0.05,.27],radius:.06,color:"#ff8a6a",soft:.6,opacity:.7}],eyes:{kind:"ball",bone:"body",at:[[-0.12,.06,.3],[.12,.06,.3]],radius:.065,iris:"#20160e",irisSize:.85,pupilSize:.55,lid:"fuzz"},face:{kind:"mouth",bone:"body",on:["fuzz"],at:[0,-0.08,.35],width:.05,color:"#3a2412",tongue:"#ff7d6e"},anchors:{top:{bone:"body",at:[.12,.5,.05]},mouth:{bone:"body",at:[0,-0.08,.37]},ear:{bone:"body",at:[-0.36,.05,0]},center:{bone:"body",at:[0,0,0]}},acting:{thinking:{feelerL:{rz:.6},feelerR:{rz:-0.1}},listening:{feelerL:{rx:-0.4},feelerR:{rx:-0.4}},sleeping:{wingL:{rz:.9},wingR:{rz:-0.9},feelerL:{rx:.6},feelerR:{rx:.6}},error:{feelerL:{rz:[.4,.3,9,0]},feelerR:{rz:[-0.4,.3,9,1]}},surprised:{feelerL:{rz:.1,rx:-0.3},feelerR:{rz:-0.1,rx:-0.3}},sad:{feelerL:{rx:.9},feelerR:{rx:.9}}},fx:{happy:[{glyph:"sparkle",anchor:"top",rate:2,velocity:[0,.2,.05],jitter:.15,life:[.8,1.1],size:[.04,.02],color:"#ffd84d",glow:true}]}};({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as bumble};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A tiny potted cactus with a pink flower on its head. */
4
+ declare const cacti: CharacterSpec;
5
+
6
+ export { cacti };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});var t={id:"cacti",name:"Cacti",tagline:"A tiny potted cactus with a pink flower that bounces on its head",accent:"#3fae6a",frame:{target:.52,radius:.69},bound:{y:.52,radius:.61},motion:{hop:.08,squash:.9,snap:1,talkSquash:.5},materials:{cactus:{color:"#4cb873",f0:.04,spec:.8,shininess:60,rim:.8,sss:.2,sssColor:"#a8f0b0",gloss:.4,surface:{kind:"speckle",scale:30,strength:.4,color:"#2f8a52",bone:"body"}},pot:{color:"#d9774a",f0:.03,spec:.4,shininess:25,rim:.4},rim:{color:"#e88a5c",shadeOf:"pot",f0:.03,spec:.4,shininess:25,rim:.4},soil:{color:"#5b3a28",f0:.02,spec:.1,shininess:8,rim:.2},petal:{color:"#ff7eb6",f0:.04,spec:.6,shininess:40,rim:.7,sss:.4,sssColor:"#ffc1dc",sheen:.4},pollen:{color:"#ffd84d",f0:.04,spec:.5,shininess:30,rim:.4},bead:{color:"#141a14",f0:.06,spec:2.2,shininess:400,rim:.2,gloss:1}},bones:[{name:"body",pivot:[0,.32,0],drive:{rx:[["pitch",-0.3]],ry:[["yaw",.5]],rz:[["roll",.5]]},wave:{rz:[.025,.5,0]}},{name:"armL",parent:"body",pivot:[-0.2,.25,0],rest:{rz:.3},drive:{rz:[["flap",-0.8]]}},{name:"armR",parent:"body",pivot:[.2,.18,0],rest:{rz:-0.2},drive:{rz:[["flap",.8]]}},{name:"flower",parent:"body",pivot:[.04,.56,0],jiggle:{axis:[0,1,0],length:.1,freq:3,damping:.14}}],parts:[{bone:"root",shape:"roundCone",from:[0,.03,0],to:[0,.27,0],r1:.2,r2:.25,clip:{normal:[0,-1,0]},material:"pot"},{bone:"root",shape:"cylinder",at:[0,.3,0],radius:.28,half:.05,round:.03,material:"rim"},{bone:"root",shape:"cylinder",at:[0,.33,0],radius:.24,half:.025,round:.01,material:"soil"},{bone:"body",shape:"capsule",from:[0,.05,0],to:[0,.38,0],radius:.2,material:"cactus"},{bone:"armL",shape:"capsule",from:[0,0,0],to:[-0.1,0,0],radius:.065,blend:.04,material:"cactus"},{bone:"armL",shape:"capsule",from:[-0.1,0,0],to:[-0.11,.12,0],radius:.06,blend:.03,material:"cactus"},{bone:"armR",shape:"capsule",from:[0,0,0],to:[.1,0,0],radius:.06,blend:.04,material:"cactus"},{bone:"armR",shape:"capsule",from:[.1,0,0],to:[.11,.1,0],radius:.055,blend:.03,material:"cactus"},...[0,1,2,3,4].map(e=>{let a=e/5*Math.PI*2;return {bone:"flower",shape:"ellipsoid",at:[Math.cos(a)*.055,.03,Math.sin(a)*.055],rot:[0,-a,.4],radii:[.055,.02,.035],blend:.01,material:"petal"}}),{bone:"flower",shape:"sphere",at:[0,.045,0],radius:.03,material:"pollen"}],paints:[{bone:"body",on:["cactus"],kind:"sphere",at:[-0.13,.2,.16],radius:.045,color:"#ff8fb4",soft:.6,opacity:.7},{bone:"body",on:["cactus"],kind:"sphere",at:[.13,.2,.16],radius:.045,color:"#ff8fb4",soft:.6,opacity:.7}],eyes:{kind:"bead",bone:"body",at:[[-0.08,.27,.185],[.08,.27,.185]],radii:[.03,.045,.02],material:"bead"},face:{kind:"mouth",bone:"body",on:["cactus"],at:[0,.19,.2],width:.045,color:"#173a24",tongue:"#ff7d97"},anchors:{top:{bone:"flower",at:[0,.1,0]},mouth:{bone:"body",at:[0,.19,.22]},ear:{bone:"body",at:[-0.22,.3,0]},feet:{bone:"root",at:[0,.02,.15]}},acting:{idle:{armL:{rz:[0,.08,.6,0]}},thinking:{armR:{rz:.9,rx:-0.5},flower:{rz:.2}},listening:{armL:{rz:-0.4},flower:{rz:-0.15}},speaking:{armL:{rz:[-0.2,.25,1.4,0]},armR:{rz:[.2,.25,1.4,1.5]}},sleeping:{flower:{rz:.6,rx:.4},body:{rz:.08}},working:{armL:{rz:[-0.4,.2,5,0]},armR:{rz:[.4,.2,5,Math.PI]}},error:{armL:{rz:-1},armR:{rz:1},flower:{rz:[0,.3,10,0]}},surprised:{armL:{rz:-0.9},armR:{rz:.9}},celebrating:{armL:{rz:[-0.9,.3,4,0]},armR:{rz:[.9,.3,4,Math.PI]},flower:{ry:[0,0,0,0,10]}},sad:{flower:{rx:.9,rz:.4},armL:{rz:.4},armR:{rz:-0.3}},happy:{flower:{ry:[0,0,0,0,12]}}},fx:{happy:[{glyph:"heart",anchor:"top",rate:1.2,velocity:[0,.22,.04],jitter:.1,life:[1,1.3],size:[.04,.06],color:"#ff7eb6"}]}};({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as cacti};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A red mushroom with white spots. */
4
+ declare const cap: CharacterSpec;
5
+
6
+ export { cap };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});var t={id:"cap",name:"Cap",tagline:"A little toadstool with a glossy red cap that wobbles when it walks",accent:"#e0393e",frame:{target:.4,radius:.59},bound:{y:.39,radius:.5},motion:{hop:.12,squash:1.2,snap:1,talkSquash:.5},materials:{cap:{color:"#e53935",f0:.06,spec:1.5,shininess:120,rim:.6,gloss:.75,sss:.15,sssColor:"#ff8a80"},gills:{color:"#efe2cf",f0:.02,spec:.2,shininess:10,rim:.3},stem:{color:"#fbf3e4",f0:.03,spec:.5,shininess:30,rim:.6,sss:.3,sssColor:"#fff8ec"},bead:{color:"#1a1414",f0:.06,spec:2.2,shininess:400,rim:.2,gloss:1}},bones:[{name:"body",pivot:[0,0,0],drive:{rx:[["pitch",-0.3]],ry:[["yaw",.5]],rz:[["roll",.4]]}},{name:"cap",parent:"body",pivot:[0,.42,0],drive:{rx:[["pitch",-0.4]],rz:[["roll",.5]]},jiggle:{axis:[0,1,0],length:.2,freq:2.6,damping:.18,maxAngle:.3}}],parts:[{bone:"body",shape:"roundCone",from:[0,.12,0],to:[0,.4,0],r1:.2,r2:.16,clip:{normal:[0,-1,0]},material:"stem"},{bone:"cap",shape:"ellipsoid",at:[0,.06,0],radii:[.42,.28,.42],clip:{normal:[0,-1,0],offset:.02},material:"cap"},{bone:"cap",shape:"ellipsoid",at:[0,.05,0],radii:[.4,.04,.4],blend:.03,material:"gills"}],paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}],eyes:{kind:"bead",bone:"body",at:[[-0.07,.29,.165],[.07,.29,.165]],radii:[.028,.042,.018],material:"bead"},face:{kind:"mouth",bone:"body",on:["stem"],at:[0,.21,.19],width:.04,color:"#4a2a22",tongue:"#ff7d97"},anchors:{top:{bone:"cap",at:[.1,.38,0]},mouth:{bone:"body",at:[0,.21,.21]},ear:{bone:"body",at:[-0.2,.3,0]},feet:{bone:"root",at:[0,.02,.15]}},acting:{thinking:{cap:{rz:.15}},sleeping:{cap:{rx:.2,rz:.15}},error:{cap:{rz:[0,.12,9,0]}},surprised:{cap:{rx:-0.15}},sad:{cap:{rx:.3}},celebrating:{cap:{rz:[0,.15,4,0]}}},fx:{land:[{glyph:"mote",anchor:"top",rate:6,spread:.2,velocity:[0,.2,0],jitter:.2,wobble:.08,life:[1,1.5],size:[.025,.01],color:"#ffe8a3",glow:true}]}};var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as cap};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A sleepy cloud in brand blue, wearing big headphones. */
4
+ declare const drift: CharacterSpec;
5
+
6
+ export { drift };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var t={id:"drift",name:"Drift",tagline:"A sleepy blue cloud that floats along to the music in its headphones",accent:"#4f7cff",frame:{target:.63,radius:.84},bound:{y:.6,radius:.69},motion:{float:.18,hop:.1,squash:1.3,snap:.75,talkSquash:.8},materials:{cloud:{color:"#9db8ff",f0:.03,spec:.35,shininess:20,rim:1.1,sss:.55,sssColor:"#dbe6ff",sheen:.3},band:{color:"#20253a",f0:.06,spec:1.4,shininess:120,rim:.4,gloss:.7},cup:{color:"#4f7cff",f0:.08,spec:1.6,shininess:160,rim:.5,gloss:.8},cushion:{color:"#2a2f45",f0:.03,spec:.3,shininess:20,rim:.3,sheen:.6}},bones:[{name:"body",pivot:[0,0,0],drive:{rx:[["pitch",-0.4]],ry:[["yaw",.6]],rz:[["roll",.7]]},wave:{rz:[.04,.35,0]}},{name:"phones",parent:"body",pivot:[0,.55,0],wave:{rz:[.03,1.1,0]}}],parts:[{bone:"body",shape:"sphere",at:[0,.52,0],radius:.32,material:"cloud"},{bone:"body",shape:"sphere",at:[-0.3,.42,0],radius:.22,blend:.12,material:"cloud"},{bone:"body",shape:"sphere",at:[.31,.43,0],radius:.23,blend:.12,material:"cloud"},{bone:"body",shape:"sphere",at:[-0.14,.72,-0.03],radius:.2,blend:.12,material:"cloud"},{bone:"body",shape:"sphere",at:[.16,.74,-0.04],radius:.22,blend:.12,material:"cloud"},{bone:"body",shape:"ellipsoid",at:[0,.34,0],radii:[.5,.12,.3],blend:.1,material:"cloud"},{bone:"phones",shape:"capsule",from:[-0.47,0,0],to:[-0.4,.26,0],radius:.028,material:"band"},{bone:"phones",shape:"capsule",from:[-0.4,.26,0],to:[-0.18,.42,0],radius:.028,blend:.02,material:"band"},{bone:"phones",shape:"capsule",from:[-0.18,.42,0],to:[.18,.42,0],radius:.028,blend:.02,material:"band"},{bone:"phones",shape:"capsule",from:[.18,.42,0],to:[.4,.26,0],radius:.028,blend:.02,material:"band"},{bone:"phones",shape:"capsule",from:[.4,.26,0],to:[.47,0,0],radius:.028,material:"band"},{bone:"phones",shape:"cylinder",at:[-0.5,-0.04,0],rot:[0,0,Math.PI/2],radius:.12,half:.05,round:.025,material:"cup"},{bone:"phones",shape:"cylinder",at:[.5,-0.04,0],rot:[0,0,Math.PI/2],radius:.12,half:.05,round:.025,material:"cup"},{bone:"phones",shape:"cylinder",at:[-0.44,-0.04,0],rot:[0,0,Math.PI/2],radius:.1,half:.025,round:.02,material:"cushion"},{bone:"phones",shape:"cylinder",at:[.44,-0.04,0],rot:[0,0,Math.PI/2],radius:.1,half:.025,round:.02,material:"cushion"}],paints:[{bone:"body",on:["cloud"],kind:"sphere",at:[-0.2,.46,.27],radius:.06,color:"#ff9ec4",soft:.6,opacity:.75},{bone:"body",on:["cloud"],kind:"sphere",at:[.2,.46,.27],radius:.06,color:"#ff9ec4",soft:.6,opacity:.75}],eyes:{kind:"ball",bone:"body",at:[[-0.11,.56,.27],[.11,.56,.27]],radius:.05,iris:"#1d2550",irisSize:.8,pupilSize:.5,lid:"cloud"},face:{kind:"mouth",bone:"body",on:["cloud"],at:[0,.45,.31],width:.06,color:"#24305e",tongue:"#ff8fae"},anchors:{top:{bone:"body",at:[.18,.98,.05]},mouth:{bone:"body",at:[0,.45,.33]},ear:{bone:"phones",at:[-0.56,-0.04,0]},center:{bone:"body",at:[0,.5,0]}},acting:{idle:{phones:{rz:[0,.04,1.6,0]}},thinking:{phones:{rz:.12},body:{rz:.06}},listening:{phones:{rz:-0.12}},speaking:{phones:{rz:[0,.05,2.2,0]}},sleeping:{phones:{rz:.18},body:{rz:.1}},working:{phones:{rz:[0,.06,3.2,0]}},celebrating:{phones:{rz:[0,.12,3,0]}},sad:{phones:{rz:-0.1},body:{rx:.1}}},fx:{idle:[{glyph:"note",anchor:"ear",rate:.6,velocity:[-0.12,.25,.04],jitter:.08,wobble:.05,life:[1.4,1.8],size:[.05,.03],color:"#4f7cff"}],sleeping:[{glyph:"cloud",anchor:"top",rate:.5,velocity:[.05,.12,0],jitter:.04,life:[2,2.5],size:[.04,.08],color:"#dbe6ff"}]}};var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as drift};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A fox cub with a big fluffy tail. */
4
+ declare const ember: CharacterSpec;
5
+
6
+ export { ember };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var t={id:"ember",name:"Ember",tagline:"A fox cub with pointed ears and a big fluffy tail that never stops swishing",accent:"#f07a2a",frame:{target:.48,radius:.72},bound:{y:.38,radius:.85},motion:{hop:.14,squash:1,snap:1.1,talkSquash:.4},materials:{fur:{color:"#f07a2a",f0:.03,spec:.4,shininess:20,rim:1,sheen:.7,surface:{kind:"fur",scale:90,strength:.4,bone:"head"}},bodyFur:{color:"#f07a2a",shadeOf:"fur",f0:.03,spec:.4,shininess:20,rim:1,sheen:.7,surface:{kind:"fur",scale:90,strength:.4}},tailFur:{color:"#f07a2a",shadeOf:"fur",f0:.03,spec:.4,shininess:20,rim:1,sheen:.8,surface:{kind:"fur",scale:70,strength:.5,bone:"tail"}},dark:{color:"#3a2318",f0:.03,spec:.4,shininess:20,rim:.6,sheen:.5},nose:{color:"#1d1410",f0:.06,spec:1.8,shininess:200,rim:.3,gloss:.9}},bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.2]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.48,.02],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"earL",parent:"head",pivot:[-0.14,.28,0],rest:{rz:.3},jiggle:{axis:[0,1,0],length:.16,freq:3.5,damping:.2,maxAngle:.4}},{name:"earR",parent:"head",pivot:[.14,.28,0],rest:{rz:-0.3},jiggle:{axis:[0,1,0],length:.16,freq:3.5,damping:.2,maxAngle:.4}},{name:"tail",parent:"body",pivot:[.15,.12,-0.15],rest:{rz:-0.9,rx:-0.4},wave:{ry:[.35,.8,0]},jiggle:{axis:[0,1,0],length:.35,freq:1.8,damping:.18,maxAngle:.6}}],parts:[{bone:"body",shape:"ellipsoid",at:[0,.25,0],radii:[.22,.25,.2],material:"bodyFur"},{bone:"body",shape:"capsule",from:[-0.1,.12,.08],to:[-0.1,.04,.12],radius:.06,blend:.05,material:"dark"},{bone:"body",shape:"capsule",from:[.1,.12,.08],to:[.1,.04,.12],radius:.06,blend:.05,material:"dark"},{bone:"head",shape:"ellipsoid",at:[0,.12,0],radii:[.27,.22,.23],blend:.1,material:"fur"},{bone:"head",shape:"roundCone",from:[0,.07,.1],to:[0,.05,.3],r1:.12,r2:.04,blend:.08,material:"fur"},{bone:"head",shape:"sphere",at:[0,.06,.33],radius:.035,material:"nose"},{bone:"head",shape:"ellipsoid",at:[-0.22,.02,.06],radii:[.09,.07,.08],blend:.06,material:"fur"},{bone:"head",shape:"ellipsoid",at:[.22,.02,.06],radii:[.09,.07,.08],blend:.06,material:"fur"},{bone:"earL",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.08,r2:.015,material:"fur"},{bone:"earR",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.08,r2:.015,material:"fur"},{bone:"tail",shape:"roundCone",from:[0,0,0],to:[0,.3,0],r1:.06,r2:.13,material:"tailFur"},{bone:"tail",shape:"sphere",at:[0,.36,0],radius:.11,blend:.08,material:"tailFur"}],paints:[{bone:"body",on:["bodyFur"],kind:"ellipse",at:[0,.26,.1],radii:[.13,.17],color:"#fff3e6",soft:.25},{bone:"head",on:["fur"],kind:"sphere",at:[0,0,.25],radius:.13,color:"#fff3e6",soft:.25},{bone:"head",on:["fur"],kind:"sphere",at:[-0.2,-0.02,.12],radius:.1,color:"#fff3e6",soft:.3},{bone:"head",on:["fur"],kind:"sphere",at:[.2,-0.02,.12],radius:.1,color:"#fff3e6",soft:.3},{bone:"earL",on:["fur"],kind:"sphere",at:[0,.2,0],radius:.07,color:"#3a2318",soft:.3},{bone:"earR",on:["fur"],kind:"sphere",at:[0,.2,0],radius:.07,color:"#3a2318",soft:.3},{bone:"earL",on:["fur"],kind:"ellipse",at:[0,.07,.05],radii:[.035,.07],color:"#ffd9c2",soft:.4},{bone:"earR",on:["fur"],kind:"ellipse",at:[0,.07,.05],radii:[.035,.07],color:"#ffd9c2",soft:.4},{bone:"tail",on:["tailFur"],kind:"sphere",at:[0,.46,0],radius:.13,color:"#fff3e6",soft:.2}],eyes:{kind:"ball",bone:"head",at:[[-0.1,.15,.19],[.1,.15,.19]],radius:.055,iris:"#2b1a10",irisSize:.82,pupilSize:.52,lid:"fur"},face:{kind:"mouth",bone:"head",on:["fur"],at:[0,0,.277],width:.045,color:"#3a2318",tongue:"#ff7d8a"},anchors:{top:{bone:"head",at:[.12,.45,.05]},mouth:{bone:"head",at:[0,0,.33]},ear:{bone:"earL",at:[0,.1,0]},feet:{bone:"root",at:[0,.02,.12]}},acting:{idle:{tail:{ry:[0,.2,.7,0]}},thinking:{earL:{rz:.6},head:{rz:.12}},listening:{earL:{rx:-0.3},earR:{rx:-0.3}},speaking:{tail:{ry:[0,.3,1.5,0]}},sleeping:{earL:{rz:.8},earR:{rz:-0.8},tail:{rz:-1.4}},working:{tail:{ry:[0,.4,3,0]}},error:{earL:{rz:1.1},earR:{rz:-1.1}},surprised:{earL:{rz:.05},earR:{rz:-0.05},tail:{rx:-0.8}},celebrating:{tail:{ry:[0,.6,5,0]}},sad:{earL:{rz:1,rx:.4},earR:{rz:-1,rx:.4},tail:{rz:-1.1}},happy:{tail:{ry:[0,.6,6,0]}}}};var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as ember};
@@ -0,0 +1,6 @@
1
+ import { C as CharacterSpec } from '../types-PAZ6PnKv.js';
2
+
3
+ /** A white bunny with long floppy ears. */
4
+ declare const hop: CharacterSpec;
5
+
6
+ export { hop };
@@ -0,0 +1 @@
1
+ ({paints:[...[[0,.2,.192],[.133,.21,-0.145],[-0.202,.22,.018],[.165,.229,.126],[-0.037,.239,-0.209],[-0.117,.249,.184],[.215,.259,-0.058],[-0.202,.268,-0.105],[.08,.278,.219],[.091,.288,-0.22],[-0.221,.298,.103],[.238,.308,.075],[-0.128,.317,-0.22],[-0.056,.327,.254],[.218,.337,-0.154],[-0.272,.347,-0.035],[.012,.366,-0.281],[-0.203,.376,.204],[.294,.386,-0.014],[-0.227,.396,-0.19],[.172,.415,-0.248],[-0.301,.425,.068],[.269,.435,.154],[-0.093,.444,-0.293],[.292,.464,-0.122],[-0.299,.474,-0.108],[.079,.493,-0.301],[-0.266,.503,.171],[.314,.513,.054],[-0.191,.523,-0.247],[.227,.542,-0.21],[-0.312,.552,.001],[.225,.562,.205],[-0.027,.572,-0.296],[.291,.591,-0.053],[-0.245,.601,-0.154],[.074,.611,.27],[.126,.62,-0.245],[-0.256,.63,.095],[.246,.64,.1]].map(([e,a,r])=>({bone:"body",on:["berry"],kind:"sphere",at:[e,a,r],radius:.022,color:"#ffd166",soft:.2})),{bone:"body",on:["berry"],kind:"sphere",at:[-0.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6},{bone:"body",on:["berry"],kind:"sphere",at:[.16,.42,.25],radius:.05,color:"#ff9ab0",soft:.6,opacity:.6}]});({paints:[...[[0,.33,.05,.08],[-0.22,.24,.2,.07],[.24,.22,.2,.065],[-0.08,.2,.33,.055],[.12,.3,-0.18,.07],[-0.341,.196,-0.136,.06],[.38,.173,-0.058,.05]].map(([e,a,r,o])=>({bone:"cap",on:["cap"],kind:"sphere",at:[e,a,r],radius:o,color:"#fff8ee",soft:.12})),{bone:"body",on:["stem"],kind:"sphere",at:[-0.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8},{bone:"body",on:["stem"],kind:"sphere",at:[.13,.22,.14],radius:.045,color:"#ff9eb0",soft:.6,opacity:.8}]});var t={id:"hop",name:"Hop",tagline:"A soft white bunny whose long floppy ears swing with every hop",accent:"#ff8fb1",frame:{target:.57,radius:.76},bound:{y:.56,radius:.66},motion:{hop:.22,squash:1.3,snap:1.15,talkSquash:.4},materials:{fur:{color:"#fbf8f4",f0:.03,spec:.4,shininess:20,rim:1,sheen:.7,surface:{kind:"fur",scale:110,strength:.3,bone:"head"}},bodyFur:{color:"#fbf8f4",shadeOf:"fur",f0:.03,spec:.4,shininess:20,rim:1,sheen:.7,surface:{kind:"fur",scale:110,strength:.3}},earFur:{color:"#fbf8f4",shadeOf:"fur",f0:.03,spec:.4,shininess:20,rim:1.2,sheen:.7,sss:.35,sssColor:"#ffc4d4"},nose:{color:"#ff7fa5",f0:.06,spec:1.6,shininess:160,rim:.3,gloss:.8}},bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.2]],rz:[["roll",.35]]}},{name:"head",parent:"body",pivot:[0,.42,.02],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"earL",parent:"head",pivot:[-0.1,.3,-0.02],rest:{rz:.35,rx:.2},jiggle:{axis:[0,1,0],length:.32,freq:2,damping:.14,maxAngle:.8}},{name:"earR",parent:"head",pivot:[.1,.3,-0.02],rest:{rz:-1.2,rx:.2},jiggle:{axis:[0,1,0],length:.32,freq:2,damping:.14,maxAngle:.8}},{name:"tail",parent:"body",pivot:[0,.14,-0.2],jiggle:{axis:[0,0,-1],length:.06,freq:4,damping:.2}}],parts:[{bone:"body",shape:"ellipsoid",at:[0,.22,0],radii:[.22,.22,.21],material:"bodyFur"},{bone:"body",shape:"ellipsoid",at:[-0.12,.05,.1],radii:[.08,.05,.13],blend:.04,material:"bodyFur"},{bone:"body",shape:"ellipsoid",at:[.12,.05,.1],radii:[.08,.05,.13],blend:.04,material:"bodyFur"},{bone:"tail",shape:"sphere",at:[0,0,-0.03],radius:.07,blend:.03,material:"bodyFur"},{bone:"head",shape:"ellipsoid",at:[0,.14,0],radii:[.25,.22,.22],blend:.1,material:"fur"},{bone:"head",shape:"ellipsoid",at:[-0.06,.06,.17],radii:[.07,.055,.06],blend:.04,material:"fur"},{bone:"head",shape:"ellipsoid",at:[.06,.06,.17],radii:[.07,.055,.06],blend:.04,material:"fur"},{bone:"head",shape:"ellipsoid",at:[0,.1,.22],radii:[.028,.02,.018],material:"nose"},{bone:"earL",shape:"ellipsoid",at:[0,.2,0],radii:[.065,.22,.03],material:"earFur"},{bone:"earR",shape:"ellipsoid",at:[0,.2,0],radii:[.065,.22,.03],material:"earFur"}],paints:[{bone:"earL",on:["earFur"],kind:"ellipse",at:[0,.2,.03],radii:[.035,.16],color:"#ffc2d3",soft:.4},{bone:"earR",on:["earFur"],kind:"ellipse",at:[0,.2,.03],radii:[.035,.16],color:"#ffc2d3",soft:.4},{bone:"head",on:["fur"],kind:"sphere",at:[-0.16,.07,.16],radius:.045,color:"#ffb3c8",soft:.6,opacity:.8},{bone:"head",on:["fur"],kind:"sphere",at:[.16,.07,.16],radius:.045,color:"#ffb3c8",soft:.6,opacity:.8}],eyes:{kind:"ball",bone:"head",at:[[-0.1,.17,.17],[.1,.17,.17]],radius:.05,iris:"#3b1f2b",irisSize:.85,pupilSize:.55,lid:"fur"},face:{kind:"mouth",bone:"head",on:["fur"],at:[0,.035,.21],width:.035,color:"#5a2a3a",tongue:"#ff8fa3"},anchors:{top:{bone:"head",at:[.15,.5,.05]},mouth:{bone:"head",at:[0,.035,.24]},ear:{bone:"earL",at:[0,.2,0]},feet:{bone:"root",at:[0,.02,.15]}},acting:{thinking:{earR:{rz:-0.4},head:{rz:.1}},listening:{earL:{rz:0,rx:-0.2},earR:{rz:0,rx:-0.2}},sleeping:{earL:{rz:1.2,rx:.5},earR:{rz:-1.4,rx:.5}},error:{earL:{rz:[.6,.2,9,0]},earR:{rz:[-0.6,.2,9,1]}},surprised:{earL:{rz:.05,rx:-0.1},earR:{rz:-0.05,rx:-0.1}},celebrating:{earL:{rz:[.2,.3,4,0]},earR:{rz:[-0.2,.3,4,Math.PI]}},sad:{earL:{rz:1.4,rx:.6},earR:{rz:-1.4,rx:.6}}},fx:{happy:[{glyph:"heart",anchor:"top",rate:1.2,velocity:[0,.22,.04],jitter:.1,life:[1,1.3],size:[.04,.06],color:"#ff8fb1"}]}};var m=[-0.6,-0.42,-0.62];function I(){let e={idle:{},thinking:{},listening:{},speaking:{},sleeping:{},working:{},error:{},surprised:{},celebrating:{},sad:{},happy:{}};for(let a=0;a<6;a++){let r=a*1.05;e.speaking[`t${a}s0`]={rx:[0,.2,1.1,r]},e.speaking[`t${a}s2`]={rx:[0,.35,1.6,r+1]},e.sleeping[`t${a}s0`]={rx:.3},e.sleeping[`t${a}s1`]={rx:.35},e.sleeping[`t${a}s2`]={rx:.55},e.happy[`t${a}s0`]={rx:[-0.45,.35,2.4,r]},e.happy[`t${a}s1`]={rx:[0,.3,2.4,r+1]},e.error[`t${a}s0`]={rx:-0.35},e.error[`t${a}s1`]={rx:[.35,.18,9,r]},e.error[`t${a}s2`]={rx:[.2,.22,11,r+2]},e.surprised[`t${a}s0`]={rx:-0.85},e.surprised[`t${a}s1`]={rx:-0.25},e.surprised[`t${a}s2`]={rx:-0.3},e.celebrating[`t${a}s0`]={rx:[-0.5,.3,3,r]},e.celebrating[`t${a}s1`]={rx:[.15,.3,3,r+1]},e.celebrating[`t${a}s2`]={rx:[.2,.3,3,r+2]},e.sad[`t${a}s0`]={rx:.45},e.sad[`t${a}s1`]={rx:.42},e.sad[`t${a}s2`]={rx:[.55,.06,.4,r]},e.working[`t${a}s0`]={rx:[-0.15,.08,1.2,r]};}return e.working.t0s0={rx:[-1.25,.22,5.5,0]},e.working.t0s1={rx:[.7,.2,5.5,.6]},e.working.t5s0={rx:[-1.25,.22,5.5,Math.PI]},e.working.t5s1={rx:[.7,.2,5.5,Math.PI+.6]},e.celebrating.t0s0={rx:-0.3,rz:[1.05,.25,3.2,0]},e.celebrating.t0s1={rx:[.5,.15,3.2,1]},e.celebrating.t0s2={rx:[.6,.2,3.2,2]},e.celebrating.t5s0={rx:-0.3,rz:[-1.05,.25,3.2,Math.PI]},e.celebrating.t5s1={rx:[.5,.15,3.2,Math.PI+1]},e.celebrating.t5s2={rx:[.6,.2,3.2,Math.PI+2]},e.thinking.t0s0={rx:-1.75},e.thinking.t0s1={rx:.95},e.thinking.t0s2={rx:[1,.12,1.6,0]},e.listening.t5s0={rx:-1.6},e.listening.t5s1={rx:-0.2},e.listening.t5s2={rx:.7},e}var u=[{name:"mantle",pivot:[0,.42,0],drive:{rx:[["pitch",-0.6]],ry:[["yaw",.6]],rz:[["roll",.6]]}}];for(let e=0;e<6;e++){let a=(e+.5)/6*Math.PI*2;for(let r=0;r<3;r++){let o=`t${e}s${r}`;u.push({name:o,parent:r===0?"mantle":`t${e}s${r-1}`,pivot:r===0?[.26*Math.sin(a),.02,.26*Math.cos(a)]:[0,-0.17,0],rest:r===0?{rx:m[0],ry:a}:{rx:m[r]},wave:{rx:[.12+r*.1,.32,e*1.3+r*.8],rz:[.06+r*.05,.21,e*2.1+r]},jiggle:{axis:[0,-1,0],length:.17,freq:2.4-r*.4,damping:.25,maxAngle:.8}});}}({paints:[...[[.14,.78,.12,.07],[-0.2,.72,.16,.055],[.33,.6,.12,.05],[-0.04,.83,-0.05,.06],[-0.36,.52,.1,.05],[.06,.62,.33,.045],[.338,.425,-0.291,.045]].map(([e,a,r,o])=>({bone:"mantle",on:["skin"],kind:"sphere",at:[e,a,r],radius:o,color:"#d23f6c",soft:.2})),{bone:"mantle",on:["skin"],kind:"sphere",at:[-0.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7},{bone:"mantle",on:["skin"],kind:"sphere",at:[.27,.18,.31],radius:.065,color:"#ff9db0",soft:.6,opacity:.7}],acting:I()});var i=Math.PI/2;({parts:[{bone:"head",shape:"roundBox",at:[0,.245,.05],half:[.2,.17,.3],round:.16,clip:{normal:[0,-1,0],offset:.145},material:"shell"},{bone:"head",shape:"roundBox",at:[0,.085,.1],half:[.208,.022,.32],round:.016,material:"bill"},{bone:"head",shape:"roundBox",at:[0,.045,-0.06],half:[.17,.035,.12],round:.02,material:"mouth"},{bone:"jaw",shape:"roundBox",at:[0,-0.017,.27],half:[.192,.018,.285],round:.014,material:"bill"},{bone:"head",shape:"cylinder",at:[-0.205,.225,.15],rot:[i,-1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"cylinder",at:[.205,.225,.15],rot:[i,1.05,0],radius:.08,half:.026,round:.016,material:"ring"},{bone:"head",shape:"sphere",at:[-0.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"sphere",at:[.2,.31,.25],radius:.016,material:"servo"},{bone:"head",shape:"roundBox",at:[0,.01,0],half:[.07,.035,.07],round:.016,material:"servo"},{bone:"neck0",shape:"roundBox",at:[0,.045,0],half:[.048,.047,.042],round:.016,material:"servo"},{bone:"neck0",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.026,half:.057,round:.01,material:"horn"},{bone:"neck1",shape:"roundBox",at:[0,.045,0],half:[.045,.047,.04],round:.016,material:"servo"},{bone:"neck1",shape:"cylinder",at:[0,.02,0],rot:[0,0,i],radius:.024,half:.053,round:.01,material:"horn"},{bone:"body",shape:"roundBox",at:[0,.1,-0.01],half:[.19,.1,.15],round:.085,material:"bodyShell"},{bone:"body",shape:"capsule",from:[-0.03,.12,.14],to:[.03,.12,.14],radius:.014,material:"led"},{bone:"hips",shape:"roundBox",at:[0,.37,0],half:[.15,.04,.09],round:.02,material:"servo"},{bone:"hips",shape:"cylinder",at:[-0.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},{bone:"hips",shape:"cylinder",at:[.16,.36,0],rot:[0,0,i],radius:.045,half:.026,round:.012,material:"horn"},...[["legL","shinL",-1],["legR","shinR",1]].flatMap(([e,a,r])=>[{bone:e,shape:"roundBox",at:[0,-0.075,0],half:[.038,.07,.042],round:.015,material:"servo"},{bone:e,shape:"cylinder",at:[0,-0.15,0],rot:[0,0,i],radius:.036,half:.05,round:.012,material:"horn"},{bone:e,shape:"plate",at:[r*.056,-0.1,-5e-3],rot:[r*i,r*Math.PI/4,i],half:[.058,.058],corner:.034,depth:.012,material:"bodyShell"},{bone:a,shape:"roundBox",at:[0,-0.06,0],half:[.034,.055,.038],round:.014,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.135,.005],half:[.048,.036,.052],round:.016,material:"servo"},{bone:a,shape:"roundBox",at:[0,-0.17,.045],half:[.074,.04,.108],round:.038,material:"boot"},{bone:a,shape:"roundBox",at:[0,-0.196,.045],half:[.079,.014,.113],round:.012,material:"sole"}])],paints:[...[-1,1].flatMap(e=>[{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.13],radius:.013,color:"#c8261a",soft:.2},{bone:"head",on:["bill"],kind:"sphere",at:[e*.208,.085,-0.18],radius:.013,color:"#c8261a",soft:.2}]),...["shinL","shinR"].flatMap(e=>[[-0.03,.1],[.03,.1],[0,.13],[-0.03,.06],[.03,.06]].map(([a,r])=>({bone:e,on:["boot"],kind:"sphere",at:[a,-0.13,r],radius:.011,color:"#c23a14",soft:.25}))),...[-1,1].map(e=>({bone:"body",on:["bodyShell"],kind:"sphere",at:[e*.142,.04,.117],radius:.009,color:"#8d9198",soft:.2}))]});var R=[{parent:"head",at:[0,.43,.05],tilt:-0.1,size:.075},{parent:"head",at:[0,.41,-0.1],tilt:-0.5,size:.09},{parent:"head",at:[0,.3,-0.24],tilt:-1,size:.085},{parent:"body",at:[0,.5,-0.24],tilt:-1.2,size:.08},{parent:"body",at:[0,.34,-0.3],tilt:-1.45,size:.07},{parent:"tail0",at:[0,.12,.07],tilt:0,size:.06},{parent:"tail1",at:[0,.1,.05],tilt:0,size:.045}];({bones:[{name:"body",pivot:[0,0,0],drive:{ry:[["yaw",.25]],rz:[["roll",.3]]}},{name:"head",parent:"body",pivot:[0,.56,.06],drive:{rx:[["pitch",-1]],ry:[["yaw",.8]],rz:[["roll",.7]]}},{name:"armL",parent:"body",pivot:[-0.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",-0.5]]}},{name:"armR",parent:"body",pivot:[.15,.42,.25],rest:{rx:-0.6},drive:{rx:[["flap",-0.9]],rz:[["flap",.5]]}},{name:"tail0",parent:"body",pivot:[.08,.17,-0.24],rest:{rx:-1.25,rz:-0.6},wave:{rz:[.2,.5,0]},jiggle:{axis:[0,1,0],length:.18,freq:2.2,damping:.25,maxAngle:.6}},{name:"tail1",parent:"tail0",pivot:[0,.18,0],rest:{rx:.2},wave:{rz:[.2,.5,.8]},jiggle:{axis:[0,1,0],length:.15,freq:2,damping:.22,maxAngle:.7}},{name:"tail2",parent:"tail1",pivot:[0,.15,0],rest:{rx:.15},wave:{rz:[.25,.5,1.6]},jiggle:{axis:[0,1,0],length:.12,freq:1.8,damping:.2,maxAngle:.8}},...R.map(({parent:e,at:a,tilt:r},o)=>({name:`spike${o}`,parent:e,pivot:a,rest:{rx:r},jiggle:{axis:[0,1,0],length:.08,freq:4+o*.3,damping:.12,maxAngle:.45}}))],parts:[{bone:"body",shape:"ellipsoid",at:[0,.3,-0.02],radii:[.3,.3,.28],material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[-0.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},{bone:"body",shape:"ellipsoid",at:[.19,.15,-0.02],radii:[.13,.15,.17],blend:.08,material:"bodyHide"},...[-1,1].flatMap(e=>[{bone:"body",shape:"ellipsoid",at:[e*.2,.045,.1],radii:[.1,.05,.13],blend:.05,material:"bodyHide"},...[-1,0,1].map(a=>({bone:"body",shape:"ellipsoid",at:[e*.2+a*.05,.03,.225-Math.abs(a)*.015],radii:[.022,.022,.026],blend:.012,material:"claw"}))]),{bone:"head",shape:"ellipsoid",at:[0,.2,-0.02],radii:[.29,.25,.27],blend:.12,material:"hide"},{bone:"head",shape:"ellipsoid",at:[0,.1,.17],radii:[.23,.14,.18],blend:.1,material:"hide"},{bone:"head",shape:"sphere",at:[-0.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},{bone:"head",shape:"sphere",at:[.047,.162,.322],radius:.014,op:"sub",blend:.01,material:"hide"},...[["armL",-1],["armR",1]].flatMap(([e,a])=>[{bone:e,shape:"capsule",from:[0,0,0],to:[a*.01,-0.1,.03],radius:.042,blend:.04,material:"bodyHide"},{bone:e,shape:"sphere",at:[a*-0.014,-0.135,.05],radius:.015,blend:.01,material:"claw"},{bone:e,shape:"sphere",at:[a*.02,-0.135,.045],radius:.015,blend:.01,material:"claw"}]),{bone:"tail0",shape:"roundCone",from:[0,0,0],to:[0,.18,0],r1:.12,r2:.09,blend:.06,material:"bodyHide"},{bone:"tail1",shape:"roundCone",from:[0,0,0],to:[0,.15,0],r1:.09,r2:.06,blend:.03,material:"bodyHide"},{bone:"tail2",shape:"roundCone",from:[0,0,0],to:[0,.12,0],r1:.06,r2:.03,blend:.03,material:"bodyHide"},...R.map(({size:e},a)=>({bone:`spike${a}`,shape:"roundCone",from:[0,-0.02,0],to:[0,e*1.1,0],r1:e*.65,r2:e*.15,blend:.025,material:"spike"}))],paints:[{bone:"body",on:["bodyHide"],kind:"ellipse",at:[0,.24,.08],radii:[.16,.2],color:"#fff0c4",soft:.2},{bone:"head",on:["hide"],kind:"ellipse",at:[0,-0.01,.15],radii:[.17,.06],color:"#fff0c4",soft:.35},{bone:"head",on:["hide"],kind:"sphere",at:[-0.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},{bone:"head",on:["hide"],kind:"sphere",at:[.2,.12,.24],radius:.055,color:"#ff9a9a",soft:.6,opacity:.7},...[[-0.083,.204,.289],[-0.109,.181,.297],[.083,.204,.289],[.109,.181,.297]].map(([e,a,r])=>({bone:"head",on:["hide"],kind:"sphere",at:[e,a,r],radius:.009,color:"#3f8a4f",soft:.3}))]});export{t as hop};
@@ -1,12 +1,22 @@
1
- export { c as characters, d as defineWobnimoElement } from '../element-DRDEWSGV.js';
1
+ export { c as characters, d as defineWobnimoElement, a as described, o as originals } from '../index-Cm5wWKoT.js';
2
+ export { bao } from './bao.js';
3
+ export { berry } from './berry.js';
2
4
  export { boo } from './boo.js';
5
+ export { bumble } from './bumble.js';
6
+ export { cacti } from './cacti.js';
7
+ export { cap } from './cap.js';
8
+ export { drift } from './drift.js';
9
+ export { ember } from './ember.js';
10
+ export { hop } from './hop.js';
3
11
  export { inky } from './inky.js';
12
+ export { latte } from './latte.js';
4
13
  export { microduck } from './microduck.js';
5
14
  export { miso } from './miso.js';
6
15
  export { mochi } from './mochi.js';
7
16
  export { pebble } from './pebble.js';
8
17
  export { pip } from './pip.js';
9
18
  export { rex } from './rex.js';
19
+ export { swirl } from './swirl.js';
10
20
  export { tad } from './tad.js';
11
21
  export { volt } from './volt.js';
12
22
  import '../types-PAZ6PnKv.js';