Vollbildschirmtextscroller

Anfängerfragen zum Programmieren mit PureBasic.
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Vollbildschirmtextscroller

Beitrag von PMTheQuick »

Hallo,

ich war gerade beschäftigt mein Spiel zu programmieren. Ich bräuchte einen Code für nen Vollbildschirmtextscroller. Der Text muss in einer txt-Datei stehen und die Grösse von Bildschirm sollte auch einfach zu verändern sein, so das man nur zwei Variablen verändern muss. Antwortet bitte so schnell wie möglich.

Pascal :( :cry:
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Wie meinst du das mit dem Textscroller.
Ich meine worein willst du das einbetten?
In dein Spiel?
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

Ja, in mein Spiel!

Pascal :( :cry: :( :cry: :( :cry: :( :cry: :cry: :( :cry: :cry: :( :cry: :(
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Und das ist wie aufgebaut?
Screen? Window? Console? WindowedScreen?

[offtopic]Wie oft wechselts du eigentlich dein Avatar? :lol: [/offtopic]
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

[offtopic]
Batze hat geschrieben: [offtopic]Wie oft wechselts du eigentlich dein Avatar :lol: [/offtopic]
Sehr oft! :lol: :lol: :lol:

[/offtopic]

Es ist mit einem Screen aufgebaut.

Pascal :D
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024, 768, 32, "Lauftext")

Procedure CreateLauftext(file.s, font.s, size.l)
  Shared LauftextX.f, Lauftext_Text.s 
  LauftextX = 0
  LoadFont(0, "font", size, #PB_Font_Italic)
  If ReadFile(111, file)
    Lauftext_Text = ReadString()
    CloseFile(111)
    ProcedureReturn 1
  EndIf
  ProcedureReturn 0
EndProcedure

Procedure ZeicheLauftext(Speed.f, y.w, color.l)
  Shared LauftextX.f, Lauftext_Text.s 
  StartDrawing(ScreenOutput())
  DrawingFont(UseFont(0))
  DrawingMode(1)
  FrontColor(Red(color), Green(color), Blue(color))
  Locate(-LauftextX, y)
  LauftextX + Speed
  DrawText(Lauftext_Text)
  StopDrawing()
EndProcedure

If CreateLauftext("lauftext.txt", "Courir", 100) = 0 : End : EndIf

Repeat
  ExamineKeyboard()
  ClearScreen(0,0,0)
  ZeicheLauftext(1.5, 10, $FF0000)
  FlipBuffers()
 
Until KeyboardPushed(#PB_Key_Escape)
Bitte erstell dir vorher eine Datei "Lauftext.txt" im selben Ordner. Es wär auch nicht schlecht wenn du was reinschreiben würdest. :wink:
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

Danke Batze! :D Ich kann es sehr gut gebrauchen. Jetzt bräuchte ich einfach nochmal den gleichen Scroller, einfach von unten nach oben.

Also so:

1.
PB
BB
C++
C+

2.
BB
C++
C+

3.
C++
C+

4.
C+

usw.

Und wenn es ganz oben ist, fängt es wieder unten an.

Pascal :mrgreen:
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Hier erstmal, dass es nach dem Ende weiterläuft:

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024, 768, 32, "Lauftext")

Procedure CreateLauftext(file.s, font.s, size.l)
  Shared LauftextX.f, Lauftext_Text.s 
  LauftextX = -1024
  LoadFont(0, "font", size, #PB_Font_Italic)
  If ReadFile(111, file)
    Lauftext_Text = ReadString()
    CloseFile(111)
    ProcedureReturn 1
  EndIf
  ProcedureReturn 0
EndProcedure

Procedure ZeicheLauftext(Speed.f, y.w, color.l)
  Shared LauftextX.f, Lauftext_Text.s 
  StartDrawing(ScreenOutput())
  DrawingFont(UseFont(0))
  DrawingMode(1)
  FrontColor(Red(color), Green(color), Blue(color))
  Locate(-LauftextX, y)
  LauftextX + Speed
  DrawText(Lauftext_Text)
  If LauftextX > TextLength(Lauftext_Text) - 1000
    LauftextX = -1024
  EndIf
  StopDrawing()
EndProcedure

If CreateLauftext("lauftext.txt", "Courir", 100) = 0 : End : EndIf

Repeat
  ExamineKeyboard()
  ClearScreen(0,0,0)
  ZeicheLauftext(3.5, 10, $FF0000)
  FlipBuffers()
 
Until KeyboardPushed(#PB_Key_Escape)
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

@pm: Ähh, das Anfängerforum ist für Leute gedacht, die ihr Projekt zwar SELBER coden wollen, aber bei irgendwas nicht weiter wissen, und ihr Problem für ein "Anfängerproblem" halten, nicht für Leute, die alles von anderen Forumusern fertig gecodet hingeschmissen bekommen wollen... :|
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

hardfalcon hat geschrieben:@pm: Ähh, das Anfängerforum ist für Leute gedacht, die ihr Projekt zwar SELBER coden wollen, aber bei irgendwas nicht weiter wissen, und ihr Problem für ein "Anfängerproblem" halten, nicht für Leute, die alles von anderen Forumusern fertig gecodet hingeschmissen bekommen wollen... :|
Nicht ganz. Das Anfängerforum ist für alle Leute die offensichtlich Anfänger sind, ob diese sich dann selbst weiterbilden möchten und Eigeninitiative zeigen oder nur Code-Schnippsel aneinanderfügen ist dabei unerheblich. Deswegen hatte ich den Thread ja auch hierher verschoben <)
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Antworten