| I need some quick help please, just in case i posted my whole code, i know it is a piece of poo and is all straight from forums,archives and samples but.... when i run it it says wend without while. I have recieved this bug before but i do not know how to fix it this time. Thank you for your help! 
 
 Global info1$="Driver"
Include "start.bb"
Global zp#=1
Global wheels[4]
FPS = 50
period = 1000 / FPS
Global time = MilliSecs (); - period
Global fl=0.2
Global f2=40
Global f3=46
Global d1=1
Global d2=1
Global speed1=0
Global s12
Global toplane=0
;plane
;Const GRAVITY#=-.001
;tank
;Const GRAVITY#=-.07
;car
Global watermesh=LoadMesh("20x20quad.3ds") : 
Global surface=CountSurfaces(watermesh)
surface=GetSurface(watermesh,1)
Global VertexCount=CountVertices(surface)
Global s12=Load3DSound("sound/slow one high RPM.mp3")
Const GRAVITY#=-.02
Const BODY=1,WHEEL=2,SCENE=3,DRAG=4,PLANE=5
Collisions BODY,SCENE,2,3
Collisions WHEEL,SCENE,2,3
Collisions BODY,WATERM,2,3
Collisions WHEEL,WATERM,2,3
Collisions WHEEL,WATERT,2,3
Collisions DRAG,SCENE,2,3
Collisions SCENE,DRAG,2,3
Collisions DRAG,BODY,2,3
Collisions DRAG,WHEEL,2,3
Collisions BODY,DRAG,2,3
Collisions WHEEL,DRAG,2,3
Collisions WHEEL,PlANE,2,3
Collisions PLANE,WHEEL,2,3
Collisions BODY,PLANE,2,3
Collisions PLANE,BODY,2,3
Collisions SCENE,PLANE,2,3
Collisions PLANE,SCENE,2,3
Type Vertices
	Field x#
	Field y#
	Field z#
End Type
;PlaySound s1
mesh_skybox = MakeSkyBox("Data\sky") 
Function MakeSkyBox( file$ )
	m=CreateMesh()
	;front face
	b=LoadBrush( file$+"_FR.bmp",49 )
	s=CreateSurface( m,b )
	AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0
	AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1
	AddTriangle s,0,1,2:AddTriangle s,0,2,3
	FreeBrush b
	;right face
	b=LoadBrush( file$+"_LF.bmp",49 )
	s=CreateSurface( m,b )
	AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0
	AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1
	AddTriangle s,0,1,2:AddTriangle s,0,2,3
	FreeBrush b
	;back face
	b=LoadBrush( file$+"_BK.bmp",49 )
	s=CreateSurface( m,b )
	AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0
	AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1
	AddTriangle s,0,1,2:AddTriangle s,0,2,3
	FreeBrush b
	;left face
	b=LoadBrush( file$+"_RT.bmp",49 )
	s=CreateSurface( m,b )
	AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0
	AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1
	AddTriangle s,0,1,2:AddTriangle s,0,2,3
	FreeBrush b
	;top face
	b=LoadBrush( file$+"_UP.bmp",49 )
	s=CreateSurface( m,b )
	AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0
	AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1
	AddTriangle s,0,1,2:AddTriangle s,0,2,3
	FreeBrush b
	ScaleMesh m,100,100,100
	FlipMesh m
	EntityFX m,9
	EntityOrder m,10
	Return m
	
End Function
	
RotateMesh watermesh,90,0,0 
RotateEntity watermesh,-90,0,0
ScaleEntity watermesh,10,10,10
EntityShininess watermesh,0.2
PositionEntity watermesh,0,5,0
texd=LoadTexture( "dragon.bmp" )
dragon=LoadMD2( "dragon.md2" )
EntityTexture dragon,texd
PositionEntity dragon,-140,72,-93
ScaleEntity dragon,0.1,0.1,0.1
TurnEntity dragon,0,150,0
EntityType dragon,DRAG
AnimateMD2 dragon,1,0.2,f2,f3
;0,40  : idle
;40,46 : run
;46,54 : attack
;54,58 : paina
;58,62 : painb
;62,66 : painc
;66,72 : jump
;72,84 : flip
dragonb=CreateSphere()
ScaleEntity dragonb,1,1,1
EntityType dragonb,DRAG
EntityAlpha dragonb,0
ramptex=LoadTexture("steel.bmp")
ScaleTexture ramptex,0.5,0.5
ramp=CreateCube()
ScaleEntity ramp,5,3,10
PositionEntity ramp,-170,72,-90
RotateEntity ramp,-30,0,0
EntityTexture ramp,ramptex
EntityType ramp,SCENE
ramp1=CreateCube()
ScaleEntity ramp1,5,3,15
PositionEntity ramp1,-170,72,-40
RotateEntity ramp1,0,0,0
EntityTexture ramp1,ramptex
EntityType ramp1,SCENE
ramp2=CreateCube()
ScaleEntity ramp2,4.9,3,15
PositionEntity ramp2,-170,76,-35
RotateEntity ramp2,-30,0,0
EntityTexture ramp2,ramptex
EntityType ramp2,SCENE
ramp3=CreateCube()
ScaleEntity ramp3,5,3,25
PositionEntity ramp3,-170,82,-5
RotateEntity ramp3,0,0,0
EntityTexture ramp3,ramptex
EntityType ramp3,SCENE
ramp4=CreateCube()
ScaleEntity ramp4,5,3,1000
PositionEntity ramp4,-160,72,-5
RotateEntity ramp4,-30,0,0
EntityTexture ramp4,ramptex
EntityType ramp4,SCENE
ramp5=CreateCube()
ScaleEntity ramp5,200,1,1000
PositionEntity ramp5,-370,200,500
RotateEntity ramp5,0,0,0
EntityTexture ramp5,ramptex
EntityType ramp5,SCENE
;terr=LoadMesh("terrain 1.3ds")
terr=LoadTerrain( "heightmap_256.bmp" )
ScaleEntity terr,1000/TerrainSize(terr),70,1000/TerrainSize(terr)
TerrainDetail terr,1000,True
TerrainShading terr,True
;ScaleEntity terr,1,1,1
PositionEntity terr,-500,0,-500
tex=LoadTexture( "terrain-1.jpg" )
ScaleTexture tex,50,50
EntityTexture terr,tex
EntityType terr,SCENE
a747=LoadMesh("747.x")
ScaleEntity a747,20,20,20
RotateEntity a747,3,5,2
PositionEntity a747,1,3,10
EntityType a747,PLANE
water=CreatePlane()
PositionEntity water,1,2,1
EntityAlpha water,0.8
wt=LoadTexture( "water.bmp" )
ScaleTexture wt,50,50
EntityTexture water,wt
EntityType water,WATER
;wm=LoadTexture( "watermap.bmp")
;wl2=CreatePlane()
;PositionEntity wl2,1,1.9,1
;EntityAlpha wl2,0.8
;EntityTexture wl2,wm
terrp=CreatePlane()
PositionEntity terrp,1,0.1,1
EntityTexture terrp,tex
EntityType terrp,SCENE
;tlight1=CreateLight(2)
;LightColor tlight1,255,194,14
;skyp=CreatePlane()
;PositionEntity skyp,1,70,1
;skypt=LoadTexture("cloud_2.bmp")
;ScaleTexture skypt,1000,1000
;EntityFX skyp,1
;EntityTexture skyp,skypt
;sky=CreateSphere(32)
;ScaleEntity sky,300,300,300
;skyt=LoadTexture("cloud_2.bmp")
;ScaleTexture skyt,1000,1000
;EntityAlpha sky,.5
;EntityFX sky,1
;EntityTexture sky,skyt
;ScaleTexture skyt,50,50
;FlipMesh sky
carch=CreateSphere(32)
EntityColor carch,0,255,0
car=LoadMesh("jeep.3ds")
tlight=LoadTexture("jeep1l.jpg")
reglight=LoadTexture("jeep1.jpg")
;RotateEntity car,40,0,50
ScaleMesh car,1,1,-1
FlipMesh car
FitMesh car,-1.5,-1,-3,3,2,6
PositionEntity car,0,15,0
;EntityShininess car,1
EntityType car,BODY
;PositionEntity tlight1,EntityX(car)-3,EntityY(car),EntityZ(car)-1
;Global wheels[4]
cnt=1
For z#=1.5 To -1.5 Step -3
For x#=-1 To 1 Step 2
	;wheels[cnt]=CreateSphere( 8,car )
	wheels[cnt]=LoadMesh("wheel.3ds",car )
	EntityAlpha wheels[cnt],1
	ScaleEntity wheels[cnt],.35,.35,.35
	EntityRadius wheels[cnt],.7
	PositionEntity wheels[cnt],x,-1.5,z
	EntityType wheels[cnt],WHEEL
	cnt=cnt+1
Next
Next
light=CreateLight()
TurnEntity light,45,45,0
target=CreatePivot( car )
PositionEntity target,0,5,-12
camera=CreateCamera()
PositionEntity camera,1000,1000,1000
	CameraClsColor camera,0,192,255
	;CameraFogColor camera,0,192,255
	CameraRange camera,1,3000
	CameraZoom camera,zp#
	CameraFogMode camera,1
	CameraFogMode camera,1
CameraFogRange camera,0,750
CameraFogColor camera,222,252,255
;cam2=CreateCamera()
;PositionEntity cam2,0,300,0
;CameraViewport cam2,100,GraphicsHeight(),GraphicsWidth()-100,GraphicsHeight()-100
AmbientLight 255,255,255
speed#=0
x_vel#=0:prev_x#=EntityX( car )
y_vel#=0:prev_y#=EntityY( car )
z_vel#=0:prev_z#=EntityZ( car )
	;Repeat
	
	;Repeat
	;	elapsed = MilliSecs () - time
	;Until elapsed
	;ticks = elapsed / period
	
	;tween# = Float (elapsed Mod period) / Float (period)
	
;	For framelimit = 1 To ticks
;		If framelimit = ticks Then CaptureWorld
;		time = time + period
		;UpdateGame ()
		;UpdateWorld
		;PositionEntity water, Sin (time * 0.01) * 10, EntityY (water) + (Sin (time * 0.05) * 0.5) * 0.2, Cos (time * 0.02) * 10
;		Next
	
	
While Not KeyHit(1)
	If EntityCollided(car,DRAG) 
TurnEntity car,0,0,3
EndIf
	;AnimateMD2 dragon,1,.05,f1,f2
;If EntityInView ( dragon,camera )=True
;start=1-start 
 ;AnimateMD2 dragon,1,0.1,32,46
;EndIf
;PositionEntity water, Sin (time * 0.01) * 10, EntityY (water) + (Sin (time * 0.05) * 0.5) * 0.2, Cos (time * 0.02) * 10
Dim Vertex.Vertices(VertexCount)
For A=0 To VertexCount-1
Vertex(a) = New Vertices
Vertex(a)\x#=VertexX#(surface,a)
Vertex(a)\y#=VertexY#(surface,a)
Vertex(a)\z#=VertexZ#(surface,a)
Next
Repeat
	;align car to wheels
	zx#=(EntityX( wheels[2],True )+EntityX( wheels[4],True ))/2
	zx=zx-(EntityX( wheels[1],True )+EntityX( wheels[3],True ))/2
	zy#=(EntityY( wheels[2],True )+EntityY( wheels[4],True ))/2
	zy=zy-(EntityY( wheels[1],True )+EntityY( wheels[3],True ))/2
	zz#=(EntityZ( wheels[2],True )+EntityZ( wheels[4],True ))/2
	zz=zz-(EntityZ( wheels[1],True )+EntityZ( wheels[3],True ))/2
	AlignToVector car,zx,zy,zz,1
	
	zx#=(EntityX( wheels[1],True )+EntityX( wheels[2],True ))/2
	zx=zx-(EntityX( wheels[3],True )+EntityX( wheels[4],True ))/2
	zy#=(EntityY( wheels[1],True )+EntityY( wheels[2],True ))/2
	zy=zy-(EntityY( wheels[3],True )+EntityY( wheels[4],True ))/2
	zz#=(EntityZ( wheels[1],True )+EntityZ( wheels[2],True ))/2
	zz=zz-(EntityZ( wheels[3],True )+EntityZ( wheels[4],True ))/2
	AlignToVector car,zx,zy,zz,3
	
	;calculate car velocities	
	cx#=EntityX( car ):x_vel=cx-prev_x:prev_x=cx
	cy#=EntityY( car ):y_vel=cy-prev_y:prev_y=cy
	cz#=EntityZ( car ):z_vel=cz-prev_z:prev_z=cz
	
	;resposition wheels
	cnt=1
	For z=1.5 To -1.5 Step -3
	For x=-1 To 1 Step 2
;		PositionEntity wheels[cnt],0,0,0
;		ResetEntity wheels[cnt]
		PositionEntity wheels[cnt],x,-1,z
		cnt=cnt+1
	Next
	Next
	
	;car lights
	;PositionEntity tlight,EntityX(car),EntityY(car),EntityZ(car)
;water
	
;dragon
PositionEntity dragonb,EntityX(dragon),EntityY(dragon),EntityZ(dragon)
PositionEntity dragon,EntityX(dragonb),EntityY(dragonb),EntityZ(dragonb)
MoveEntity dragon,0,-0.7,0
TurnEntity dragon,0,0.1,0
;If EntityX(dragon)<-300
;d1=1
;d2=0
;Else If EntityX(dragon)>-300
;d1=1
;d2=-1
;Else If EntityX(dragon)<-250
;d1=1
;d2=0
;EndIf
TurnEntity dragon,0,d2,0
MoveEntity dragon,0,0,d1
;sky
	PositionEntity mesh_skybox,EntityX(camera,1),EntityY(camera,1),EntityZ(camera,1)
	TurnEntity mesh_skybox,0,0.01,0
	;move car
	If EntityCollided( car,WATERM )
	 MoveEntity car,2,0,2
	TurnEntity car,0,3,1
	EndIf
	
	If EntityCollided(car,PLANE)
	 toplane=1 EntityColor car,255,255,255
	EndIf
	
	If EntityRoll#(car)>75
	EntityColor car,10,10,10
	toplane=1
	EndIf
	;cam2 control
	;PositionEntity cam2,EntityX(car),800,EntityZ(car)
	;PositionEntity carch,EntityX(car),750,EntityZ(car) 
	
	;PositionEntity sky,EntityX(car),EntityY(car),EntityZ(car)
	MoveEntity water,0.01,0,0.08
	
	If EntityCollided( car,SCENE )
	If KeyDown(54)
		speed1=speed1+0.4
			If speed1>6 speed1=6
			If KeyDown(203) TurnEntity car,0,3,0:;rotate
	        If KeyDown(205) TurnEntity car,0,-3,0
			EndIf
	If KeyDown(200)
		;EntityTexture car,reglight
	;PlaySound s12
			speed=speed+.02
			;If speed>1.1 speed=speed+0.1
			If speed>1.1 speed=1.1
			;If speed>3 speed=speed+0.09
			;If speed>5 speed=speed+0.03
			If KeyDown(203) TurnEntity car,0,3,0
	        If KeyDown(205) TurnEntity car,0,-3,0
		Else If KeyDown(208)
		;EntityTexture car,tlight
			speed=speed-.02
			If speed<-.5 speed=-.5
		Else
			speed=speed*.9
		
		;Else
		;	speed=speed*.9
		EndIf
	;RPM
If KeyHit(2)
PlaySound s12
;s1=PlayMusic("sound/slow one high RPM.mp3")
ChannelPlaying(s12)=0 MoveEntity car,0,0,20
EndIf
		
		MoveEntity car,0,0,speed
		TranslateEntity car,0,GRAVITY,0
	Else
		TranslateEntity car,x_vel,y_vel+GRAVITY,z_vel
	EndIf
	
	
	
	;update camera
	If speed>=0	
		dx#=EntityX( target,True )-EntityX( camera )
		dy#=EntityY( target,True )-EntityY( camera )
		dz#=EntityZ( target,True )-EntityZ( camera )
		TranslateEntity camera,dx*.1,dy*.1,dz*.1
	EndIf
	PointEntity camera,car
	;PointEntity cam2,car
	
	
    UpdateWater()
	UpdateWorld
	RenderWorld
	Color 0,255,0
	Text 0,0,"Coordinates Car"
	Text 0,20," X : "+EntityX(car)
	Text 0,40," Y : "+EntityY(car)
	Text 0,60," Z : "+EntityZ(car)
	Text 150,20,"Roll "+EntityRoll#(car)
	Text 150,40,"Yaw "+EntityYaw#(car)
	Text 150,60,"Pitch "+EntityPitch#(car)
	Text 275,0,"Coordinates Dragon"
	Text 275,20," X : "+EntityX(dragon)
	Text 275,40," Y : "+EntityY(dragon)
	Text 275,60," Z : "+EntityZ(dragon)
	Text 400,20,"Roll "+EntityRoll#(dragon)
	Text 400,40,"Yaw "+EntityYaw#(dragon)
	Text 400,60,"Pitch "+EntityPitch#(dragon)
	Text  0,70,"Car Speed : "+speed
	
	Flip
		
	
Wend
End
		Function UpdateWater()
; Create a wave effect by moving all the vertices in the mesh up and down using Sin
; Try editing:
; Freq#=MilliSecs()/10 
;                   ^ The Bigger the divide, the slower the water moves
; Vertex(a)\z#=Sin(freq+Vertex(a)\x#*300+Vertex(a)\y#*400)*1.125
;                                                         ^ The Bigger the Multiply The Higher 
;                                                           the waves will be, lower = smaller
For a=0 To VertexCount-1 
Freq#=MilliSecs()/10
Vertex(a)\z#=Sin(freq+Vertex(a)\x#*300+Vertex(a)\y#*400)*1.125
VertexCoords surface,a,Vertex(a)\x#,Vertex(a)\y#,Vertex(a)\z#
Next
UpdateNormals watermesh
End Function
 
 |