{"name":"bad snakes alt","description":"-- bad snakes alt\n-- alexthescott\n-- 9/2/21\n\np={142,9,130,14,2,143,10,135,7}\npal(p,1)\n\nfunction new_snake(c)\n\ts={}\n\t-- assign global_color\n\ts.c=c\n\t-- assign start point\n\ts.d=rnd(4)\\1\n\t-- assign steps 'left'\n\ts.l=(rnd(32)\\1)*2\n\t\n\t-- top\n\tif s.d==0 then\n\t\ts.x=2*(rnd(64)\\1)\n\t\ts.y=0\n\t\ts.dx=0\n\t\ts.dy=1\n\t-- right\n\telseif s.d==1 then\n\t\ts.x=128\n\t\ts.y=2*(rnd(64)\\1)\n\t\ts.dx=-1\n\t\ts.dy=0\n\t-- bottom\n\telseif s.d==2 then\n\t\ts.x=2*(rnd(64)\\1)\n\t\ts.y=128\n\t\ts.dx=0\n\t\ts.dy=-1\n\telse\n\t-- left\n\t\ts.x=0\n\t\ts.y=2*(rnd(64)\\1)\n\t\ts.dx=1\n\t\ts.dy=0\n\tend\n\t\n\ts.draw=function(self)\n\t\tpset(self.x,self.y,self.c)\n\tend\n\t\n\ts.update=function(self)\n\t\tif self.l==0 then\n\t\t\tif abs(self.dx)==1 then\n\t\t\t\tself.dx=0\n\t\t\t\tself.dy=1+(-2*(rnd(2)\\1))\n\t\t\telse\n\t\t\t\tself.dx=1+(-2*(rnd(2)\\1))\n\t\t\t\tself.dy=0\n\t\t\tend\n\t\t\tself.l=(rnd(32)\\1)*2\n\t\telse\n\t\t\tself.l-=1\n\t\t\tself.x+=self.dx\n\t\t\tself.y+=self.dy\n\t\tend\n\tend\n\t\n\ts.destroy=function(self)\n\t\tif self.x<0 or self.x>129 or self.y<0 or self.y>129 then\n\t\t\tdel(snakes,self)\n\t\t\tseen_snakes+=1\n\t\tend\n\tend\n\tadd(snakes,s)\nend\n\nfunction new_clear()\n\tlocal clr={}\n\tclr.i=0\n\t\n\tclr.update=function(self)\n\t\tself.i+=1\n\tend\n\t\n\tclr.draw=function(self)\n\t\tline(self.i,0,self.i,128,0)\n\t\tline(128-self.i,0,128-self.i,128,0)\n\tend\n\t\n\tclr.destroy=function(self)\n\t\tif self.i>=65 then\n\t\t\tdel(screen_wipe,self)\n\t\tend\n\tend\n\t\n\tadd(screen_wipe,clr)\nend\n\nfunction burn()\n\tfor p=0,256 do\n\t\tx=rnd(128)\\1\n\t\ty=rnd(128)\\1\n\t\tpc=pget(x,y)\n\t\tif pc!=0 and pc%3!=0 then\n\t\t\tpset(x,y,pc+1)\n\t\telseif rnd(10)\\1==0 then\n\t\t\tpset(x,y,0)\n\t\tend\n\tend\nend\n\nscreen_wipe={}\nglobal_color=1\n\nsnakes={}\nseen_snakes=0\n\n-- setup title snakes\nfor i=1,7 do\n\tnew_snake(global_color)\n\tsnakes[i].y=66\n\tsnakes[i].x=32+i*6\nend\n\ncls()\n::♥::\nif t()<2 then\n\tprint(\"bad snakes alt\",36,64,1)\nelse\n\tburn()\n\t\n\tif t()%0.25==0 then\n\t\tfor i=1,2 do\n\t\t\tnew_snake(global_color)\n\t\tend\n\tend\n\t\n\tif seen_snakes>=96 then\n\t\t\tif global_color==7 then\n\t\t\t\tnew_clear()\n\t\t\tend\n\t\t\tglobal_color+=3\n\t\t\tglobal_color%=9\n\t\t\tseen_snakes=0\n\tend\n\t\n\tfor clr in all(screen_wipe) do\n\t\t\tclr:draw()\n\t\t\tclr:update()\n\t\t\tclr:destroy()\n\tend\n\t\n\tfor s in all(snakes) do\n\t\ts:draw()\n\t\ts:update()\n\t\ts:destroy()\n\tend\n\t\n\tflip()\nend\ngoto ♥","tags":["pico8","pico-8"],"symbol":"OBJKT","artifactUri":"ipfs://QmdRMCxPrr2W1U71kkT627a8qnsqDWFenKQqcF1NgSWmg3","displayUri":"ipfs://QmSdkcPVFfgjRXnwJvnri4uwrqPPgp9nPDvEF2s4JKMYaD","thumbnailUri":"ipfs://QmSdkcPVFfgjRXnwJvnri4uwrqPPgp9nPDvEF2s4JKMYaD","creators":["tz1St3n29AbYXZXV8W1BG41qYzz86J2CFAW7"],"formats":[{"uri":"ipfs://QmdRMCxPrr2W1U71kkT627a8qnsqDWFenKQqcF1NgSWmg3","mimeType":"application/x-directory"}],"decimals":0,"isBooleanAmount":false,"shouldPreferSymbol":false}