 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Key_Frogger
Anmeldungsdatum: 01.10.2009 Beiträge: 7
|
Verfasst am: 02.10.2009, 15:26 Titel: |
|
|
Also ich find die Idee echt gut und habe sie gleich mal aufgegriffen...
dennoch verstehe ich nicht warum die farben sich nicht treu im BMP bei mir bleiben... :S
das ist nervig ich weiß das Schwarz = tanz ist
aber welche farbe ist dann schwarz ?
weil ich würd mich ja schon auf schwarz weiß bilder beschränken... :S
mfg Key_Frogger
Code: |
DIM AS INTEGER breite, hoehe
SCREENINFO breite, hoehe
SCREENRES breite, hoehe,32,2,16
LINE (0,0)-(breite-1,hoehe-1),&hffff00ff,bf
Dim As Any Ptr buffer
buffer = ImageCreate(90,140)
BLoad "Schere.bmp", buffer
put (1,1), buffer
SLEEP
|
EDIT:
Hat sich erledigt nach langen probieren... es muss dann bei put (1,1), Schere,pset heißen... dmait die original farben übernommen werden  |
|
Nach oben |
|
 |
Key_Frogger
Anmeldungsdatum: 01.10.2009 Beiträge: 7
|
Verfasst am: 02.10.2009, 17:32 Titel: |
|
|
So mein Programm ist fast fertig...
bis auf mein problem mit RND...
Code: |
DIM AS INTEGER breite, hoehe
SCREENINFO breite, hoehe
SCREENRES breite, hoehe,32,2,16
Dim x as integer
Dim y as integer
Dim buttons as integer
Dim User as String
Dim SchereW as string
Dim PapierW as string
Dim SteinW as string
Dim loose as string
Dim win as string
Dim Same as string
Dim CKI as integer
Dim CKIW as string
DIM SchereC as String
Dim steinC as String
Dim PapierC as string
Dim Finish as string
Dim As Any Ptr Schere
Schere = ImageCreate(90,140)
BLoad "Schere.bmp", Schere
Dim As Any Ptr Papier
Papier = ImageCreate(90,140)
BLoad "Papier.bmp", Papier
Dim As Any Ptr Stein
Stein = ImageCreate(90,140)
BLoad "Stein.bmp", Stein
LINE (0,0)-(breite-1,hoehe-1),&hffff00ff,bf
put (1,30), Schere, pset
put (1,190), Papier, pset
put (1,350), Stein, pset
do
GetMouse (x, y, , buttons)
IF (x >= 1) AND (x <= 89) AND (y >= 30) AND (y <= 110) AND buttons=1 Then
User = "SchereW"
sleep
exit do
end if
do
GetMouse (x, y, , buttons)
IF (x >= 1) AND (x <= 89) AND (y >= 140) AND (y <= 210) AND buttons=1 Then
User = "PapierW"
sleep
exit do
end if
do
GetMouse (x, y, , buttons)
IF (x >= 1) AND (x <= 89) AND (y >= 140) AND (y <= 190) AND buttons=1 Then
User = "SteinW"
sleep
exit do
end if
RANDOMIZE TIMER
CKI = INT(RND * 3) + 1
IF CKI = "1" then
CKIW = "SchereC"
end if
IF CKI = "2" then
CKIW = "SteinC"
end if
IF CKI = "3" then
CKIW = "PapierC"
end if
SLEEP
IF User = "SteinW" And CKIW = "SchereC" then Finish = "Win"
IF User = "SteinW" AND CKIW = "SteinC" then Finish = "Same"
IF User = "SteinW" AND CKIW = "PapierC" then Finish = "Loose"
IF User = "PapierW" AND CKIW = "SteinC" then Finish = "Win"
IF User = "PapierW" AND CKIW = "SchereC" then Finish = "Loose"
IF User = "PapierW" AND CKIW = "PapierC" then Finish = "Same"
IF User = "SchereW" AND CKIW = "PapierC" then Finish = "Win"
IF User = "SchereW" AND CKIW = "SteinC" then Finish = "Loose"
IF User = "SchereW" AND CKIW = "SchereC" then Finish = "Loose"
If Finish = "Win" then Print "you have won!"
IF Finish = "Same" then Print "you have choose the same weapon"
IF Finish = "loose" then Print " you have Loose!"
sleep
|
weiß einer war da nicht stimmt... ich komm nicht drauf |
|
Nach oben |
|
 |
Muttonhead

Anmeldungsdatum: 26.08.2008 Beiträge: 567 Wohnort: Jüterbog
|
Verfasst am: 02.10.2009, 19:19 Titel: |
|
|
..also jede Schleife die mit DO beginnt muss mit LOOP beendet werden
deine Button-Abfrage könnte dann so gestaltet sein
Code: |
spielerantwort=""
do
getmouse...
if x=... then spielerantwort="Schere"
if x=... then spielerantwort="Stein"
if x=... then spielerantwort="Papier"
loop until spielerantwort >""
|
dein RND-Problem ist eigentlich gar keins
die Variable CKI dimensionierst du als integer, also einer Zahl
... und hier vergleichst du CKI mit was?
auch einer Zahl? Oder ist das vielleicht doch was anderes
und denke nochmal an MODs Tipp:am Ende des Programms die Images
mit DestroyImage(edit2: siehe http://www.freebasic-portal.de/befehlsreferenz/imagedestroy-308.html) zu löschen
Zuletzt bearbeitet von Muttonhead am 03.10.2009, 00:35, insgesamt 2-mal bearbeitet |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 02.10.2009, 19:29 Titel: |
|
|
irc hat Folgendes geschrieben: | <Key_Frogger_> ps.:ich benutze zZ den Italienischen portable" |
an der liegt's angeblich. die sagt angeblich, dass was mit dem RND nicht stimmt. ein anständiger compiler liefert auch die passenden zeilen und fehlermeldungen. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Luke

Anmeldungsdatum: 14.01.2009 Beiträge: 92 Wohnort: Ostfriesland !
|
Verfasst am: 03.10.2009, 11:40 Titel: |
|
|
Wie Muttonhead schon sagt: Du hast CKI als integer dimensioniert, und in der IF Konstruktion als string abgefragt. IF CKI = "1" THEN.
Richtig wäre IF CKI = 1 then. _________________ ICH war mal schizophren, aber jetzt sind WIR okay. |
|
Nach oben |
|
 |
Key_Frogger
Anmeldungsdatum: 01.10.2009 Beiträge: 7
|
Verfasst am: 04.10.2009, 15:00 Titel: |
|
|
ja ich habe es gemerkt...
ich habs auch gleich mal geändert danke
ja bei dem portable wurde kein fehler angeziegt hatte in einer vm gearbeitet... |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|