Hi people. I am having a major problem here in getting my file requester to work. When I run the code and press L to load an object I get the error "Variable must be a type" for some reason. It highlights the code:
If KeyDown(200) Then MoveEntity m\entity,0,0,.1
As being the offending code. For some reason though.
I can't figure this one out its driving me insane :(
So the thing is, it shouldn't be flagging me an error to begin with as I haven't even had the chance to load a file for it to check in the first place :(
Here is my code. I would be very grateful if someone can help me out here.
Thanks for any help guys :)
Ash
If KeyDown(200) Then MoveEntity m\entity,0,0,.1
As being the offending code. For some reason though.
I can't figure this one out its driving me insane :(
So the thing is, it shouldn't be flagging me an error to begin with as I haven't even had the chance to load a file for it to check in the first place :(
Here is my code. I would be very grateful if someone can help me out here.
Graphics3D 800,600 SetBuffer BackBuffer() ;file requester code Include "bin\file_request.bb" Global file_path$="C:" ;file$ = getopenfile$("Select file...",file_path$,"3DS file"+Chr(0)+"*.3ds"+Chr(0)+"Blitz 3D file"+Chr(0)+"*.b3d"+Chr(0)) Global L_KEY = 38 Global M_KEY = 50 Global W_KEY = 17 Global FULL_SCREEN_KEY = 33 Global view_x = 0;150 Global view_y = 0;100 Global view_width = 500 Global view_height = 300 Global FULL_SCREEN = 0 ;Used to resize the window Global MOVE = 0 ;Used to control the movement of objects Global WIRE = 0 ;Used to toggle wireframe mode on/off Global cam = CreateCamera() PositionEntity cam,0,2,-4 AmbientLight 175,175,175 Global light = CreateLight(1) Global plane = CreatePlane() ;file$= getopenfile$("Please select a texture for the grid..","file_path$","Bitmap"+Chr(0)+"*.bmp"+Chr(0)+"Jpeg"+Chr(0)+"*.jpg"+Chr(0)+"PNG"+Chr(0)+"*.png"+Chr(0)+"All"+Chr(0)+"*"+Chr(0)) plane_tex = LoadTexture("textures/plane_tex.png") EntityTexture plane,plane_tex ;Global ball = CreateSphere() ;PositionEntity ball,0,MeshHeight(ball)/2,0 Global bg = LoadImage("img\bg.png") Global font = LoadFont("georgia.tff",18,1) SetFont font ;Types Type mesh Field entity Field x# Field y# Field z# End Type ClsColor 150,180,255 While Not KeyHit(1) Cls DrawImage bg,0,0 WireFrame WIRE ;TurnEntity cam,0,.2,0 If KeyHit(L_KEY) Then load_object If KeyHit(M_KEY) Then MOVE = 1-MOVE If KeyHit(W_KEY) Then WIRE = 1-WIRE If KeyHit(FULL_SCREEN_KEY) Then FULL_SCREEN = 1-FULL_SCREEN check_move UpdateWorld RenderWorld Rect view_x,view_y,view_width,view_height,0 resize_view Flip Wend End Function trim_file_path(file$) For loop = Len(file$) To 1 Step - 1 If Mid$(file$,loop,1) = "" And flag = 0 Then flag = 1 length = loop End If Next If flag = 1 Then file_path = Mid$(file,1,length) End If Return file End Function Function load_object() file$ = getopenfile$("Select file...",file_path$,"3DS file"+Chr(0)+"*.3ds"+Chr(0)+"Blitz 3D file"+Chr(0)+"*.b3d"+Chr(0)) If file$<>0 m.mesh = New mesh m\entity = LoadMesh(file$) m\x = 0 m\y = 0 m\z = 0 FitMesh m\entity,m\x,m\y,m\z,0.9,0.9,0.9 PositionEntity m\entity,m\x,m\y,m\z EndIf End Function Function resize_view() If FULL_SCREEN = 1 view_x = 0 view_y = 15 view_width = 800 view_height = 550 Text view_x+1,view_y+1,"Kitchen Designer" Text 0,565,"L - Load Object" Text 0,585,"F - Normal Screen" If MOVE<>0 Color 0,255,50 Else Color 255,255,255 EndIf Text 200,565,"M - Move Mode" Color 255,255,255 If WIRE<>0 Color 255,50,0 Else Color 255,255,255 EndIf Text 200,585,"W - Wireframe On/Off" Color 255,255,255 Text 400,565,"ESC - Exit" ElseIf FULL_SCREEN = 0 view_x = 0;150 view_y = 0;100 view_width = 500 view_height = 300 Text view_x+1,view_y+1,"Kitchen Designer" Text view_x,view_y+305,"L - Load Object" Text view_x,view_y+325,"F - Full Screen" If MOVE<>0 Color 0,255,50 Else Color 255,255,255 EndIf Text view_x,view_y+345,"M - Move Mode" Color 255,255,255 If WIRE<>0 Color 255,50,0 Else Color 255,255,255 EndIf Text view_x,view_y+365,"W - Wireframe On/Off" Color 255,255,255 Text view_x,view_y+385,"ESC - Exit" EndIf CameraViewport cam,view_x,view_y,view_width,view_height End Function Function check_move() If MOVE <> 0 If KeyDown(200) Then MoveEntity m\entity,0,0,.1 If KeyDown(208) Then MoveEntity m\entity,0,0,-.1 If KeyDown(205) Then MoveEntity m\entity,.1,0,0 If KeyDown(203) Then MoveEntity m\entity,-.1,0,0 EndIf End Function
Thanks for any help guys :)
Ash