Seite 1 von 1

DrawText und long Variable

Verfasst: 14.06.2008 21:56
von hofmannc1983
Huhu, ich bin auf ein kleines Problem gestoßen. Ich möchte für mein Spiel gerne mit DrawText den Punktestand ausgeben. Etwa in dieser Art:

Punkte: <Anzahl>

Nun habe ich jedoch das Problem das PureBasic mir sagt das DrawText einen String erwartet.

Meine Frage ist nun wie kann ich eine Variable vom Typ long mit DrawText ausgeben oder die Variable in einen String bekommen?

Nutze PureBasic 4.2 Linux.

Code bis jetzt:

Code: Alles auswählen

   StartDrawing(ScreenOutput()) 
   
    DrawingMode(#PB_2DDrawing_Transparent)
    DrawText(0,580,"Punkte: "+Punkte,RGB(255,255,255))
   
  StopDrawing()  
Vielen Dank und schönes Wochenende

Verfasst: 14.06.2008 22:01
von scholly
wie wärs mit str(punkte) ?

Verfasst: 14.06.2008 22:01
von Kaeru Gaman
Willkommen im Board!

für die Umwandlung von Numerischen Variablen in Strings gibt es die Str()-Funktionen.

Str() erwartet eine Long (4byte Ganzzahl)
StrQ() erwartet eine Quad (8byte Ganzzahl)
StrF() erwartet eine Float (4byte Gleitkomma)
StrD() erwartet eine Double (8byte Gleitkomma)

schau mal im Kapitel STRING der Hilfe, da stehen noch mehr praktische Funktionen drin....

Verfasst: 14.06.2008 22:13
von hofmannc1983
Oje, ihr seid ja schnell :) Vielen Dank. Ich habe zwar auch schon gesucht in der Hilfe aber wie immer sucht man an der falschen Stelle.

Aber PureBasic ist schon eine super Sprache.

Verfasst: 14.06.2008 22:31
von Kaeru Gaman
noch ein tipp:
eine Score sieht formatiert besser aus.
probier mal

Code: Alles auswählen

RSet( Str(Punkte), 8, "0" )
du kannst auch die "0" durch ein " " (Leerstelle) ersetzen.

außerdem verwendet man grundsätzlich besser einen Monospace Zeichensatz für die eigentlichen Zahlen,
also z.b. Courier New, damit die zahlen immer die gleichen abstände aufweisen.
dazu findest du weitere Informationen im Kapitel "Font"