Locate Problem (Zu Zeitaufwendig)

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

pokop

Betreff: Locate Problem (Zu Zeitaufwendig)

BeitragMo, Feb 09, 2004 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab da ein Problem mit Schrift und Variablen. Ich will das meine Variable zwischen zwei Texten steht:
Code: [AUSKLAPPEN]
"Sie haben" Variable% "Punkte ereicht

Ich will aber nicht ständig Locate eingeben, denn wenn ich:
Code: [AUSKLAPPEN]
Print"Sie haben" Variable% "Punkte ereicht"

Mekkert der Computer.

Jetzt musste ich:
Code: [AUSKLAPPEN]
Locate a,b
Print"..."
Locate c,b
Print Var%
Locate d,b
Print"..."

eingeben, viel zu Zeitaufwendig, kann man das auch ander machen?
http://www.abandonia.com/

--->Nikola Tesla<---

Flori-D

BeitragMo, Feb 09, 2004 19:29
Antworten mit Zitat
Benutzer-Profile anzeigen
So hab ich meinen Punkte zähler gemacht:
Code: [AUSKLAPPEN]
Text 400,10, "Sie haben "+punkte+" Punkte
;Hier dein Programm;
;Hier die bedingung wie di Punkte hochgezählt werden soll und dann:
Punkte = Punkte +1
BB is Macht!

Homepage: www.flori-d.de
 

OJay

BeitragMo, Feb 09, 2004 19:29
Antworten mit Zitat
Benutzer-Profile anzeigen
mit dem + operator kannst du zeichenketten verknüpfen. ist die variable vom typ integer macht blitz eine automatische typkonvertierung zu string.

tip: verwende text() als ausgabefunktion.

TheShadow

Moderator

BeitragMo, Feb 09, 2004 19:34
Antworten mit Zitat
Benutzer-Profile anzeigen
erstelle eine benutzerdefinierte funktion
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2
 

OJay

BeitragMo, Feb 09, 2004 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
ts muss es natürlich gleich wieder masslos übertreiben Razz natürlich ist das die beste lösung, aber was meinst du wie weit jemand dabei kommt, der nach einer möglichkeit fragt eine variable mit print auszugeben? Rolling Eyes

Flori-D

BeitragMo, Feb 09, 2004 19:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Gib mal Quellcode.Ich versuch dann mal dir da einen Pnktezähler reinzuhunsen(soll doch ein Punktezähler sein oder?)
BB is Macht!

Homepage: www.flori-d.de

pokop

BeitragMo, Feb 09, 2004 20:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh, es geht schon, aber du kannst ihn trotzdem gern mal haben:
Code: [AUSKLAPPEN]
Graphics 640,480
SetBuffer BackBuffer()
a = 608
b = 0
z = 1
Spieler1 = LoadImage("Spieler.bmp")
Spieler2 = LoadImage("Spieler2.bmp")
gfxGameover=LoadAnimImage("Game over.bmp",32,32,0,7)
Tileset=LoadAnimImage("Tileset.bmp",32,32,0,15)
MaskImage gfxGameover,255,0,255
MaskImage Spieler2,255,0,255
MaskImage Spieler1,255,0,255
Cls
Dim map(4,4)
Restore Level_1
For q = 0 To 4
For p = 0 To 4
Read map(q,p)
Next
Next
Repeat
Locate 0,460
Print Punkte%
Punkte% = Punkte% + 1
DrawImage Spieler1, x, y   
   If KeyDown(200) Then y = y - 2
   If KeyDown(205) Then x = x + 2
   If KeyDown(203) Then x = x - 2
   If KeyDown(208) Then y = y + 2
DrawImage Spieler2, a, b
;   If KeyDown(18) Then b = b - 1
;   If KeyDown(33) Then a = a + 1
;   If KeyDown(31) Then a = a - 1
;   If KeyDown(32) Then b = b + 1
      If x > a Then a = a + 1        
      If x < a Then a = a - 1
      If y > b Then b = b + 1
      If y < b Then b = b - 1
Flip
Cls
Until ImagesCollide(Spieler1, x, y, frame1, Spieler2, a, b, frame2) Or KeyHit(1)
Repeat
If MilliSecs() > tmrGameover + 150 Then
tmrGameover=MilliSecs()
frmGameover=(frmGameover + 1) Mod 7
End If
DrawImage gfxGameover,x,y,frmGameover
z = z + 1
Flip
Cls
Locate 300,200
Print"Du hast"
Locate 360,200
Print Punkte%
Locate 387,200
Print" Punkte ereicht"
Until z = 60
End
.Level_1
Data 1,4,4,3,7
Data 1,2,4,5,7
Data 1,4,4,6,7
Data 1,4,2,1,7
Data 1,6,4,3,7


Die Graphiken sind hier:
http://pokop.hostit24.de/Labyrint.zip
http://www.abandonia.com/

--->Nikola Tesla<---

Flori-D

BeitragMo, Feb 09, 2004 21:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Du könntest dir viele Zeilen Quellcode sparen in dem du das so machst:
Code: [AUSKLAPPEN]
Graphics 640,480
SetBuffer BackBuffer()
a = 608
b = 0
z = 1
Spieler1 = LoadImage("Spieler.bmp")
Spieler2 = LoadImage("Spieler2.bmp")
gfxGameover=LoadAnimImage("Game over.bmp",32,32,0,7)
Tileset=LoadAnimImage("Tileset.bmp",32,32,0,15)
MaskImage gfxGameover,255,0,255
MaskImage Spieler2,255,0,255
MaskImage Spieler1,255,0,255
Cls
Dim map(4,4)
Restore Level_1
For q = 0 To 4
For p = 0 To 4
Read map(q,p)
Next
Next
Repeat
Locate 0,460
Print Punkte% <<<<<<<Hier setzt du "Text 400,10, "Sie haben "+punkte+" Punkte"ein damit sparst d dir die ganze Locate sch´ße.


Punkte% = Punkte% + 1
DrawImage Spieler1, x, y   
   If KeyDown(200) Then y = y - 2
   If KeyDown(205) Then x = x + 2
   If KeyDown(203) Then x = x - 2
   If KeyDown(208) Then y = y + 2
DrawImage Spieler2, a, b
;   If KeyDown(18) Then b = b - 1
;   If KeyDown(33) Then a = a + 1
;   If KeyDown(31) Then a = a - 1
;   If KeyDown(32) Then b = b + 1
      If x > a Then a = a + 1         
      If x < a Then a = a - 1
      If y > b Then b = b + 1
      If y < b Then b = b - 1
Flip
Cls
Until ImagesCollide(Spieler1, x, y, frame1, Spieler2, a, b, frame2) Or KeyHit(1)
Repeat
If MilliSecs() > tmrGameover + 150 Then
tmrGameover=MilliSecs()
frmGameover=(frmGameover + 1) Mod 7
End If
DrawImage gfxGameover,x,y,frmGameover
z = z + 1
Flip
Cls
Locate 300,200
Print"Du hast"
Locate 360,200
Print Punkte%
Locate 387,200
Print" Punkte ereicht" <<<und hier setzt du "Punkte = Punkte +1"ein.
Until z = 60
End
.Level_1
Data 1,4,4,3,7
Data 1,2,4,5,7
Data 1,4,4,6,7
Data 1,4,2,1,7
Data 1,6,4,3,7
BB is Macht!

Homepage: www.flori-d.de

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group