Sterne Bewegen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Bassmaster

Betreff: Sterne Bewegen

BeitragDo, Jan 10, 2008 17:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich bin gerade dabei ein Bild im Hintergrund zu bewegen das es so aussieht als wäre man im Weltraum

meine Frage ist jetzt braucht man diesen Teil unbedingt im Source Code: If x_star = 201 Then x_star = 1

Denn ich hab es mal ohne Probiert und auch dann bewegt sich mein Bild.

Hier ist mal der komplette Source Code:



Code: [AUSKLAPPEN]


Graphics 640, 480

SetBuffer BackBuffer()

; Bilder laden.
stars = LoadImage("Bilder\stars.bmp") ; Sterne

defiant = LoadImage("Bilder\defiant.bmp") ; Das Raumschiff

ds9 = LoadImage("Bilder\ds9-vollbild3.bmp") ; Die Raumstation



MaskImage defiant ,0,0,255
MaskImage ds9, 0,0,255



; Hauptschleife.

Repeat
Cls


   x_star = x_star + 1
   If x_star = 201 Then x_star = 1
   TileImage stars, x_star, 1



Flip

Until KeyHit(1)




End


Der Eisvogel

BeitragDo, Jan 10, 2008 17:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Denk doch mal nach. Ich denke du hast diesen Code geschrieben oder nicht. Wink
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.

aMul

Sieger des Minimalist Compo 01/13

BeitragDo, Jan 10, 2008 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Das liegt daran, dass du Tileimage benutzt, das klatscht halt den ganzen Bildschirm mit dem Bild voll, berücksichtigt aber auch die Position des Bildes.
Ob das Bild jetzt aber zwei- oder dreimal so weit vom Rand entfernt ist wie es breit ist, interessiert dabei nicht. Es wird ja eh der ganze Bildschirm bemalt...

@Marc-Peter:
Da wäre ich mir nach Betrachtung seiner anderen Posts nicht unbedingt sicher.
Aber wie dem auch sei ist dein Post nicht wirklich hilfreich, vermutlich wird er selbst schon darauf gekommen sein.
Ob er es nun getan hat oder nicht...
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans!
Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver
 

Bassmaster

BeitragDo, Jan 10, 2008 17:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab den Source Code aus dem Tutorial von der Robsite HP

Aber wofür das hier genau steht steht dort nicht beschrieben Shocked

If x_star = 201 Then x_star = 1

BigMaexle

BeitragDo, Jan 10, 2008 18:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Sowas nennt man dann "saubere Programmierung" Wink

Ich rate mal, dass dein Sternenbild 200 Pixel breit ist. Nun wird ein Bild an der Position gemalt, die du bei TileBlock übergeben hast, danach wird das Bild kopiert an ale Seiten angelegt bis der gesamte Bildschirm bedeckt ist. Bei jeden Schritt verschiebt sich das "Original" und dadurch auch die Bilder, die angelegt werden. Es wirkt als verschiebe sich alles. Wenn du jetz bei X=200 bist kannst du das Original um genau 200 Pixel nach Links bewegen und Das ERgebnis wäre gleich. Gut vorstellen kann man sich das mit Holzquadraten. Wenn du die alle um die Länge ein Quadrates in eine Richtung bewegen würdest, würde man den Unterschied nich merken, es sehen ja alle gleich aus und die Kanten wären auch an den gleichen Stellen.
Jetz kannst du die Überprüfung natürlich auch weglassen. Das Original würde sich immer weiter nach rechts verschieben... Die X-Koordinate würde auch irgendwann die magische 4.2-Milliarden-Grenze (Höhere Zahlen kannst du nicht zuweisen), wenn du es ein Paar Tage laufen lassen würdest. Das Programm würde absürtzen. Aber auch allgemein, es ist einfach nicht gut wenn man Koordinaten hat die über den Bildschirmrand hinauslaufen, sowas führt leicht zu Bugs.

WOW! Meine Fresse! soviel Gelaber für eine Zeile Code Razz
--------------------------------------
Ich bin unfreiwillig ein Mitglied dieser kapitalistischen Gesellschaft, wo jeder Geldgeile Unternehmer an mein Geld will und ich selbst bei meinen Entscheidungen so gut wie willenlos bin...... und ich bin glücklich drüber

aMul

Sieger des Minimalist Compo 01/13

BeitragDo, Jan 10, 2008 22:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Auch wenn es dem Threadstarter nichts nutzt, nur als Anmerkung:
Das Programm würde NICHT abstürzen.
Der Integer würde einfach in den negativen Bereich "flippen"(nennt man das so?).
Oder anders gesagt:
Code: [AUSKLAPPEN]
2,147,483,647 + 1 = -2,147,483,648
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans!
Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver

BigMaexle

BeitragDo, Jan 10, 2008 23:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh, wieder was gelernt
--------------------------------------
Ich bin unfreiwillig ein Mitglied dieser kapitalistischen Gesellschaft, wo jeder Geldgeile Unternehmer an mein Geld will und ich selbst bei meinen Entscheidungen so gut wie willenlos bin...... und ich bin glücklich drüber

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group