Jump the Game by Anonymous Coder7th Mar 2008 8:08
|
---|
Summary complete applications Description Code ` This code was downloaded from The Game Creators ` It is reproduced here with full permission ` http://www.thegamecreators.com rem ******************* Çukur Atlatma ********************** rem ************* Programmer By Nuh Burak Özen ************* rem ************* 07/03/2008 Istanbul / Turkey ************* _MENU: rem Menu yapılıyor set display mode 640,480,32 cls rgb(0,0,0) do ink rgb(255,0,0),0 box 230,120,430,160 box 230,200,430,240 if mousex()>230 and mousex()<430 and mousey()>120 and mousey()<160 ink rgb(0,255,0),0 box 230,120,430,160 if mouseclick()=1 then goto new_game endif if mousex()>230 and mousex()<430 and mousey()>200 and mousey()<240 ink rgb(0,255,0),0 box 230,200,430,240 if mouseclick()=1 then end endif ink rgb(255,255,255),0 set text font "Harrington" set text size 60 text 130,10,"ÇUKUR ATLATMA" set text font "Viner Hand ITC" set text size 18 text 300,130,"NEW GAME" text 310,210,"EXIT" sync loop return new_game: rem matriks kaplanıyor cls rgb(0,255,0) for x=0 to 1024 dot rnd(32),rnd(32),rgb(0,125,0) next x get image 1,0,0,32,32 rem oyuncu yapılıyor make object cube 1,1 color object 1,rgb(255,0,0) rem düşman yapılıyor ink rgb(255,0,0),rgb(255,255,0) cls rgb(255,255,0) circle 16,16,16 dot 9,5 ; dot 23,5 line 9,23,23,23 get image 3,0,0,32,32 make object cube 2,1 texture object 2,3 rem matriks ve yarık yapılıyor make matrix 1,500,500,100,100 randomize matrix 1,2 prepare matrix texture 1,1,1,1 for x=1 to 99 for y=1 to 99 yes=rnd(20) if yes=10 set matrix height 1,x,y,-70 set matrix height 1,x,y+1,-70 set matrix height 1,x+1,y,-70 set matrix height 1,x+1,y+1,-70 endif next y next x update matrix 1 rem setup cls rgb(255,0,0) for x=0 to 512 dot rnd(32),rnd(32),rgb(255,255,0) next x get image 2,0,0,32,32 make particles 1,2,100,2 set particle floor 1,0 set particle life 1,5 color backdrop rgb(0,0,0) set ambient light 0 set point light 0,0,100,0 color light 0,255,255,255 set light range 0,50 x#=260 z#=260 enemx#=265 enemz#=265 direction#=270 y#=get ground height(1,x#,z#) gravity#=0 power=1000 lives=5 sync on sync rate 60 do if LIVES<0 then gosub end_game if power<1000 then power=power+1 gosub _control_physics gosub _control_player gosub _control_camera gosub _control_effects gosub _control_enemy text 0,0,"Enerji:"+str$(INT(power/10))+"%" if lives>=3 then text 0,15,"size ait "+str$(lives)+" hak." if lives=2 then text 0,15,"Dikkat "+str$(lives)+" hak!" if lives=1 then text 0,15,"Son hak!" if lives=0 then text 0,15,"Uh Oh!, oyun bitti!" Sync loop _control_player: powerup=0 if keystate(17)=1 and power>=0 then powerup=1 rem decrease the power of your jump if jumpower#>0 then jumpower#=jumpower#-0.005 rem move player forwards if upkey()=1 and move=1 x#=newxvalue(x#,a#,0.2) z#=newzvalue(z#,a#,0.2) if powerup=1 x#=newxvalue(x#,a#,0.3) z#=newzvalue(z#,a#,0.3) power=power-5 endif endif if downkey()=1 endif if leftkey()=1 then a#=a#-2 if rightkey()=1 then a#=a#+2 rem sıçrama if spacekey()=1 and move=1 if y#=g# then jumpower#=0.4 endif y#=y#+jumpower# yrotate object 1,a# position object 1,x#,y#+0.5,z# rem duraklat! move=1 frontx#=newxvalue(x#,a#,1) frontz#=newzvalue(z#,a#,1) fronth#=get ground height(1,frontx#,frontz#) if fronth#-y#>0.5 then move=0 if y#<-60 x#=rnd(500) z#=rnd(500) y#=6 lives=lives-1 endif return _control_camera: rem kamera atarları if y#>-5 cx#=newxvalue(x#,a#,-10) cz#=newzvalue(z#,a#,-10) else cx#=x# cz#=z# endif position camera cx#,6,cz# point camera x#,y#,z# return _control_physics: rem fizik motoru g#=get ground height(1,x#,z#) if y#>g# gravity#=gravity#+0.005 y#=y#-gravity# else y#=g# gravity#=0 endif return _control_effects: position light 0,cx#,camera position y(),cz# point light 0,x#,y#,z# if powerup=1 position particle emissions 1,x#,y#,z# else position particle emissions 1,-100000,-100000,-100000 endif return _control_enemy: enemt#=ATANFULL(x#-enemx#,z#-enemz#) yrotate object 2,enemt# enemlengthx#=(x#-enemx#) enemlengthz#=(z#-enemz#) enemcross#=((enemlengthx#*enemlengthx#)+(enemlengthz#*enemlengthz#)) enemdist#=sqrt(enemcross#) enemfront#=get ground height(1,newxvalue(enemx#,enemt#,1),newzvalue(enemz#,enemt#,1)) rem düşamanın hareketleri if enemdist#>5 if enemfront#>-1 enemx#=newxvalue(enemx#,enemt#,0.1) enemz#=newzvalue(enemz#,enemt#,0.1) else rem make the enemy jump if enemjump#<0 then enemjump#=3 if enemjump#>0 enemx#=newxvalue(enemx#,enemt#,0.1) enemz#=newzvalue(enemz#,enemt#,0.1) endif endif endif if enemjump>0 enemjump#=enemjump#-0.001 enemy#=enemjump# else enemy#=get ground height(1,enemx#,enemz#)+0.5 endif position object 2,enemx#,enemy#,enemz# return end end_game: for x=1 to 10 if object exist(x)=1 then delete object x if image exist(x)=1 then delete image x if matrix exist(x)=1 then delete matrix x next x GOSUB _MENU return |