Hintergrund zeigen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

mabox

Betreff: Hintergrund zeigen

BeitragSo, Feb 11, 2007 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich will ein Bild im Vordergrund anzeigen und eins im Hintergrund. das Hintergrund bild soll man wechseln können. Leider klappt das noch nicht ganz. Das zweite Hinergrundbild wird nur ganz ganz kurz angezeigt.
Hier derCode: [AUSKLAPPEN]
Graphics 800,600,16,1
SetBuffer BackBuffer()
Hintergrund = LoadImage ("Hintergrund.bmp")
Hintergrund1 = LoadImage ("Hintergrund1.bmp")
Vordergrund = LoadImage ("Vordergrund.bmp")

MaskImage Vordergrund, 0, 255, 0
MidHandle Vordergrund
MoveMouse 400,300

Repeat
Cls

DrawImage Hintergrund,1,1
DrawImage Vordergrund, MouseX(), MouseY()

If KeyHit (203) Then

DrawImage Hintergrund1,1,1
DrawImage Vordergrund, MouseX(), MouseY()
EndIf

Flip
Until KeyHit(1)
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl
Dönerfresser Homepage

ZaP

BeitragSo, Feb 11, 2007 19:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Joa, weil er in der Schleife das erste BG Bild zeichnet und wenn man diese Taste drückt das zweite, soweit richtig. Er zeichnet jedoch das erste BG Bild nochmal, weils ja eine Endlosschleife ist.

Machs doch so: ^^

Code: [AUSKLAPPEN]


...

MyVar = 0

Repeat
Cls

if MyVar = 0
DrawImage Hintergrund,1,1
DrawImage Vordergrund, MouseX(), MouseY()
endif

If KeyHit (203) Then

MyVar = 1
DrawImage Hintergrund1,1,1
DrawImage Vordergrund, MouseX(), MouseY()
EndIf

Flip
Until KeyHit(1)
Starfare: Worklog, Website (download)
  • Zuletzt bearbeitet von ZaP am So, Feb 11, 2007 19:30, insgesamt 2-mal bearbeitet

robotx

BeitragSo, Feb 11, 2007 19:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Das musst du anders lösen, da KeyHit ja nur ganz kurz ausgeführt wird.

Code: [AUSKLAPPEN]

keyhit = KeyHit(203)

If keyhit = 1 And variable = 0 Then variable = 1
If keyhit = 1 And variable = 1 Then variable = 0

If variable = 1 Then
     DrawImage Hintergrund,1,1
     DrawImage Vordergrund, MouseX(), MouseY()
ElseIf variable = 0 Then
     DrawImage Hintergrund1,1,1
     DrawImage Vordergrund, MouseX(), MouseY()
Endif


mfg robotx
www.botbomb.robotzgames.de
www.robotzgames.de

pixelshooter

BeitragSo, Feb 11, 2007 19:34
Antworten mit Zitat
Benutzer-Profile anzeigen
dein problem ist: wenn die taste gedrückt wird, wird es in diesem durchlauf überdas normale gemalt, sonst nicht. probiers mal mit:

Code: [AUSKLAPPEN]
Graphics 800,600,16,1
SetBuffer BackBuffer()
Hintergrund = LoadImage ("Hintergrund.bmp")
Hintergrund1 = LoadImage ("Hintergrund1.bmp")
Vordergrund = LoadImage ("Vordergrund.bmp")
bg = 0

MaskImage Vordergrund, 0, 255, 0
MidHandle Vordergrund
MoveMouse 400,300

Repeat
Cls

If KeyHit (203) Then bg = (bg + 1) Mod 2
select bg
case 0
DrawImage Hintergrund,1,1
case 1
DrawImage Hintergrund1,1,1
end select

DrawImage Vordergrund, MouseX(), MouseY()
EndIf

Flip
Until KeyHit(1)
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc

mabox

Betreff: ok

BeitragSo, Feb 11, 2007 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke jetzt funktionierts Very Happy
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl
Dönerfresser Homepage

ZaP

BeitragSo, Feb 11, 2007 19:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Muss es ja nach 3 Lösungsvorschlägen xD
Starfare: Worklog, Website (download)

pixelshooter

BeitragSo, Feb 11, 2007 21:41
Antworten mit Zitat
Benutzer-Profile anzeigen
@ robotx: Das problem an deinem code is, dass du viel schreiben musst um noch ein element aufzunehmen. mit mod musst du einfach die gesamtzahl der argumente eigeben, zwischen denen gewechselt werden kann
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc

robotx

BeitragSo, Feb 11, 2007 22:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Das stimmt schon, aber ich habs mir so angewöhnt. Wink

mfg robotx
www.botbomb.robotzgames.de
www.robotzgames.de

StepTiger

BeitragSo, Feb 11, 2007 23:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habs jetzt auch mal elegant versucht Laughing

Code: [AUSKLAPPEN]
local img[1]

foreground=LoadImage("Vordergrund.bmp")

img[0]=LoadImage("bla.bmp")
img[1]=LoadImage("bla2.bmp")

while not keyhit(1)

   drawimage img[bg],0,0
   drawimage foreground,fx,fy
   
   if keyhit(57) then bg=1-bg
   
   flip
   cls
wend
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer:
AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t
Gewinner: BP Code Compo #2
Π=3.141592653589793238...<--- und das aus dem kopf Laughing
Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group