Fragen zum Menü

Übersicht BlitzBasic Allgemein

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

 

Colius

Betreff: Fragen zum Menü

BeitragDo, Okt 20, 2005 14:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe seit ein paar wochen mit BB angefangen und bin schon nicht mehr aufzuhalten von programiren.
Nun zu den Problem(en) Rolling Eyes
Wie schaffe ich es das Start, Laden, Ende eine Variable bekommt, dass ich diese dan anklicken kann und zum Spiel oder Menü komme?
user posted image


Graphics 640, 480

BBG = LoadImage("BBG6401.bmp")

For I=-640 To 0
DrawImage BBG, I, 0
Delay 5
Next


Delay 1000
bildvariable = LoadImage("DLK640.bmp")
Delay 1000


DrawImage bildvariable, 0, 0
Delay 1000
Hauptmen = LoadImage("HP.bmp")
DrawImage Hauptmen, 0, 0

Bin erfreut auf antworten

eziX

BeitragDo, Okt 20, 2005 16:25
Antworten mit Zitat
Benutzer-Profile anzeigen
eine frage: warum so viele delays? das stopt das programm komplett ab und nevt die SPieler nur, bitte wegmachen Very Happy

skey-z

BeitragDo, Okt 20, 2005 20:10
Antworten mit Zitat
Benutzer-Profile anzeigen
hab dir deinen Code mal umgeschrieben, musst nur noch die positionen der Bilder anpassen, wenn gewünscht

BlitzBasic: [AUSKLAPPEN]

Graphics 640, 480
SetBuffer BackBuffer() ;Schaltet den hintergrundpuffer an

BBG = LoadImage(\"BBG6401.bmp\") ;Bilder laden

bildvariable = LoadImage(\"DLK640.bmp\")

Hauptmen = LoadImage(\"HP.bmp\")

Repeat ;Schleife starten

Cls ;bild löschen

;Alles in den hintergrundpuffer speichern

TileBlock BBG,0,0 ;Tileblock kachelt das bild automatisch über den ganzen Bildschirm

DrawImage bildvariable 0

DrawImage Hauptmem, 0, 0

Flip ;hintergrundpuffer wird zum frontpuffer und ist auf dem Bildschirm zu sehen

Until KeyHit(1) ;wenn ESC gedrückt wird, endet die schleife

End ;Das programm endet
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

Paranoide

BeitragFr, Okt 21, 2005 23:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Kleiner Tip noch von mir:

Du arbeitest gar nicht mit Buffern und Flip, so wie es dir skey-z gerade gezeigt hat. Wenn du noch Anfänger bist, solltest du dich zu allererst mit den Buffern (BackBuffer, FrontBuffer,...) und dem Befehl Flip (und was so dazugehört!) vertraut machen.
Ich glaube du wolltest das Bild am Anfang von der Seite LANGSAM reinkommen lassen. Deshalb hast du den Delay-Befehl benutzt. Wenn du's mit den Buffern machen würdest, würdest du erkennen, dass du den Delay-Befehl gar nicht brauchst, da es so schon lange genug dauert (falls es dir dann ZU langsam ist, dann musst du eben bei deinem FOR...NEXT noch ein STEP 2 oder STEP 3 hinter die erste Zeile setzen...dann läuft das Bild schneller und man merkt gar nicht, dass immer 2 oder 3 Pixel "übersprungen" werden!)!!!

Das fiel mir gerade dazu ein, weil ich...
1. ...auch noch Anfänger bin (!) und
2. ...es am Anfang genauso gemacht habe!!!

Michel
 

Colius

BeitragDo, Okt 27, 2005 14:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke habe selber schon eine Lösung vieleicht gefunden nur mich würde noch interesiren wie ich die das geschriebene so wie ein Märchen machen kann bzw die schrift verlangsame das jeder buchstabe erscheint? Question

@ skey-z danke für den Quellentext habe ich als vorlage genommen Smile

Hagbard

BeitragSo, Okt 30, 2005 14:22
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Schrift wie ein Märchen: Suche mal bei Google nach Fonts
--> http://www.fonts-online.de

2. Meinst du einen Schreibmaschineneffekt?
Folgender Code ist aus dem Buch von RM:
Code: [AUSKLAPPEN]

story$ = "Es war einmal ein tapferer Krieger, der..."
For I = 1 To Len(story)
Write Mid$(story$, 1, 1)
Delay 200
Next


Für weitere Varianten solltest du mal im Codearchiv suchen

mfg
 

Paranoide

BeitragDi, Nov 01, 2005 13:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Blacky hat Folgendes geschrieben:

Code: [AUSKLAPPEN]

story$ = "Es war einmal ein tapferer Krieger, der..."
For I = 1 To Len(story)
Write Mid$(story$, 1, 1)
Delay 200
Next



Es muss aber heißen:

Code: [AUSKLAPPEN]
Write Mid$(story$, I, 1)


Weil ja sonst nur die ganze Zeit das "E" geschrieben wird!!!
 

Colius

BeitragDo, Nov 10, 2005 15:17
Antworten mit Zitat
Benutzer-Profile anzeigen
danke hab mich schon gewundert mit dem eeeeeeeeeeeeeee^^

Hagbard

BeitragFr, Nov 11, 2005 17:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Big Sorry, ja, ich habe falsch abgetippt.
Embarassed

mfg
 

Roller Coaster

BeitragSo, Sep 24, 2006 22:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Hier hab ich n' kleines Startmenü programmiert!

Code: [AUSKLAPPEN]

Graphics 640,480,0,1
hinter = LoadImage ("stars.bmp")
tiles = LoadImage ("blocks1.bmp")
maus = LoadImage ("pointer.bmp")
font = LoadFont("Times New Roman", 40, 1, 0, 0)
SetFont font


; Graphik für Menüpunkt erzeugen

stein = CreateImage(32,32)
SetBuffer ImageBuffer(stein)
DrawImageRect tiles, 0, 0, 444, 308, 32, 32
ScaleImage stein, 8, 2

; Graphik für aktiven Spielstein erzeugen

aktivstein = CreateImage(32,32)
SetBuffer ImageBuffer(aktivstein)
DrawImageRect tiles, 0, 0, 2, 342, 32, 32
ScaleImage aktivstein, 8, 2

; Menü definieren

Dim MenuZeile(3) : Dim MenuName$(3)
MenuZeile(1) = 100 : MenuName$(1) = "Start"
MenuZeile(2) = 200 : MenuName$(2) = "Einstellungen"
MenuZeile(3) = 300 : MenuName$(3) = "Ende"

;
; Hauptmenü-Schleife
;
SetBuffer BackBuffer()
Repeat
 I = I+1
 If I=200 Then I=0
 TileBlock hinter,0,I
 Menu = 0
 X = MouseX()
 Y = MouseY()
   
 For I=1 To 3
  If ImageRectOverlap (maus, X, Y, 192, 100*I, 256, 64) Then
   DrawImage aktivstein, 192, I * 100
   Menu = I
  Else
   DrawImage stein, 192, I * 100
  EndIf
  Text (640 - StringWidth( MenuName$(I) )) / 2, I*100 + 12, MenuName$(I)
 Next

 DrawImage maus, X,Y
 Flip

 If MouseHit(1) Then
  If Menu = 1 Then Start()
  If Menu = 2 Then Einstellungen()
  If Menu = 3 Then Ende()
 EndIf
 
 Until KeyHit(1)
End

;
; Funktionen für Menüpunkte
;

Function Start()
 Repeat
  Cls
  Text 100,100, "Spielstart"
  Flip
 Until KeyHit(1)
End Function

Function Einstellungen()
Text 100,100 "Einstellungen"
End Function

Function Ende()
FreeImage stein
FreeImage hinter
FreeImage tiles
FreeImage maus
End   
End Function

Du kannst alles verändern!
Is aber e n' bisschen simpel für'n Hauptmenü!
Viel Spaß
Aber! Sorry wenn's nicht funzt!

BladeRunner

Moderator

BeitragSo, Sep 24, 2006 22:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Thread ist uralt. Bitte konzentrier Dich wenn Du helfen willst auf aktuelle Probleme.
~GESCHLOSSEN~
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group