well i have added 3 powerups
-Force Direction Blockade
-Uranium Wave Bomb
-Time Distortion Unit
and fixed all known bugs(including so you can now actually restart the game)
well here is my last hope update(i have a good idea for my next win
)
set display mode 1024,768,32:set camera range 0,99999:color backdrop 0:hide mouse
make object cone 1,100
make object cone 2,100
autocam off
ink rgb(255,255,255),0:dot 1,1:get image 1,0,0,2,2
begin1:
position object 1,0,-2100,2500:show object 1:ink rgb(255,255,255),0
position object 2,0,-2100,2500:color object 2,rgb(255,0,255):ghost object on 2
for x=10 to 50
if object exist(x) then delete object x
next x
cls:set text size 18:set text font "tahoma"
speed#=1:score#=0:level#=1:move#=2:timeshot#=0:bombshot#=0:timeshot2#=0:bombshot2#=0:players#=0
hyper#=0:team#=0:FDB#=1:UWB#=1:TDU#=1:FDBTime#=0:TDUTime#=0:TDUUse#=0:player1#=0
Gosub Game:
Begin:
do
Gosub MovePlayer
loop
if players#>0 and players#<3
MovePlayer:
if leftkey()=1 and object position x(1)>-2300 then move object left 1,move#
if rightkey()=1 and object position x(1)<2300 then move object right 1,move#
endif
if players#>1 and players#<4
MovePlayer2:
if keystate(30)=1 and object position x(2)>-2300 then move object left 2,move#
if keystate(31)=1 and object position x(2)<2300 then move object right 2,move#
endif
Obstacles:
for x=10 to 20
if rnd(1000-level#*10)=1
if object exist(x)=0
make object cube x,300:color object x,rgb(0,0,255):ghost object on x
scale object x,rnd(500)+100,10,10
position object x,(rnd(4600)-2300),1000,2500
endif
endif
if object exist(x)=1
for y=1 to 2
if object exist(y)
if object collision(y,x)=1 and object visible(y)=1
if team#=1
repeat
set text size 72:center text screen width()/2,screen height()/2-70,"GAME OVER"
set text size 32:center text screen width()/2,screen height()/2,"Final Score: "+str$(score#)
set text size 32:center text screen width()/2,screen height()/2+30,"Press Space to Continue"
until spacekey()=1
goto begin1
endif
if team#=0
repeat
set text size 72:center text screen width()/2,screen height()/2-70,"Player "+str$(y)+" Lost"
set text size 32:center text screen width()/2,screen height()/2,"Final Score: "+str$(score#)
set text size 32:center text screen width()/2,screen height()/2+30,"Press Space to Continue"
until spacekey()=1
if object visible(2)=1
if y=2 then players#=1
endif
if object visible(1)=1
if y=1 then players#=3
endif
hide object y
if object visible(1)=0 and object visible(2)=0 then goto begin1
endif
endif
endif
next y
if object exist(100) and object exist(x)
if object collision(100,x) then delete object x:delete object 100
endif
if object exist(101) and object exist(x)
if object collision(101,x) then delete object x
endif
if object exist(102) and object exist(x)
if object collision(102,x) then delete object x:delete object 102
endif
if object exist(103) and object exist(x)
if object collision(103,x) then delete object x
endif
if object exist(40) and object exist(x)
if object collision(40,x) then yrotate object x,90
endif
if object exist(41) and object exist(x)
if object collision(41,x) then delete object x
endif
if object exist(x)
move object down x,speed#
if hyper#=1 then yrotate object x,rotate
inc rotate:if rotate=40+level#*20 then rotate=0
if object position y(x)<-2200 then delete object x:inc score#,level#+10
endif
endif
next x
Difficult:
if score#>level#*500 and speed#=1 then speed#=2:move#=2.5:inc level#
if score#>level#*500 and speed#=2 then speed#=3:move#=3.0:inc level#
if score#>level#*500 and speed#=3 then speed#=4:move#=3.5:inc level#
if score#>level#*500 and speed#=4 then speed#=5:move#=4.0:inc level#
if score#>level#*500 and speed#=5 then speed#=6:move#=4.5:inc level#
if score#>level#*500 and speed#=6 then speed#=7:move#=5.0:inc level#
if score#>level#*500 and speed#=7 then speed#=8:move#=5.5:inc level#
if players#>0 and players#<3
Shoot:
if returnkey()=1 and timeshot#<timer()-1000
timeshot#=timer():timeshoot#=timeshot#+1000
if object exist(100)=0
make object sphere 100,40,50,50
color object 100,rgb(0,255,0)
position object 100,object position x(1),object position y(1),2500
endif
endif
if object exist(100)=1
move object up 100,5
if object position y(100)>1000 then delete object 100
endif
endif
if players#>0 and players#<3
Bomb:
if shiftkey()=1 and bombshot#<timer()-10000
bombshot#=timer():bombshoot#=bombshot#+10000
if object exist(101)=0
make object sphere 101,400,50,50
color object 101,rgb(0,255,0)
position object 101,object position x(1),object position y(1),2500
endif
endif
if object exist(101)=1
move object up 101,5
if object position y(101)>1000 then delete object 101
endif
endif
if players#>1 and players#<4
Shoot2:
if keystate(33)=1 and timeshot2#<timer()-1000
timeshot2#=timer():timeshoot1#=timeshot2#+1000
if object exist(102)=0
make object sphere 102,40,50,50
color object 102,rgb(0,255,0)
position object 102,object position x(2),object position y(2),2500
endif
endif
if object exist(102)=1
move object up 102,5
if object position y(102)>1000 then delete object 102
endif
endif
if players#>1 and players#<4
Bomb2:
if keystate(34)=1 and bombshot2#<timer()-10000
bombshot2#=timer():bombshoot1#=bombshot2#+10000
if object exist(103)=0
make object sphere 103,400,50,50
color object 103,rgb(0,255,0)
position object 103,object position x(2),object position y(2),2500
endif
endif
if object exist(103)=1
move object up 103,5
if object position y(103)>1000 then delete object 103
endif
endif
Stats:
set text size 18
ink rgb(255,0,0),0:text 10,10,"Score:"+str$(score#):text 10,30,"Level:"+str$(level#)
if players#=2 then ink rgb(255,0,0),0:text 10,90,"----------------------------"
if players#>0 and players#<3
timeshoot2#=timeshoot#-timer():if timeshoot2#<0 then timeshoot2#=0
bombshoot2#=bombshoot#-timer():if bombshoot2#<0 then bombshoot2#=0
ink rgb(255,0,0),0:text 10,50,"Player 1 Can shoot in:"+str$(timeshoot2#)+"milliseconds"
ink rgb(255,0,0),0:text 10,70,"Player 1 Can bomb in:"+str$(bombshoot2#)+"milliseconds"
if player1#=1
ink rgb(255,0,0),0:text 10,90,"You Have:"+str$(FDB#)+"Force Direction Blockade(s)"
ink rgb(255,0,0),0:text 10,110,"You Have:"+str$(UWB#)+"Uranium Wave Bomb(s)"
ink rgb(255,0,0),0:text 10,130,"You Have:"+str$(TDU#)+"Time Distortion Unit(s)"
endif
endif
timeshoot0#=timeshoot1#-timer():if timeshoot0#<0 then timeshoot0#=0
bombshoot0#=bombshoot1#-timer():if bombshoot0#<0 then bombshoot0#=0
if players#=2
ink rgb(255,0,0),0:text 10,110,"Player 2 Can shoot in:"+str$(timeshoot0#)+"milliseconds"
ink rgb(255,0,0),0:text 10,130,"Player 2 Can bomb in:"+str$(bombshoot0#)+"milliseconds"
endif
if players#=3
ink rgb(255,0,0),0:text 10,50,"Player 2 Can shoot in:"+str$(timeshoot0#)+"milliseconds"
ink rgb(255,0,0),0:text 10,70,"Player 2 Can bomb in:"+str$(bombshoot0#)+"milliseconds"
endif
PowerUps:
if player1#=1
if rnd(20000)=1
rndnum=rnd(5)
if rndnum>-1 and rndnum<2
if object exist(30)=0
make object sphere 30,300:scale object 30,100,40,10:color object 30,rgb(251,244,0)
position object 30,rnd(4600)-2300,1000,2500
endif
endif
if rndnum=3
if object exist(31)=0
make object cube 31,300:scale object 31,100,40,10:color object 31,rgb(251,244,0)
position object 31,rnd(4600)-2300,1000,2500
endif
endif
if rndnum>3 and rndnum<6
if object exist(32)=0
make object cylinder 32,300:scale object 32,100,40,10:color object 32,rgb(251,244,0)
position object 32,rnd(4600)-2300,1000,2500
endif
endif
endif
if object exist(30)=1
move object down 30,2
if object position y(30)<-2200 then delete object 30
if object exist(30) and object exist(1)
if object collision(30,1)
inc FDB#:delete object 30
endif
endif
endif
if object exist(31)=1
move object down 31,2
if object position y(31)<-2200 then delete object 31
if object exist(31) and object exist(1)
if object collision(31,1)
inc UWB#:delete object 31
endif
endif
endif
if object exist(32)=1
move object down 32,2
if object position y(32)<-2200 then delete object 32
if object exist(32) and object exist(1)
if object collision(32,1)
inc TDU#:delete object 32
endif
endif
endif
if FDB#>0
if upkey()=1 and object exist(40)=0
FDBTime#=timer():dec FDB#
make object box 40,4600,30,10:position object 40,0,800,2500:color object 40,rgb(255,0,0)
endif
endif
if object exist(40)
if FDBTime#<timer()-10000 then delete object 40
endif
if UWB#>0
if downkey()=1 and object exist(40)=0
dec UWB#
make object sphere 41,100,30,10:position object 41,0,0,2500:color object 41,rgb(255,0,255):ghost object on 41
endif
endif
if object exist(41)
scale object 41,sizex,sizey,10:inc sizex:inc sizey
if object size x(41)>4600 then delete object 41
endif
if TDU#>0
if controlkey()=1 and TDUUse#=0
TDUTime#=timer():dec TDU#:inc TDUUse#
speed#=speed#/2
endif
endif
if TDUUse#=1
if TDUTime#<timer()-10000 then speed#=speed#*2:TDUUse#=0
endif
endif
Stars:
for s=1 to 100
if sprite exist(s)=0
sprite s,rnd(1024),rnd(768),1
endif
if sprite exist(s)=1
move sprite s,-.1
if sprite y(s)>768 then sprite s,rnd(1024),0,1
endif
next s
return
Game:
do
set text size 18:center text screen width()/2,40,"Controls"
set text size 18:center text screen width()/2,60,"^^^^^"
set text size 18:center text screen width()/2,80,"Player 1"
set text size 18:center text screen width()/2,100,"______________________________"
set text size 18:center text screen width()/2,120,"- Move with left and right arrow keys"
set text size 18:center text screen width()/2,140,"- Shoot with enter and bomb with shift"
set text size 18:center text screen width()/2,160,"Player 2"
set text size 18:center text screen width()/2,180,"___________________________________"
set text size 18:center text screen width()/2,200,"- Move left with -a- and move right with -s-"
set text size 18:center text screen width()/2,220,"- Shoot with -f- and bomb with -g-"
set text size 18:center text screen width()/2,240,"----------------------------------------------------------------------------------------------------------------------------------------------------"
set text size 18:center text screen width()/2,260,"Modes"
set text size 18:center text screen width()/2,280,"^^^^"
set text size 18:center text screen width()/2,300,"You can play one or two players"
set text size 18:center text screen width()/2,320,"2 Player Modes"
set text size 18:center text screen width()/2,340,"_________________________________________________"
set text size 18:center text screen width()/2,360,"- Play against each other, if one player dies the other continues"
set text size 18:center text screen width()/2,380,"- Play on a team, if one play dies you both go down"
set text size 18:center text screen width()/2,400,"1 Player Modes"
set text size 18:center text screen width()/2,420,"_______________________"
set text size 18:center text screen width()/2,440,"- Traditional Mode, just play"
set text size 18:center text screen width()/2,460,"- Hyper Mode, pieces go crazy making it harder to dodge and hit"
set text size 18:center text screen width()/2,480,"----------------------------------------------------------------------------------------------------------------------------------------------------"
set text size 18:center text screen width()/2,500,"Rules"
set text size 18:center text screen width()/2,520,"^^^^"
set text size 18:center text screen width()/2,540,"You are the player at the bottom, you can move from side to side and"
set text size 18:center text screen width()/2,560,"dodge the pieces. You can shoot and bomb the pieces but you only get"
set text size 18:center text screen width()/2,580,"points for piecies that make it to the bottom. Level increases every"
set text size 18:center text screen width()/2,600,"500 points. Good Luck."
set text size 26:center text screen width()/2,660,"PRESS ENTER TO CONTINUE"
if returnkey()=1 then exit
loop
sleep 400
do
set text size 18:center text screen width()/2,260,"PowerUps"
set text size 18:center text screen width()/2,280,"^^^^^^"
set text size 18:center text screen width()/2,300,"Only available in 1 player mode"
set text size 18:center text screen width()/2,340,"Force Direction Blockade(FDB)-A blockade that will change the direction of the pieces"
set text size 18:center text screen width()/2,360,"Uranium Wave Bomb(UWB)-A huge bomb that will destroy everything in it's path"
set text size 18:center text screen width()/2,380,"Time Distortion Unit(TDU)-A time unit to slow down the pieces"
set text size 18:center text screen width()/2,420,"FDB-Are small ellipses(Launch with upkey)"
set text size 18:center text screen width()/2,440,"UWB-Are small rectangles(Launch with downkey)"
set text size 18:center text screen width()/2,460,"TDU-Are small cylinders(Launch with right control)"
set text size 26:center text screen width()/2,520,"PRESS ENTER TO PLAY"
if returnkey()=1 then exit
loop
do
set text size 18:center text screen width()/2,300,"Press -1- for One Player"
set text size 18:center text screen width()/2,330,"Press -2- for Two Player"
if keystate(2)=1 then players#=1:player1#=1:hide object 2:exit
if keystate(3)=1 then exit:show object 1:show object 2
loop
if players#=1
sleep 400
do
set text size 18:center text screen width()/2,300,"Press -1- for Traditional Mode"
set text size 18:center text screen width()/2,330,"Press -2- for Hyper Mode"
if keystate(2)=1 then goto Begin
if keystate(3)=1 then hyper#=1:goto Begin
loop
endif
sleep 400
do
set text size 18:center text screen width()/2,300,"Press -1- to play against Each Other"
set text size 18:center text screen width()/2,330,"Press -2- to play on a Team"
if keystate(2)=1 then players#=2:goto Begin
if keystate(3)=1 then players#=2:team#=1:goto Begin
loop
My Website: