Microsoft Small Basic
RSS

Navigation





Quick Search
»
Advanced Search »

PoweredBy

graphic car race

RSS
Modified on 2010/12/26 22:03 by 192.148.117.81 Categorized as Uncategorized
'subroutine draw road

'subroutine draw the car

'start loop 'draw the road 'draw the car 'accept input to drive car left /right 'redraw car 'time interval 'loops to top crash = 0 score = 0 Roadmove = 5

RL1x = 100 RL1y = 0 RL1xd = 100 RL1yd = 100 RR1x = 300 RR1y = 0 RR1xd = 300 RR1yd = 100

RL2x = 100 RL2y = 100 RL2xd = 100 RL2yd = 200 RR2x = 300 RR2y = 100 RR2xd = 300 RR2yd = 200

RL3x = 100 RL3y = 200 RL3xd = 100 RL3yd = 300 RR3x = 300 RR3y = 200 RR3xd = 300 RR3yd = 300

RL4x = 100 RL4y = 300 RL4xd = 100 RL4yd = 400 RR4x = 300 RR4y = 300 RR4xd = 300 RR4yd = 400

Sub directionchange

'random direction D = Math.GetRandomNumber(2) If D = 1 then 'make road go left

RL4x = RL3xd RL4y = RL3yd RL4xd = RL4x - Roadmove RL4yd = 400 RR4x = RR3xd RR4y = RR3yd RR4xd = RR4x - Roadmove RR4yd = 400

If RL4xd < 0 then RL4xd = RL4x + Roadmove RR4xd = RR4x + Roadmove endif

EndIf If D = 2 Then 'make road go right RL4x = RL3xd RL4y = RL3yd RL4xd = RL4x + Roadmove RL4yd = 400 RR4x = RR3xd RR4y = RR3yd RR4xd = RR4x + Roadmove RR4yd = 400 Endif endSub

counter = 0

Sub roaddraw GraphicsWindow.PenWidth = "10" GraphicsWindow.DrawLine(RL1x,RL1y,RL1xd,RL1yd) GraphicsWindow.DrawLine(RR1x,RR1y,RR1xd,RR1yd) GraphicsWindow.DrawLine(RL2x,RL2y,RL2xd,RL2yd) GraphicsWindow.DrawLine(RR2x,RR2y,RR2xd,RR2yd) GraphicsWindow.DrawLine(RL3x,RL3y,RL3xd,RL3yd) GraphicsWindow.DrawLine(RR3x,RR3y,RR3xd,RR3yd) GraphicsWindow.DrawLine(RL4x,RL4y,RL4xd,RL4yd) GraphicsWindow.DrawLine(RR4x,RR4y,RR4xd,RR4yd) counter=counter+1

GraphicsWindow.DrawEllipse(50,400-counter*20,10,10) GraphicsWindow.DrawEllipse(500,400-counter*20,10,10) If 400-counter*20 < 0 then counter = 0 endif 'If XC >= 120 and XC <= 80 and YC >= (320-counter*20) and YC <=(480-counter*20)then 'crash = 1 'EndIf





EndSub

Sub roadmovement RL1x = RL2x RL1xd = RL2xd RR1x = RR2x RR1xd = RR2xd

RL2x = RL3x

RL2xd = RL3xd

RR2x = RR3x

RR2xd = RR3xd

RL3x = RL4x

RL3xd = RL4xd RR3x = RR4x RR3xd = RR4xd EndSub

XC=150



Sub drawcar GraphicsWindow.PenColor = "red" GraphicsWindow.DrawRectangle(XC,YC,10,40) GraphicsWindow.PenColor = "black" GraphicsWindow.DrawRectangle(XC-8,YC,2,2) GraphicsWindow.DrawRectangle(XC-8,YC+20,2,2) GraphicsWindow.DrawRectangle(XC+18,YC,2,2) GraphicsWindow.DrawRectangle(XC+18,YC+20,2,2) EndSub

Sub movecar XC = GraphicsWindow.mousex YC = GraphicsWindow.mousey EndSub Sub drawsmash GraphicsWindow.PenColor = "red" GraphicsWindow.DrawBoundText(RL4x+20,200,60,"CRASH") GraphicsWindow.PenColor = "black" Sound.Play("C:\Users\Rob\Music\crash.mp3") EndSub Sub nextlevel RR4x = RR4x-30 RR4xd = RR4xd - 30 RR3x = RR4x RR3xd = RR4x

EndSub Sub level For i = 1 To 100 score=score + i GraphicsWindow.DrawBoundText(400,50,100,"SCORE = " + score) roaddraw() directionchange() graphicsWindow.Clear() GraphicsWindow.DrawBoundText(400,50,100,"SCORE = " + score) roaddraw()

roadmovement() directionchange() Sound.PlayClick() graphicsWindow.Clear() GraphicsWindow.DrawBoundText(400,50,100,"SCORE = " + score) roaddraw() drawcar() movecar() Program.Delay(100) If XC RR1x Then crash = 1 EndIf If crash = 1 Then drawsmash() Goto finish endif EndFor EndSub

For game = 1 To 5 GraphicsWindow.DrawBoundText(100,30,150,"GET READY....LEVEL "+game) If game = 1 Then Sound.Play("C:\Users\Rob\Music\level1.wma") Sound.play("C:\Users\Rob\Music\123.wma") EndIf If game = 2 Then Sound.Play("C:\Users\Rob\Music\level2.wma") EndIf If game = 3 Then Sound.Play("C:\Users\Rob\Music\level3.wma") EndIf If game = 4 Then Sound.Play("C:\Users\Rob\Music\level4.wma") EndIf If game = 5 Then Sound.Play("C:\Users\Rob\Music\level5.wma") EndIf Program.Delay(1000) level() nextlevel() Sound.PlayBellRing() finish: If crash = 1 Then GraphicsWindow.DrawBoundText(100,300,300,"I hope you do better next time....keep practicing.") goto exit endif endfor GraphicsWindow.DrawBoundText(100,300,150,"Well Done! You did it!")

exit:

ScrewTurn Wiki version 3.0.5.600. Some of the icons created by FamFamFam.