arkivo.art

bad portal alt

alexthescott

-- bad portal alt -- alexthescott -- 9/8/20 p={143,142,133,13,141,130,140,131,129} pal(p,1) function dist(x1,y1,x2,y2) return sqrt((x1-x2)^2+(y1-y2)^2) end function new_particle(c) p={} p.x=64 p.y=64 p.xt=64 p.yt=64 p.a=rnd(1) p.oc=c p.c=c p.dx=cos(p.a)/4 p.dy=sin(p.a)/4 p.update=function(self) self.x+=self.dx self.y+=self.dy self.xt+=self.dx*0.75 self.yt+=self.dy*0.75 self.dx*=1.075 self.dy*=1.075 d=dist(self.x,self.y,64,64) if d>52 then self.c=self.oc+2 elseif d>=32 then self.c=self.oc+1 end end p.draw=function(self) line(self.x,self.y,self.xt,self.yt,self.c) end p.destroy=function(self) return self.xt<=0 or self.xt>=128 or self.yt<=0 or self.yt>=128 end p.debug=function(self) rectfill(0,0,10,10,0) print(self.d,0,0,7) end return p end function new_orbit(c) o={} o.s=2 o.show=90+rnd(20)\1 o.r=100 o.a=rnd(1) o.ac=rnd(1) o.av=0.005 o.c=c o.x=64+cos(o.a)*o.r/2 o.y=64+sin(o.a)*o.r/2 o.update=function(self) self.a+=sin(self.ac)/200 self.ac+=self.av if self.ac>=1 then self.tc=0 end self.x=64+cos(self.a)*self.r/2 self.y=64+sin(self.a)*self.r/2 end o.draw=function(self) circfill(self.x,self.y,self.s,self.c) end o.new_c=function(self,c) self.c=c end return o end function burn() for i=1,1200 do x=rnd(128)\1 y=rnd(128)\1 pc=pget(x,y) if pc%3!=0 then nc=rnd(2)\1 pset(x,y,pc+nc) pset(x,y-2,pc+nc) pset(x,y+2,pc+nc) pset(x-2,y,pc+nc) pset(x+2,y,pc+nc) end pset(x,y,0) end end global_color=7 fc=0 particles={} orbits={} for i=1,10 do add(orbits,new_orbit(global_color)) end -- expanding lines, expanding circle ring_r=50 border_r=10 cls() ::♥:: if t()<2 then print("bad portal alt",36,64,7) else burn() if fc>=2000 then fc=0 end fc+=1 if fc%2==0 then for i=1,8 do add(particles,new_particle(global_color)) end end if fc%500==0 then global_color+=3 global_color%=9 for o in all(orbits) do o:new_c(global_color) end end for p in all(particles) do p:update() p:draw() if p:destroy() then del(particles,p) end end for o in all(orbits) do o:update() if fc%o.show<=80 then o:draw() end end if fc%500>400 and fc%500<425 then circ(64,64,ring_r,global_color) ring_r+=0.25 else ring_r=50 end if fc%500>300 and fc%500<350 then -- top left line(4,4,4+border_r,4) line(4,4,4,4+border_r) -- top right line(124,4,124-border_r,4) line(124,4,124,4+border_r) -- bottom right line(124,124,124-border_r,124) line(124,124,124,124-border_r) -- bottom left line(4,124,4+border_r,124) line(4,124,4,124-border_r) border_r+=0.75 else border_r=10 end circfill(64,64,4,0) end flip() goto ♥

Blockchain tezos
Smart Contract KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton
Platform HEN
Token ID 281227
Minted at 09 Sep 2021, 01:22 UTC

Metadata URI Metadata URI
Artifact URI Artifact URI

pico8 , pico-8

JavaScript true
Networked false

Timestamp (UTC) 2024-08-17T07:32:45.035Z
Snapshot version 1
External network calls 0
Download Snapshot Download
Snapshot Image