start: cls sync rate 40 restore startpoint set text font "system",1 set text to normal set text transparent set text size 20 show mouse sync on for select=0 to 5 ink rgb(100,100,100),0 box (select*50)+2,0,(select*50)+50,50 read msg$ ink rgb(130*(select+1),130*(select+1),130*(select+1)),0 center text (select*50+2+(select*50)+50)/2,25,msg$ next select set text opaque ink rgb(100,100,100),0 do for detect=0 to 5 if mousex()>(detect*50)+2 and mousey()>0 and mousex()<(detect*50)+50 and mousey()<50 if mouseclick()=1 for drop=50 to 100 if detect=5 then end box (detect*50)+2,drop,(detect*50)+50,drop+2 sync next drop if detect=3 if w=1 then set window off:w=0 else set window on:w=1 gosub start endif if detect=2 then gosub Tools if detect=1 then gosub Art if detect=0 then gosub Games endif endif sync next detect sync loop rem -------- Art: color=255 x=0 y=0 sync rate 0 repeat dec color,1 set gamma color,color,color sync until color=0 cls wait 10 set gamma 255,255,255 `-=-=-=-Paint-=-=-=- `--------V1.6------- `----Designed By Irojo---- ` `Note: Go ahead and build off this if you want. boxsize=1 i=1 x11#=600 y11#=400 x12#=700 y12#=400 x21#=600 y21#=400 x22#=600 y22#=600 sync on : sync rate 0 ink rgb(255,255,255),0 print " Instructions for Version 1.6 Paint Program" print " " print " The area to the left of the line will be called the drawing section." print "The area to the right of the line will be called the editor section." print " " print " If your mouse enters the editor section, the line will begin flashing" print "and you will be required to press (y)es or (n)o to continue, in order to protect your work." print " " print " To increase your Red Value, you would enter [Shift]+(r)" print "in continuation, you would enter (r) to decrease the value." print "for red, the key is r, for green, g, and for blue, b." print " " print " The value range is 0-255. You can't go lower then 0, and can't go higher then 255." print " " print " To clear the screen, right click, then press [SHIFT]+(y) to confirm or (n) to cancel" print "Then press [Shift]+c to confirm." print "If you change your mind, press x." print " " print " If you want to erase some of your work, Hold (x)," print "and move your mouse over what it is that you want " print "to erase. It is recommended that you set r,g, and b to 0, or you" print "will have problems." print " " print " " print " To disable editor mode, press (d). To re-enable, press (e)." print "Press a key to continue with instructions" print " " print "These Instructions will not be repeated." wait key repeat cls ink rgb(255,255,255),0 print " To change between 3D and 2D mode, press 2 for 2D, and likewise 3 for 3D." print " " print " To change your color to the color under your mouse, press Control." print " " print " To Make a Random Splatter art effect, Hold [SHIFT]+" f " and left click." print " There is a box in the bottom right-hand corner of editor mode," print "with a "C" on the middle of it. If you click on this box, the screen will" print "be cleared." print " To change all colors at once, press 'A' to raise them, and 'a' to lower." ink rgb(rnd(255),rnd(255),rnd(255)),0 print "PRESS TAB WHEN IN EDITOR MODE TO RETURN TO MAIN MENU!!!" ink rgb(255,255,255),0 print "Press [ENTER] to begin." print " " print "These Instructions will not be repeated." sync until returnkey()=1 the_program: cls programsbegin: currentx=320 currenty=240 do x=0 y=0 if inkey$()="A" and r<255 and g<255 and b<255 then r=r+1:g=g+1:b=b+1 if inkey$()="a" and r>0 and g>0 and b>0 then r=r-1:g=g-1:b=b-1 line 600,400,700,400 line 600,400,600,600 color=point(mousex(),mousey()) ink rgb(rgbr(color),rgbg(color),rgbb(color)),0 if rgbr(color)+rgbg(color)+rgbb(color)>0 then ink rgb(255,0,0),0 ink rgb(rgbr(color),rgbg(color),rgbb(color)),0 box 550,200,600,250 if rgbr(color)+rgbg(color)+rgbb(color)>0 then ink rgb(255,0,0),0 else ink rgb(255,255,255),0 line 550,200,600,200 line 550,200,550,250 line 600,200,600,250 line 600,250,550,250 if controlkey()=1 color=point(mousex(),mousey()) r=rgbr(color) g=rgbg(color) b=rgbb(color) endif if inkey$()="x" realr=0 : realg=0 : realb=0 disable=1 if mouseclick()=1 if boxsize=1 ink rgb(0,0,0),0 box mousex()-3,mousey()-3,mousex()+3,mousey()+3 endif if boxsize=2 ink rgb(0,0,0),0 box mousex()-5,mousey()-5,mousex()+5,mousey()+5 ink rgb(255,255,255),0 endif endif trigger=1 disable=0 endif ink rgb(r,g,b),0 if inkey$()="R" and r<255 then r=r+1 if inkey$()="G" and g<255 then g=g+1 if inkey$()="B" and b<255 then b=b+1 if inkey$()="r" and r>0 then r=r-1 if inkey$()="g" and g>0 then g=g-1 if inkey$()="b" and b>0 then b=b-1 if mouseclick()=2 then gosub confirm ` -LINE 2D- if Style=0 if trigger=0 and disable=0 and mouseclick()=1 or trigger=0 and spacekey()=1 and disable=0 ink rgb(realr,realg,realb),0 line currentx,currenty,mousex(),mousey() endif endif ` -|LINE 2D|- ` -LINE 3D- if Style=1 if trigger=0 and disable=0 and mouseclick()=1 or trigger=0 and spacekey()=1 and disable=0 if currentx<mousex() ink rgb(realr,realg,realb),0 line currentx-3,currenty-3,mousex()+3,mousey()+3 endif if currentx>mousex() ink rgb(realr,realg,realb),0 line currentx+3,currenty+3,mousex()-3,mousey()-3 endif endif endif `-|LINE|- if mousex()>=480 then gosub overline currentx=mousex() currenty=mousey() ink rgb(255,0,0),0 line 480,0,480,500 set text opaque ink rgb(255,0,0),0 text 485,20," " text 485,20,"Red: "+STR$(r)+" " ink rgb(0,255,0),0 text 485,40," " text 485,40,"Green: "+STR$(g)+" " ink rgb(0,0,255),0 text 485,60," " text 485,60,"Blue: "+STR$(b)+" " ink rgb(r,g,b),0 box 595,20,620,80 ink rgb(55,55,55),0 line 595,20,595,80 line 595,20,620,20 line 620,20,620,80 line 595,80,620,80 ink rgb(255,255,255),0 text 485,100,"Eraser Size= "+str$(boxsize)+" " if inkey$()="+" and boxsize<2 then boxsize=2 if inkey$()="-" and boxsize>0 then boxsize=1 if inkey$()="x" and trigger=1 and timer>=10 then trigger=0 : timer=0 ink rgb(255,255,255),0 if Style=0 text 485,120,"Pen Style: 2D" endif if Style=1 text 485,120,"Pen Style: 3D" endif if inkey$()="3" then Style=1 if inkey$()="2" and Style=1 then Style=0 if inkey$()="d" then disablemove=1 if inkey$()="e" then disablemove=0 if disablemove=1 and mousex()>=480 then position mouse 479,mousey() trigger=0 realr=r realg=g realb=b if inkey$()="F" then position mouse rnd(478),rnd(500) ink rgb(255,255,255),0 center text 620,425,"C" line x11#,y11#,x12#,y12# line x21#,y21#,x22#,y22# sync loop confirm: do if inkey$()="Y" then cls : return if inkey$()="n" then return sync loop overline: do ink rgb(rnd(200)+150,0,0),0 line 480,0,480,500 if inkey$()="y" then exit if inkey$()="n" then position mouse 479,mousey() : return if inkey$()="d" then disablemove=1 if inkey$()="e" then disablemove=0 if disablemove=1 and mousex()>=480 then position mouse 479,mousey() : return sync loop do x=0 y=0 if mousex()>600 and mousey()>400 and mouseclick()=1 line x11#,y11#,x12#,y12# line x21#,y21#,x22#,y22# ink rgb(255,255,255),0 center text 620,425,"C" ink rgb(255,255,255),0 show mouse if inkey$()="A" and r<255 and g<255 and b<255 then r=r+1:g=g+1:b=b+1 if inkey$()="a" and r>0 and g>0 and b>0 then r=r-1:g=g-1:b=b-1 `*-------------------------------------------------------* `Change this value to 40, or 90 for a different effect. inricatevalue#=4 `*-------------------------------------------------------* while thingy<600 ink rgb(255,255,255),0 if itrigger<>1 then x=x+inricatevalue# if x>=658 and itrigger2=0 then y=y+inricatevalue# if x>=658 then itrigger=1 if y>=500 then itrigger2=1 line 320,240,x,y if itrigger2=1 then x=x-inricatevalue# if x=0 and y>=500 and itrigger2=1 then itrigger3=1 if itrigger3=1 then y=y-inricatevalue# if itrigger3=1 then itrigger2=0 wait 2 if y=0 and x=0 itrigger=0 itrigger2=0 itrigger3=0 endif thingy=thingy+1 sync endwhile thingy=0 itrigger=0 itrigger2=0 itrigger3=0 cls line 550,200,600,200 line 550,200,550,250 line 600,200,600,250 line 600,250,550,250 ink rgb(255,255,255),0 center text 620,425,"C" else line x11#,y11#,x12#,y12# line x21#,y21#,x22#,y22# endif set text opaque ink rgb(255,255,255),0 line 480,0,480,500 if inkey$()="R" and r<255 then r=r+1 if inkey$()="G" and g<255 then g=g+1 if inkey$()="B" and b<255 then b=b+1 if inkey$()="r" and r>0 then r=r-1 if inkey$()="g" and g>0 then g=g-1 if inkey$()="b" and b>0 then b=b-1 ink rgb(255,0,0),0 text 485,20," " text 485,20,"Red: "+STR$(r)+" " ink rgb(0,255,0),0 text 485,40," " text 485,40,"Green: "+STR$(g)+" " ink rgb(0,0,255),0 text 485,60," " text 485,60,"Blue: "+STR$(b)+" " ink rgb(r,g,b),0 box 595,20,620,80 ink rgb(55,55,55),0 line 595,20,595,80 line 595,20,620,20 line 620,20,620,80 line 595,80,620,80 if mousex()<480 then return if mouseclick()=2 then gosub confirm ink rgb(255,255,255),0 text 485,100,"Eraser Size= "+str$(boxsize)+" " if inkey$()="+" and boxsize<2 then boxsize=2 if inkey$()="-" and boxsize>0 then boxsize=1 ink rgb(255,255,255),0 if Style=0 text 485,120,"Pen Style: 2D" endif if Style=1 text 485,120,"Pen Style: 3D" endif if inkey$()="3" then Style=1 if inkey$()="2" and Style=1 then Style=0 if inkey$()="d" then disablemove=1 if inkey$()="e" then disablemove=0 if disablemove=1 and mousex()>=480 then position mouse 479,mousey() If scancode()=15 then gosub start sync loop end rem ---------- Games: set text transparent sync rate 140 ink rgb(255,255,255),0 for slide=1 to 102 box 0,0,300,slide sync next slide sync rate 0 for center=1 to (screen width()-300)/2 cls box center,0,center+300,slide sync next center color=255 repeat dec color,1 ink rgb(color,color,color),0 box center-1,0,center+300,slide sync until color=100 set text font "Times New Roman",1 set text size 40 ink rgb(255,255,255),0 center text (center+300+center-1)/2,slide/2,"Games" for boxes=1 to 3 ink rgb(200,240,0),0 box 320-41,boxes*60+91,320+41,boxes*60+121 ink rgb(60,20,80),0 box 320-39,boxes*60+89,320+39,boxes*60+119 next boxes set text size 14 label=1 ink rgb(100,240,0),0 center text 320,label*60+91,"Ninja Stickman" label=2 ink rgb(100,240,0),0 center text 320,label*60+91,"Other" label=3 ink rgb(100,240,0),0 center text 320,label*60+91,"Back" r=10 x=420 y=240 circle 420,240,30 dot 410,230 dot 430,230 sync on For dg= 0 to 180 ax= sin(dg-100)*r +x ay= cos(dg-100)*r +y dot ax,ay Next dg sync r=10 x=220 y=240 circle 220,240,30 dot 210,230 dot 230,230 sync on For dg= 0 to 180 ax= sin(dg-120)*r +x ay= cos(dg-100)*r +y dot ax,ay Next dg sync do for boxes=1 to 3 ink rgb(200,240,0),0 if mousex()>320-40 and mousex()<320+40 and mousey()>boxes*60+91 and mousey()<boxes*60+121 if mouseclick()=1 if boxes=1 then gosub NinjaStickman if boxes=2 then gosub Other if boxes=3 then gosub start endif endif next boxes sync loop end Tools: cls rgb(200,80,90) sync on for line=1 to screen width() ink rgb(line*line,line,line),0 box line-1,0,line,screen height()-1 next line sync ink rgb(0,0,0),0 box 240,100,402,202 for x=240 to 400 for y=100 to 200 ink rgb(x*x+5,x+5,x+5),0 dot x,y next y next x sync set text font "Arial",1 set text size 30 set text to normal set text transparent ink rgb(200,200,200),0 center text 320,150,"Tools" for boxstep=0 to 2 ink rgb(8,220,216),0 box 240,240+(boxstep*50),400,280+(boxstep*50) next boxstep boxstep=0 set text font "Impact",1 ink rgb(100,100,100),0 set text size 20 center text 320,250+(boxstep*50),"English -> Binary" boxstep=1 center text 320,250+(boxstep*50),"Calculator" boxstep=2 center text 320,250+(boxstep*50),"Return To Main Menu" do for boxstep=0 to 2 if mousex()>240 and mousex()<400 and mousey()>240+(boxstep*50) and mousey()<280+(boxstep*50) if mouseclick() if boxstep=0 then gosub Binary if boxstep=1 then gosub Calculator if boxstep=2 then gosub start endif endif next boxstep sync loop Binary: rem -------------The following Code was Created by Irojo (me)----------- rem -------------------I used an online translator to find the Binary-------- rem -------------------letters needed. It includes a-z, and spaces only-------- rem -----------I may do other characters later------- sync on set text transparent cls rgb(40,100,0) ink rgb(100,200,0),0 box 200,100,440,200 ink rgb(100,100,100),0 box 0,240,screen width()-1,screen height()-1 ink rgb(200,200,200),0 print set text font "Impact",1 set text size 30 center text 320,150,"Binary Translator" ink rgb(0,0,0),0 box 0,15,screen width()-1,31 ink rgb(255,255,255),0 print "English:"; sync input msg$ if len(msg$) > 30 sg$ = left$(msg$,30) set cursor 100,50 print "Your string was too long and was truncated to:" set cursor 100,70 print msg$ sync wait key goto Tools endif for scan=1 to len(msg$) if mid$(msg$,scan)="a" then s$=s$+"01100001" if mid$(msg$,scan)="b" then s$=s$+"01100010" if mid$(msg$,scan)="c" then s$=s$+"01100011" if mid$(msg$,scan)="d" then s$=s$+"01100100" if mid$(msg$,scan)="e" then s$=s$+"01100101" if mid$(msg$,scan)="f" then s$=s$+"01100110" if mid$(msg$,scan)="g" then s$=s$+"01100111" if mid$(msg$,scan)="h" then s$=s$+"01101000" if mid$(msg$,scan)="i" then s$=s$+"01101001" if mid$(msg$,scan)="j" then s$=s$+"01101010" if mid$(msg$,scan)="k" then s$=s$+"01101011" if mid$(msg$,scan)="l" then s$=s$+"01101100" if mid$(msg$,scan)="m" then s$=s$+"01101101" if mid$(msg$,scan)="n" then s$=s$+"01101110" if mid$(msg$,scan)="o" then s$=s$+"01101111" if mid$(msg$,scan)="p" then s$=s$+"01110000" if mid$(msg$,scan)="q" then s$=s$+"01110001" if mid$(msg$,scan)="r" then s$=s$+"01110010" if mid$(msg$,scan)="s" then s$=s$+"01110011" if mid$(msg$,scan)="t" then s$=s$+"01110100" if mid$(msg$,scan)="u" then s$=s$+"01110101" if mid$(msg$,scan)="v" then s$=s$+"01110110" if mid$(msg$,scan)="w" then s$=s$+"01110111" if mid$(msg$,scan)="x" then s$=s$+"01111000" if mid$(msg$,scan)="y" then s$=s$+"01111001" if mid$(msg$,scan)="z" then s$=s$+"01111010" if mid$(msg$,scan)=" " then s$=s$+"00100000" if mid$(msg$,scan)="." then s$=s$+"00101110" if mid$(msg$,scan)="!" then s$=s$+"00100001" if mid$(msg$,scan)="'" then s$=s$+"00100111" if mid$(msg$,scan)="/" then s$=s$+"00101111" if mid$(msg$,scan)="\" then s$=s$+"01011100" if mid$(msg$,scan)="|" then s$=s$+"01111100" if mid$(msg$,scan)="A" then s$=s$+"01000001" if mid$(msg$,scan)="B" then s$=s$+"01000010" if mid$(msg$,scan)="C" then s$=s$+"01000011" if mid$(msg$,scan)="D" then s$=s$+"01000100" if mid$(msg$,scan)="E" then s$=s$+"01000101" if mid$(msg$,scan)="F" then s$=s$+"01000110" if mid$(msg$,scan)="G" then s$=s$+"01000111" if mid$(msg$,scan)="H" then s$=s$+"01001000" if mid$(msg$,scan)="I" then s$=s$+"01001001" if mid$(msg$,scan)="J" then s$=s$+"01001010" if mid$(msg$,scan)="K" then s$=s$+"01001011" if mid$(msg$,scan)="L" then s$=s$+"01001100" if mid$(msg$,scan)="M" then s$=s$+"01001101" if mid$(msg$,scan)="N" then s$=s$+"01001110" if mid$(msg$,scan)="O" then s$=s$+"01001111" if mid$(msg$,scan)="P" then s$=s$+"01010000" if mid$(msg$,scan)="Q" then s$=s$+"01010001" if mid$(msg$,scan)="R" then s$=s$+"01010010" if mid$(msg$,scan)="S" then s$=s$+"01010011" if mid$(msg$,scan)="T" then s$=s$+"01010100" if mid$(msg$,scan)="U" then s$=s$+"01010101" if mid$(msg$,scan)="V" then s$=s$+"01010110" if mid$(msg$,scan)="W" then s$=s$+"01010111" if mid$(msg$,scan)="X" then s$=s$+"01011000" if mid$(msg$,scan)="Y" then s$=s$+"01011001" if mid$(msg$,scan)="Z" then s$=s$+"01011010" next scan sync write to clipboard s$ cls rgb(40,100,0) ink rgb(100,200,0),0 box 200,100,440,200 ink rgb(200,200,200),0 print set text font "Impact",1 set text size 30 center text 320,150,"Binary Translator" ink rgb(0,0,0),0 box 0,15,screen width()-1,30 ink rgb(255,255,255),0 print "English:"; print msg$ set text size 14 set text font "courier new",1 ink rgb(100,100,100),0 box 0,240,screen width()-1,screen height()-1 ink rgb(255,255,255),0 for y=240 to screen height()-10 step 10 for x=1 to screen width()-7 step 7 inc rounds,1 if rounds=len(s$) then leave=1:exit text x,y,mid$(s$,rounds) next y if leave=1 then exit next x wait key print "ERROR" goto Tools end Calculator: return startpoint: data "Games","Art","Tools","Screen","Res.","Quit" NinjaStickman: undim msg$() cls restore Ninja skipthrough=0 xmsgd=100 y=100 totalstar=0 count=0 x=xmsgd default#=3 sync on:sync rate 60 set text font "courier new",1 set text size 15 dim msg$(1000) gosub msg_data r=55 ink rgb(200,200,200),0 box xmsgd-22,y-42,xmsgd+482,y+152 ink rgb(r,0,0),0 box xmsgd-20,y-40,xmsgd+480,y+150 ink rgb(255,255,255),0 hide mouse text xmsgd-18,y-53,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" text xmsgd-18,y+146,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" for k=1 to messages if k=2 then extra=1 else extra=0 if mid$(msg$(k),len(msg$(k)))="1" then extra=1 if mid$(msg$(k),len(msg$(k)))="2" then extra=0 if upkey()=1 then skipthrough=1 for scan=1 to len(msg$(k)) for fadein=1 to 255 step 30 if cancel=1 then fadein=255 if extra=1 then ink rgb(fadein/4,fadein/2,fadein/5),0 else ink rgb(fadein,fadein,fadein),0 text x,y,mid$(msg$(k),scan) if spacekey()=1 then cancel=1 ink rgb(r,g,b),0 box len(msg$(k))*7+xmsgd-7,y+3,len(msg$(k))*7+xmsgd,y+12 sync if upkey()=1 then skipthrough=1 if skipthrough=1 then exit next fadein inc x,7 sync next scan inc y,12 x=xmsgd cancel=0 if skipthrough=1 then exit next k goto skipover msg_data: rem Display how many lines are used here. rem NOTE- IF THERE IS AN ERROR WITH UNREAD TEXT, rem IT IS PROBABLY BECAUSE THE MESSAGES NUMBER IS TOO SMALL. messages=11 rem Your messages. Self explanatory. A 2 after the message is regular text, a 1 is Ninja Stickman talking. msg$(1)="Ninja Stickman... I need you.2" msg$(2)="What- Who is this!?1" msg$(3)="I am a Ninja Lord. And I am dying...2" msg$(4)="I need you to collect yellow stars for me.2" msg$(5)="No... I am not yet skilled enough.1" msg$(6)="You are a stickman. It is in your blood. Go get stars.2" msg$(7)="Why haven't you told me what the stars are for?1" msg$(8)="I will keep that reason to myself!2" msg$(9)="Yes sir.1" msg$(10)="Remember: Orange stars bad, yellow good.2" msg$(11)="And I suppose I ought to remind you to be honourable...2" return REM (No other choice) skipover: rem Intro if sprite exist(1) then scale sprite 1,100 if hidden_ninja=1 then show sprite 1 set text font "System",1 ink rgb(255,255,255),0 box 0,0,screen width()-1,60 get image 1,0,0,screen width()-1,60 y2=screen height() y=-60 sc=0 starcount=0 cls ink rgb(0,255,0),0 set text size 90 center text 320,240,"Ninja Stickman" screen=1 repeat if screen=1 sprite 1,0,y,1 sprite 2,0,y2,1 endif if screen=1 and y<=-1 then inc y,1 else up2=1 if screen=1 and y2>=screen height()-60 then dec y2,1 else up=1 if up=1 and up2=1 rem A pause but still sensitive to button pressing. for k=1 to 60 if spacekey() then exit sync next k k=0 up=0 up2=0 y2=screen height() y=-60 screen=0 exit endif sync until spacekey() cls delete sprite 1 delete sprite 2 delete image 1 rem -----------GAME HERE----------- set text size 20 sync on rem Right ink rgb(155,155,155),0 circle 4,4,4 ink rgb(10,10,10),0 box 0,2,8,4 ink rgb(80,50,40),0 line 4,8,4,20 line 4,20,2,30 line 4,20,6,30 line 4,18,2,9 line 4,18,9,8 get image 1,0,0,9,32 hide mouse sync cls rem Left ink rgb(155,155,155),0 circle 4,4,4 ink rgb(10,10,10),0 box 0,2,8,4 ink rgb(80,50,40),0 line 4,8,4,20 line 4,20,2,30 line 4,20,6,30 line 4,18,0,9 line 4,18,8,8 get image 2,0,0,9,32 sync r=rnd(1)+1 cls rgb(0,100,0) move=2 r=0 miny#=screen height() y#=400 sc=3 ink rgb(255,255,0),0 text 0,0,"*" get image 100,0,0,6,9 ink rgb(255,100,0),0 text 0,0,"*" get image 101,0,0,6,9 cls for rounds=1 to 7 x#=0 y#=400 dim danger(100) for remove=1 to 300 if sprite exist(remove) then delete sprite remove next remove for y=1 to screen height() step 48 x=1 for x=1 to screen width() step 64 read okay if okay=1 then sprite sc,x,y,100:inc sc,1:scale sprite sc-1,160:danger(sc-1)=1:inc totalstar,1 if okay=2 then sprite sc,x,y,101:inc sc,1:scale sprite sc-1,160:danger(sc-1)=2 next x next y sync print screen height()/10 do if r=0 then cls rgb(0,100,0) if rightkey()=1 inc x#,1:move=1 if ground=1 then inc x#,.6 endif if leftkey()=1 dec x#,1:move=2 if ground=1 then dec x#,.6 endif sprite 1,x#,y#,move ink rgb(50,50,50),0 if r=0 then text x#-2,y#-15,"P1":ink rgb(255,255,255),0:text 0,0,"Level 1."+str$(rounds) if ground=0 and jp#=0 then inc descent#,.05 if ground=0 and jp#=0 then inc y#,descent#+default# if ground=1 then descent#=0 if spacekey()=1 and jumps<2 then wfr=1 if ground=1 then jumps=0 if wfr=1 and spacekey()=0 and jumps<2 and jp#=0 then wfr=0:jp#=5:inc jumps,1 if jp#>0 then dec jp#,.1 if jp#<0 then jp#=0 dec y#,jp# if y#<miny# then miny#=y# `if y#<=maxheighty# and jp#>0 then jp#=0 if y#>=screen height()-33 then ground=1 else ground=0 if r=1 then line oldx#,oldy#,x#,y# if inkey$()="d" then r=1 if inkey$()="n" then r=0 oldx#=x# oldy#=y# ink rgb(0,50,100),0 text 0,20,"Stars:"+str$(count) if ground=1 then inair=1 if spacekey()=1 and ground=1 and jumps=0 then maxheighty#=y#-234.25 for k=3 to sc-1 if sprite collision(k,1) delete sprite k if danger(k)=1 then inc count,1 if danger(k)=2 then goto death endif next k ink rgb(0,0,0),0 box 500,screen height()-60,550,screen height()-1 if x#>500 and y#>screen height()-60 and x#<551 then exit sync loop next round gosub victory rem 1.1 Ninja: data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,1,0,0 data 0,0,0,1,1,1,1,1,1,0 data 0,0,0,0,0,0,0,1,0,0 rem 1.2 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,2,0,1,0,0,0,1,2 data 0,0,2,1,1,1,1,0,0,1 data 0,0,2,0,0,0,0,0,0,1 data 0,0,0,0,0,0,1,0,0,0 rem 1.3 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,1,1,0 data 0,0,0,1,2,1,1,0,0,0 data 0,0,0,0,2,2,0,0,0,2 data 0,0,0,0,2,2,1,0,0,0 rem 1.4 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,2,1,0,0,0,0 data 0,0,0,0,1,2,1,0,0,0 data 0,0,1,0,1,0,2,0,0,0 data 0,0,2,2,1,0,2,0,0,0 rem 1.5 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,1,0,0,0,0 data 0,2,1,0,1,2,0,0,0,0 data 0,0,0,2,1,2,0,0,0,0 data 0,1,0,2,1,0,1,0,0,0 rem 1.6 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,1,1,1,1,2,0 data 0,0,0,2,0,2,0,0,0,0 data 0,0,0,2,0,2,0,0,0,0 data 0,0,0,2,0,2,0,0,0,0 rem 1.7 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,0,0,0,0 data 0,0,0,0,0,0,1,2,2,2 data 0,0,0,0,0,1,1,0,0,2 data 0,0,0,1,1,1,0,0,0,2 data 0,0,0,1,2,2,0,0,0,1 death: cls for remove=1 to 1000 if sprite exist(remove) then delete sprite remove next remove cls rgb(10,0,0) for z=1 to 100 scale sprite 1,100-z sync next z delete sprite 1 xmsgd=100 y=100 x=xmsgd default#=3 sync on:sync rate 60 set text font "courier new",1 set text size 15 gosub msg_data2 r=55 ink rgb(200,200,200),0 box xmsgd-22,y-42,xmsgd+482,y+152 ink rgb(r,0,0),0 box xmsgd-20,y-40,xmsgd+480,y+150 ink rgb(255,255,255),0 text xmsgd-18,y-53,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" text xmsgd-18,y+146,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" cancel=0 skipthrough=0 for k=12 to 14 if mid$(msg$(k),len(msg$(k)))="1" then extra=1 if mid$(msg$(k),len(msg$(k)))="2" then extra=0 if upkey()=1 then skipthrough=1 for scan=1 to len(msg$(k)) for fadein=1 to 255 step 30 if cancel=1 then fadein=255 if extra=1 then ink rgb(fadein/4,fadein/2,fadein/5),0 else ink rgb(fadein,fadein,fadein),0 text x,y,mid$(msg$(k),scan) if spacekey()=1 then cancel=1 ink rgb(r,g,b),0 box len(msg$(k))*7+xmsgd-7,y+3,len(msg$(k))*7+xmsgd,y+12 sync if upkey()=1 then skipthrough=1 if skipthrough=1 then exit next fadein inc x,7 sync next scan inc y,12 x=xmsgd cancel=0 if skipthrough=1 then exit sync next k set text size 200 center text 320,240,"X" wait key for remove=1 to 100 if sprite exist(remove) then delete sprite remove if image exist(remove) then delete image remove next remove gosub start end msg_data2: rem Display how many lines are used here. rem NOTE- IF THERE IS AN ERROR WITH UNREAD TEXT, rem IT IS PROBABLY BECAUSE THE MESSAGES NUMBER IS TOO SMALL. messages=14 rem Your messages. Self explanatory. A 2 after the message is regular text, a 1 is Ninja Stickman talking. msg$(12)="Ninja Stickman... I see you have joined the dead.2" msg$(13)="Of the areas you entered, you collected "+str$(count)+"/"+str$(totalstar)+" stars2" msg$(14)="You have failed me.2" return end victory: cls rgb(0,255,0) for remove=1 to 300 if sprite exist(remove) then delete sprite remove next remove cls rgb(10,0,0) for z=1 to 100 scale sprite 1,100+z sync next z ink rgb(0,100,200),0 center text 320,240,"Ninja Stickman-" center text 320,260,"You have survived all the obstacles in front of you." center text 320,280,"You collected "+str$(count)+"/"+str$(totalstar)+" stars." center text 320,300,"Congratulations." for remove=1 to 300 if sprite exist(remove) then delete sprite remove next remove wait key scale sprite 1,100 hide sprite 1:hidden_ninja=1 gosub start return Other: return