Stoppuhr

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

pb9823d

Betreff: Stoppuhr

BeitragMi, Apr 06, 2005 22:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, nach mehrmaliger Kritik versuche ich mich so oft es nur geht aus dem Forum rauszuhalten. Aber ich habe noch eine klitzekleine Frage. Ich brauche für mein Spiel einen Counter, der rückwärts läuft. Nur ich kann nicht mal in der Onlinehilfe die geeigneten Befehle dafür finden. Wisst ihr vielleicht welche??
 

noir

BeitragMi, Apr 06, 2005 22:30
Antworten mit Zitat
Benutzer-Profile anzeigen
dafür findest du auch keine fertige Funktion...

nimmst einfach deine Startzeit und dekrementierst diese z.b jede sekunde.

übrigens was hat das mit 3D zu tun?
Fragt und man wird euch helfen

Das Alternativ BlitzBasic-Forum: FreeCoder
Einfach chatten: BlitzChat
Code&Text schnell und einfach pasten: FreePasting

Lord_Vader

BeitragDo, Apr 07, 2005 7:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Millisecs() ist Zeit in Millisekunden (1000 ms=1s)

Jez in eine Variable zwischenspeichern: timex=millisecs()

und dann beim rückwärtslaufen die angegebene zeit (maximalzeit)

maxtime=10000 ;=10 Sek

Und dann

Text x,y,maxtime-(millisecs()-timex)
schon steht das die Zeit, die auch rückwärts läuft!

Jan_

Ehemaliger Admin

BeitragDo, Apr 07, 2005 8:11
Antworten mit Zitat
Benutzer-Profile anzeigen
yup,

Startzeit=Millisecs()
Endzeit=Startzeit+3*60000;3minuten

repeat
Restzeit=(Endzeit-Millisecs())/1000
Text 0,0,restzeit+"Secunden"
until keyhit(1)
between angels and insects
 

pb9823d

BeitragDo, Apr 07, 2005 14:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Dankeschön
 

pb9823d

BeitragDo, Apr 07, 2005 15:31
Antworten mit Zitat
Benutzer-Profile anzeigen
da gibts nur noch ein kleines Problem. Wo soll ich die Schleife einbringen??? Mein Spiel streikt immer, wenn ich den Code irgendwo einfüge.

diGGa

GruppenKaspar

BeitragDo, Apr 07, 2005 15:36
Antworten mit Zitat
Benutzer-Profile anzeigen
die schleife ist dein spiel. also pack das was bei ihm in der schleife steht in deine, und was bei ihm vor der schleife steht packste vor deine schleife
Gestern Nacht Schlug der Regen an mein Fenster
Ich ging durch das dunkle Zimmer und
glaubte im Licht der Straßenlampe
Den Geist unseres jahrhunderts auf der
Straße zu sehen
Der uns sagte, daß wir alle am Rande
des Abgrunds stehen.
- Al Steward


Athlon 64 3000+ / Radeon 9600 / 1024mb ddram
 

pb9823d

BeitragDo, Apr 07, 2005 16:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok diGGA, wenn du doch soooo schlau bist dann zeig mir doch mal wo. Ich meine, ich hab mehrere Schleifen, nicht eine Hauptschleife.

; Graphikmodus initialisieren
Graphics3D 800,600,16,1
SetBuffer=BackBuffer

;Applikationstitel geben
AppTitle"Nightballs 3D"

Startzeit=MilliSecs()
Endzeit=Startzeit+3*60000

;Kamera erstellen
camera=CreateCamera()
RotateEntity camera,20,0,0 ;Kamerawinkel einstellen

;Lichtquelle festlegen
light=CreateLight(3)
RotateEntity light,45,0,0
PositionEntity light,0,120,3
LightRange light, 1000

;Terrain erstellen
terrain=LoadTerrain("heightmap.bmp")
TerrainDetail terrain,4000,True
ScaleEntity terrain,2,50,3
PositionEntity terrain,-250,0,-390
stein1=LoadTexture("stein1.bmp")
EntityTexture terrain,stein1
ScaleTexture stein1,15,15
EntityType terrain,2

;3D Wuerfel erstellen & bearbeiten
Cube=CreateCube()
EntityType Cube,2
PositionEntity Cube,65,16.6,30
stein3=LoadTexture("stein3.bmp")
EntityTexture Cube,stein3

;3D Kugel erstellen & bearbeiten
Global Kugel=CreateSphere(20)
EntityType Kugel,1
EntityRadius Kugel,0.9,1
ScaleEntity Kugel,0.59,0.59,0.59
EntityShininess Kugel,0.09
EntityParent Camera,Kugel ;entityparent camera,kugel - Kamera an Kugel hängen
PositionEntity Camera,0,2.5,-4 ;positionentity camera,x,y,z Camera, hinter Kugel bewegen
stein2=LoadTexture("stein2.bmp") ;Textur laden
EntityTexture Kugel,stein2 ;Textur ueber Kugel legen
PositionEntity Kugel,65,20,30

;Himmel
sky=CreateCube()
ScaleEntity sky,250,320,365
himmel=LoadTexture("himmel.bmp")
EntityTexture sky,himmel
FlipMesh sky
Color 0,0,0
EntityType sky,2


Global punkte,dis#

;================================
; 1. Objekt wird eingeleitet =
;================================

Type objekt
Field model
End Type

For a=0 To 100
createobjekt()
Next

Function createobjekt()
objekt.objekt=New objekt
objekt\model=CreateCone(20)
EntityColor objekt\model,255,0,0
ScaleEntity objekt\model,0.5,0.5,0.5
PositionEntity objekt\model,Rand(-200,280),40,Rand(-200,280)
End Function

Function updateobjekt()
For objekt.objekt=Each objekt
dis#=EntityDistance(Kugel,objekt\model)
EntityType objekt\model,1

x#=0
y#=0
z#=0
MoveEntity objekt\model,x#,-0.2,z#

If dis#<1 Then punkte=punkte+100 FreeEntity objekt\model Delete objekt
Next
End Function
;=====================================================================

;================================
; 2. Objekt wird eingeleitet =
;================================

Type objekt2
Field model2
End Type


For a=0 To 80
createobjekt2()
Next

Function createobjekt2()
objekt2.objekt2=New objekt2
objekt2\model2=CreateCone(20)
EntityColor objekt2\model2,0,255,0
ScaleEntity objekt2\model2,0.5,0.5,0.5
PositionEntity objekt2\model2,Rand(-210,290),40,Rand(-210,290)
End Function

Function updateobjekt2()
For objekt2.objekt2=Each objekt2
dis#=EntityDistance(Kugel,objekt2\model2)
EntityType objekt2\model2,1
x#=0
y#=0
z#=0
MoveEntity objekt2\model2,x#,-0.2,z#

If dis#<1 Then punkte=punkte+200 FreeEntity objekt2\model2 Delete objekt2
Next
End Function
;========================================================================

;================================
; 3. Objekt wird eingeleitet =
;================================

Type objekt3
Field model3
End Type


For a=0 To 5
createobjekt3()
Next

Function createobjekt3()
objekt3.objekt3=New objekt3
objekt3\model3=CreateCone(20)
EntityColor objekt3\model3,0,0,255
ScaleEntity objekt3\model3,0.5,0.5,0.5
PositionEntity objekt3\model3,Rand(-210,290),40,Rand(-210,290)
End Function

Function updateobjekt3()
For objekt3.objekt3=Each objekt3
dis#=EntityDistance(Kugel,objekt3\model3)
EntityType objekt3\model3,1
x#=0
y#=0
z#=0
MoveEntity objekt3\model3,x#,-0.2,z#

If dis#<1 Then punkte=punkte+500 FreeEntity objekt3\model3 Delete objekt3
Next
End Function
;========================================================================

;================================
; 4. Objekt wird eingeleitet =
;================================

Type objekt4
Field model4
End Type

For a=0 To 300
createobjekt4()
Next

Function createobjekt4()
objekt4.objekt4=New objekt4
objekt4\model4=CreateCone(20)
EntityColor objekt4\model4,0,0,0
ScaleEntity objekt4\model4,0.5,0.5,0.5
PositionEntity objekt4\model4,Rand(-200,280),40,Rand(-200,280)
End Function

Function updateobjekt4()
For objekt4.objekt4=Each objekt4
dis#=EntityDistance(Kugel,objekt4\model4)
EntityType objekt4\model4,1

x#=0
y#=0
z#=0
MoveEntity objekt4\model4,x#,-0.2,z#

If dis#<1 Then punkte=punkte-1000 FreeEntity objekt4\model4 Delete objekt4
Next
End Function
;=====================================================================

;Steuerung der Kugel definieren


While Not KeyHit(1)
x#=0
y#=0
z#=0

;====================================================
If KeyDown(49) Then StartNetGame ;Netzwerkmodus
;====================================================

If KeyDown(205) Then MoveEntity Kugel,0.6,0,0 ;Pfeiltaste, rechts
If KeyDown(203) Then MoveEntity Kugel,-0.6,0,0 ;Pfeiltaste, links
If KeyDown(200) Then MoveEntity Kugel,0,0,0.6 ;Pfeiltaste, oben
If KeyDown(208) Then MoveEntity Kugel,0,0,-0.6 ;Pfeiltaste, unten

If KeyDown(72) Then MoveEntity Kugel,0,0.8,0

If KeyDown(44) Then TurnEntity Kugel,0,2.5,0
If KeyDown(45) Then TurnEntity Kugel,0,-2.5,0
If KeyDown(30) Then TurnEntity Kugel,2,0,0
If KeyDown(31) Then TurnEntity Kugel,-2,0,0

MoveEntity Kugel,x#,-0.2,z#

;Rendermodi setzen
WireFrame(0)
Collisions 1,2,2,2
updateobjekt()
updateobjekt2()
updateobjekt3()
updateobjekt4()
UpdateWorld
RenderWorld
Color 255,255,255
Text 1,580,"Punkte: "+punkte
Flip
Wend
End

Hubsi

BeitragDo, Apr 07, 2005 16:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Es läßt sich nur eine Hauptschleife erkennen?
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

@ndinho

BeitragDo, Apr 07, 2005 17:40
Antworten mit Zitat
Benutzer-Profile anzeigen
kleiner tipp: code einrücken!! macht ihr viel übersichtlicher!
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

M0R73N

BeitragSo, Apr 10, 2005 13:21
Antworten mit Zitat
Benutzer-Profile anzeigen
den code kopier ich mir und bring ihn in meinem Spiel unter ^^
ne,war nur nen Schwerz Very Happy ....oder vieleicht doch nicht? Rolling Eyes

diGGa

GruppenKaspar

BeitragSo, Apr 10, 2005 13:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Startzeit=MilliSecs()
Endzeit=Startzeit+3*60000;3minuten

; Graphikmodus initialisieren
Graphics3D 800,600,16,1
SetBuffer=BackBuffer

;Applikationstitel geben
AppTitle"Nightballs 3D"

Startzeit=MilliSecs()
Endzeit=Startzeit+3*60000

;Kamera erstellen
camera=CreateCamera()
RotateEntity camera,20,0,0 ;Kamerawinkel einstellen

;Lichtquelle festlegen
light=CreateLight(3)
RotateEntity light,45,0,0
PositionEntity light,0,120,3
LightRange light, 1000

;Terrain erstellen
terrain=LoadTerrain("heightmap.bmp")
TerrainDetail terrain,4000,True
ScaleEntity terrain,2,50,3
PositionEntity terrain,-250,0,-390
stein1=LoadTexture("stein1.bmp")
EntityTexture terrain,stein1
ScaleTexture stein1,15,15
EntityType terrain,2

;3D Wuerfel erstellen & bearbeiten
Cube=CreateCube()
EntityType Cube,2
PositionEntity Cube,65,16.6,30
stein3=LoadTexture("stein3.bmp")
EntityTexture Cube,stein3

;3D Kugel erstellen & bearbeiten
Global Kugel=CreateSphere(20)
EntityType Kugel,1
EntityRadius Kugel,0.9,1
ScaleEntity Kugel,0.59,0.59,0.59
EntityShininess Kugel,0.09
EntityParent Camera,Kugel ;entityparent camera,kugel - Kamera an Kugel hängen
PositionEntity Camera,0,2.5,-4 ;positionentity camera,x,y,z Camera, hinter Kugel bewegen
stein2=LoadTexture("stein2.bmp") ;Textur laden
EntityTexture Kugel,stein2 ;Textur ueber Kugel legen
PositionEntity Kugel,65,20,30

;Himmel
sky=CreateCube()
ScaleEntity sky,250,320,365
himmel=LoadTexture("himmel.bmp")
EntityTexture sky,himmel
FlipMesh sky
Color 0,0,0
EntityType sky,2


Global punkte,dis#

;================================
; 1. Objekt wird eingeleitet =
;================================

Type objekt
Field model
End Type

For a=0 To 100
createobjekt()
Next

Function createobjekt()
objekt.objekt=New objekt
objekt\model=CreateCone(20)
EntityColor objekt\model,255,0,0
ScaleEntity objekt\model,0.5,0.5,0.5
PositionEntity objekt\model,Rand(-200,280),40,Rand(-200,280)
End Function

Function updateobjekt()
For objekt.objekt=Each objekt
dis#=EntityDistance(Kugel,objekt\model)
EntityType objekt\model,1

x#=0
y#=0
z#=0
MoveEntity objekt\model,x#,-0.2,z#

If dis#<1 Then punkte=punkte+100 FreeEntity objekt\model Delete objekt
Next
End Function
;=====================================================================

;================================
; 2. Objekt wird eingeleitet =
;================================

Type objekt2
Field model2
End Type


For a=0 To 80
createobjekt2()
Next

Function createobjekt2()
objekt2.objekt2=New objekt2
objekt2\model2=CreateCone(20)
EntityColor objekt2\model2,0,255,0
ScaleEntity objekt2\model2,0.5,0.5,0.5
PositionEntity objekt2\model2,Rand(-210,290),40,Rand(-210,290)
End Function

Function updateobjekt2()
For objekt2.objekt2=Each objekt2
dis#=EntityDistance(Kugel,objekt2\model2)
EntityType objekt2\model2,1
x#=0
y#=0
z#=0
MoveEntity objekt2\model2,x#,-0.2,z#

If dis#<1 Then punkte=punkte+200 FreeEntity objekt2\model2 Delete objekt2
Next
End Function
;========================================================================

;================================
; 3. Objekt wird eingeleitet =
;================================

Type objekt3
Field model3
End Type


For a=0 To 5
createobjekt3()
Next

Function createobjekt3()
objekt3.objekt3=New objekt3
objekt3\model3=CreateCone(20)
EntityColor objekt3\model3,0,0,255
ScaleEntity objekt3\model3,0.5,0.5,0.5
PositionEntity objekt3\model3,Rand(-210,290),40,Rand(-210,290)
End Function

Function updateobjekt3()
For objekt3.objekt3=Each objekt3
dis#=EntityDistance(Kugel,objekt3\model3)
EntityType objekt3\model3,1
x#=0
y#=0
z#=0
MoveEntity objekt3\model3,x#,-0.2,z#

If dis#<1 Then punkte=punkte+500 FreeEntity objekt3\model3 Delete objekt3
Next
End Function
;========================================================================

;================================
; 4. Objekt wird eingeleitet =
;================================

Type objekt4
Field model4
End Type

For a=0 To 300
createobjekt4()
Next

Function createobjekt4()
objekt4.objekt4=New objekt4
objekt4\model4=CreateCone(20)
EntityColor objekt4\model4,0,0,0
ScaleEntity objekt4\model4,0.5,0.5,0.5
PositionEntity objekt4\model4,Rand(-200,280),40,Rand(-200,280)
End Function

Function updateobjekt4()
For objekt4.objekt4=Each objekt4
dis#=EntityDistance(Kugel,objekt4\model4)
EntityType objekt4\model4,1

x#=0
y#=0
z#=0
MoveEntity objekt4\model4,x#,-0.2,z#

If dis#<1 Then punkte=punkte-1000 FreeEntity objekt4\model4 Delete objekt4
Next
End Function
;=====================================================================

;Steuerung der Kugel definieren


While Not KeyHit(1)


x#=0
y#=0
z#=0

;====================================================
If KeyDown(49) Then StartNetGame ;Netzwerkmodus
;====================================================

If KeyDown(205) Then MoveEntity Kugel,0.6,0,0 ;Pfeiltaste, rechts
If KeyDown(203) Then MoveEntity Kugel,-0.6,0,0 ;Pfeiltaste, links
If KeyDown(200) Then MoveEntity Kugel,0,0,0.6 ;Pfeiltaste, oben
If KeyDown(208) Then MoveEntity Kugel,0,0,-0.6 ;Pfeiltaste, unten

If KeyDown(72) Then MoveEntity Kugel,0,0.8,0

If KeyDown(44) Then TurnEntity Kugel,0,2.5,0
If KeyDown(45) Then TurnEntity Kugel,0,-2.5,0
If KeyDown(30) Then TurnEntity Kugel,2,0,0
If KeyDown(31) Then TurnEntity Kugel,-2,0,0

MoveEntity Kugel,x#,-0.2,z#

;Rendermodi setzen
WireFrame(0)
Collisions 1,2,2,2
updateobjekt()
updateobjekt2()
updateobjekt3()
updateobjekt4()
UpdateWorld
RenderWorld
Color 255,255,255
Text 1,580,"Punkte: "+punkte

Restzeit=(Endzeit-MilliSecs())/1000
Text 0,0,restzeit+"Secunden"

Flip
Wend
End

#########################

würd mal fast behaupten so. wobei ich mir nich sicher bin. kenn mich mit 3d nich aus - ka ob der text da so geschrieben werden kann.
und ja, du hast mehrere schleifen, aber nur eine hauptschleife. die hauptschleife ist das, was dauerhaft, also solange wie das spiel ausgeführt wird, gelooped wird.
Gestern Nacht Schlug der Regen an mein Fenster
Ich ging durch das dunkle Zimmer und
glaubte im Licht der Straßenlampe
Den Geist unseres jahrhunderts auf der
Straße zu sehen
Der uns sagte, daß wir alle am Rande
des Abgrunds stehen.
- Al Steward


Athlon 64 3000+ / Radeon 9600 / 1024mb ddram

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group