Verfasst: 20.06.2005 20:19
Prozedurdeklerationen sollte man aber nicht in If Bedingungen schreiben
Edit: War wirklich missverständlich, so besser?
Edit: War wirklich missverständlich, so besser?
Code: Alles auswählen
If 0=a
Procedure Fehler()
;Hier steht irgendwas
EndProcedure
EndIf
Code: Alles auswählen
#CameraSpeed = 5
IncludeFile "Screen3DRequester.pb"
DefType.f KeyX, KeyY, MouseX, MouseY
Procedure Hauptmenu()
LoadSprite(0,"AAA.bmp")
Repeat
DisplaySprite(0,0,0)
ExamineKeyboard()
FlipBuffers()
ClearScreen(0,0,0)
If KeyboardPushed(#PB_Key_Escape) : quit = 1 : EndIf
Until KeyboardPushed(#PB_Key_Return) Or quit = 1
ProcedureReturn quit
EndProcedure
If InitEngine3D()
Add3DArchive("Data\" , #PB_3DArchive_FileSystem)
Add3DArchive("Data\Skybox.zip", #PB_3DArchive_Zip)
InitSprite()
InitKeyboard()
InitMouse()
If Screen3DRequester()
AmbientColor(RGB(255,255,255))
CreateMaterial (0, LoadTexture(0, "Terrain_Texture.jpg"))
AddMaterialLayer(0, LoadTexture(1, "Terrain_Detail.jpg"), 1)
CreateTerrain("Terrain.png", MaterialID(0), 4, 0.6, 4, 4)
CreateCamera(0, 0, 0, 100, 100)
CameraLocate(0, 128, 25, 128)
SkyDome("Clouds.jpg",10)
Repeat
Screen3DEvents()
If ExamineKeyboard()
If KeyboardPushed(#PB_Key_Left)
KeyX = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Right)
KeyX = #CameraSpeed
Else
KeyX = 0
EndIf
If KeyboardPushed(#PB_Key_Up)
KeyY = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Down)
KeyY = #CameraSpeed
Else
KeyY = 0
EndIf
EndIf
If ExamineMouse()
MouseX = -(MouseDeltaX()/10)*#CameraSpeed/2
MouseY = -(MouseDeltaY()/10)*#CameraSpeed/2
EndIf
If KeyboardPushed(#PB_Key_Escape) : Hauptmenu() : EndIf
Height.f = TerrainHeight(CameraX(0), CameraZ(0))
RotateCamera(0, MouseX, MouseY, RollZ)
MoveCamera (0, KeyX, -CameraY(0)+Height+8, KeyY)
RenderWorld()
Screen3DStats()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape) And Hauptmenu()
EndIf
Else
MessageRequester("Error", "The 3D Engine can't be initialized",0)
EndIf
End
Code: Alles auswählen
Procedure.l GetRandom()
ProcedureReturn Random(1)
EndProcedure
For a.l = 1 To 50
If GetRandom()
Debug "ja"
Else
Debug "nein"
EndIf
Next
Code: Alles auswählen
Procedure.s GetText()
ProcedureReturn "BliBlablubb"
EndProcedure
a = 0
If a = -a
Debug GetText()
EndIf