My code for sprite rotation:
function sprrot(id,x,y,a,s)
id=flr(id)
function getcol(px,py)
return ((px<1 and py<1)and(px>=0 and py>=0)) and sget((px*8)+((id%16)*8),(py*8)+(flr(id/16)*8)) or -1
end
for py=0,s*13 do --floor(9*sqrt(2))
for px=0,s*13 do
local uv={x=((px/(11*s))-.6),y=((py/(11*s))-.6)}
local col=getcol(((uv.x*cos(a))-(uv.y*sin(a)))+.5,((uv.x*sin(a))+(uv.y*cos(a)))+.5)
if(col>0)then
pset(flr(x+(px-(6.36*s))),flr(y+(py-(6.36*s))),col)
end
end
end
end
|
Any better ones?

It's my first PICO-8 cartridge uploaded here.
Move with arrow keys and press Z to regenerate.
I've used Prim's algorithm for this. Some common patterns are visible which I don't know how to fix.
This might be buggy, if you're unable to collect all pills please let me know and comment about it because I was a little confused when I coded this.






3 comments



