mirror of
https://github.com/direct-img/vibegif.direct-img.link.git
synced 2026-10-29 19:54:51 +00:00
Bring the minimalist section to 50 with 46 new creatures, 500 total
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
// sea angel swimming: a little clione flaps its wing-feet and bobs on every beat, a tiny heart glowing in its belly
|
||||
const{sin,PI}=Math,T=2*PI
|
||||
export const frames=24,delay=80,rim=3,rimColor='#111'
|
||||
export default(c,t)=>{
|
||||
const w=sin(T*t*2),bl=t>.7&&t<.76
|
||||
c.fillStyle=c.strokeStyle='#fff';c.lineWidth=6
|
||||
const shape=f=>{c.beginPath();f();c.fill();c.stroke()}
|
||||
for(const[i,x]of[-64,60].entries()){const q=(t+i/2)%1;c.beginPath();c.arc(128+x+4*sin(T*q),214-150*q,5*sin(PI*q),0,T);c.fill()}
|
||||
c.translate(0,-7*sin(T*t*2+.9))
|
||||
for(const d of[-1,1]){c.save();c.translate(128+d*16,108);c.scale(d,1);c.rotate(.5*w)
|
||||
shape(()=>{c.moveTo(0,-6);c.bezierCurveTo(24,-38,62,-42,68,-22);c.bezierCurveTo(72,-4,40,12,0,10)});c.restore()}
|
||||
shape(()=>{c.moveTo(104,92);c.bezierCurveTo(96,140,112,192,128,222);c.bezierCurveTo(144,192,160,140,152,92)})
|
||||
for(const d of[-1,1])shape(()=>c.arc(128+d*15,58,8,0,T))
|
||||
shape(()=>c.arc(128,82,28,0,T))
|
||||
c.fillStyle=c.strokeStyle='#111';c.lineWidth=3
|
||||
c.beginPath();c.moveTo(128,166);c.bezierCurveTo(106,150,114,132,128,143);c.bezierCurveTo(142,132,150,150,128,166);c.stroke()
|
||||
for(const d of[-1,1])if(bl)c.lineWidth=3.5,c.beginPath(),c.arc(128+d*11,80,5,.15*PI,.85*PI),c.stroke()
|
||||
else c.beginPath(),c.arc(128+d*11,82,5,0,T),c.fill()
|
||||
c.lineWidth=3;c.beginPath();c.arc(128,92,5,.2*PI,.8*PI);c.stroke()
|
||||
}
|
||||
Reference in New Issue
Block a user