screen 0,320,240,1,0,0 randomize maxmem=32000 dim px,maxmem dim py,maxmem dim pa,maxmem dim pb,maxmem dim dix,4 dim diy,4 dix.0=0,1,-1,0 diy.0=-1,0,0,1 redraw 2 color 0,0,0 boxf 0,0,639,479 color 255,255,255 boxf 1,1,638,478 color 0,0,0 repeat 5 rnd x,320 rnd xx,320 line x,0,xx,479 rnd y,240 rnd yy,240 line 0,y,639,yy loop redraw 1 bord=0 mref wd,66 *main rnd c,255 c++ ginfo 1 foc=prmx stick a,0 x=mousex y=mousey if (foc=0)&(a=256) : goto *paint await 5 goto *main *paint ad=239-y*320+x peek gc,wd,ad if gc=bord: goto *main palcolor c pset x,y repeat maxmem px.cnt=0 py.cnt=0 pa.cnt=0 pb.cnt=-1 loop px.0=x py.0=y pa.0=2 robos=1 finsw=0 newrb=1 repeat redraw 2 repeat maxmem i=cnt if pa.i=0 : break if pa.i=3 : continue if pa.i=1 : pa.i=2:continue mov=0 xx=px.i yy=py.i die=0 repeat 4 j=cnt if j=pb.i : die++:continue v=xx+dix.j w=yy+diy.j ad=239-w*320+v peek gc,wd,ad if (gc=bord)|(gc=c)|(v<0)|(v>319)|(w<0)|(w>239) : die++:continue mov++ if mov=1 : pb.i=3-j:px.i=v:py.i=w:ad=239-w*320+v:poke wd,ad,c:continue if newrb=maxmem : dialog "メモリが足りません",1,"Paint Sample":end robos++ finsw=1 px.newrb=v py.newrb=w pa.newrb=1 pb.newrb=3-j ad=239-w*320+v poke wd,ad,c newrb++ loop if die=4 : pa.i=3:robos-- loop redraw 1 await 0 if robos<1 : break loop goto *main