

Armcadia is a single-header, C library for generating and animating 2D tentacles using waves and primitives.
Right now it's still in development, and I'm in the process of making it more platform-agnostic, although it's should be a drop-in for Raylib users. It has support for custom drawing routines via callbacks, and a slew of parameters for customizing the look and feel of each tentacle, how it animates, and simple actions such as latching the tip to a given set of coordinates.
Tentacles are defined with a starting coordinate, base angle of projection, and then the stalk grows outward based off the other parameters, such as defined curling and waving envelopes, and a pair of waves can be configured to set up fairly sophisticated looking idling animations, which are easy to adjust on the fly. You can lock the tip to a separate set of coordinates, and the tentacle will reach for it, and latch on if it's in range.
This library is being used in my most recent demo, and will be made publicly available soon.