--bad drip --alexthescott --8/25/21
p={8,136,130,11,139,131,12,140,129} pal(p,1) global_color=1 global_tick=1
function burn() -- drip pixels, fade color -- respect even/odd y pos for p=0,2024do x=rnd(128)\1 y=rnd(128)\1 pc=pget(x,y) npc=pget(x,y+2) if y%2==0 then d=2 else d=-2 end if pc!=0 and pc==npc then if pc%3!=0 then if rnd(10)\1==0 then pset(x,y,pc+1) else pset(x,y,pc) end end pset(x,y+d,pc) elseif pc!=0 then pset(x,y+d,pc) end end end
function add_brush() local b={}
b.x=0
if global_tick==1 then
b.y=0
else
b.y=127
end
b.c=global_color
b.v=1
b.update=function(slf)
slf.x+=slf.v
end
b.set_c=function(slf,c)
slf.c=c
end
b.draw=function(slf)
pset(slf.x,slf.y,slf.c)
end
b.destroy=function(slf)
if slf.x>=128 then
del(brushes,slf)
end
end
global_tick+=1
global_tick%=2
add(brushes,b)
end
brushes={} add_brush() add_brush()
cls() ::♥:: if t()<2 then print("bad drip",48,64,1) else burn()
if t()%5==0 then
add_brush()
add_brush()
end
if t()%10==0 then
for b in all(brushes) do
b:set_c(global_color)
end
global_color+=3
global_color%=9
end
for b in all(brushes) do
b:draw()
b:update()
b:destroy()
end
end
flip() goto ♥