Wildlife: hamster and hamster wheel prefabs #1

Open
grabowski wants to merge 1 commits from grabowski/hamster AGit into master
pull from: grabowski/hamster
Owner

Adds hamster and hamster_wheel to the stdlib (wildlife.rhai, category Animals), ported from the thaiai.lol easter egg. Hamster: golden/grey/cream, standing/running/asleep, life size (scale up to 40x). Hamster wheel: diameter (0.3 m default, up to 12 m), running, stand or cage-wall axle. Running legs and rungs are 4-pose flipbooks, spokes turn in the wheel plane; things under 2 m are drawn 10x and scaled back so life-size hamsters keep their shape. Try it: isokit studio examples/house, Animals -> Hamster / Hamster wheel, zoom in. Checks: cargo test (82), clippy -D warnings, fmt, isokit check on all examples (0 findings), example SVGs identical apart from the theme CSS, check_studio ALL PASSED, check_web 0 failures.

Adds hamster and hamster_wheel to the stdlib (wildlife.rhai, category Animals), ported from the thaiai.lol easter egg. Hamster: golden/grey/cream, standing/running/asleep, life size (scale up to 40x). Hamster wheel: diameter (0.3 m default, up to 12 m), running, stand or cage-wall axle. Running legs and rungs are 4-pose flipbooks, spokes turn in the wheel plane; things under 2 m are drawn 10x and scaled back so life-size hamsters keep their shape. Try it: isokit studio examples/house, Animals -> Hamster / Hamster wheel, zoom in. Checks: cargo test (82), clippy -D warnings, fmt, isokit check on all examples (0 findings), example SVGs identical apart from the theme CSS, check_studio ALL PASSED, check_web 0 failures.
grabowski added 1 commit 2026-10-27 16:39:55 +07:00
Ported from the thaiai.lol easter egg (thaiai iso/hamster/lib/hamster.rhai);
the data-centre joke parts stay there.

- hamster (Animals): golden, grey or cream with a white belly, pink nose,
  ears and paws, buck teeth and whiskers; standing, running on the spot or
  asleep (eyes shut, z Z); n and spread like the herds; life size (about
  17 cm) at scale 1, up to 40 times.
- hamster_wheel (Animals): diameter (0.3 m life size, up to 12 m), running,
  A-frame stand or a cage-wall axle stub, fur colour. Running legs and the
  rungs are flipbooks of 4 poses, 0.1 s each; the spokes turn by a CSS
  rotation in a matrix that maps the wheel's plane onto the screen.
- draw_parts learns loft2 (two-tone lofts), eye and flip parts;
  place_parts scales and moves any part list; loft and loft2 share
  loft_rings (the other animals draw byte for byte as before).
- Things under 2 m are drawn ten times bigger in a group that scales them
  back (fine_begin / fine_end), so a life-size hamster keeps its shape on
  the drawing's 0.1-unit grid; sort boxes stay real size.
- The legs push back on the ground and swing forward lifted (the original
  lifted them on the way back).
- Theme: hamster, hamsterg, hamsterc, hamsterw, hamsterp, hwheel, hwhub,
  whisker and hamz in both palettes, materials, rules for eyes, whiskers,
  rims, spokes, hub, rungs and the z Z. Viewer CSS: iso-flip4,
  iso-wheelspin, iso-runbob, iso-zzz; beast edges take --bw (default .3).
- Test hamsters_run_in_wheels_from_every_side: no sort cycles in any
  rotation, flipbook counts, scaled groups, real-size sort boxes, tooltips.
- README, ROADMAP, SCRIPTING and the MCP instructions list them.
You are not authorized to merge this pull request.
This pull request can be merged automatically.
This branch is out-of-date with the base branch
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin refs/pull/1/head:grabowski/hamster
git checkout grabowski/hamster
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: B4L/isokit#1