Wie bloß...? (Erste Schritte in PB)

Anfängerfragen zum Programmieren mit PureBasic.
Sharona
Beiträge: 7
Registriert: 02.07.2008 17:53
Wohnort: Gotha
Kontaktdaten:

Wie bloß...? (Erste Schritte in PB)

Beitrag von Sharona »

Hallo, ich bin totaler PureBasic4 ANFÄNGER!
Habe das Handbuch durchgearbeitet und die Beispiele gemacht. Dabei sind mir paar Sachen aufgefallen:
1. DIe Zahlenwete ,z.B. schwarz) 255,255,255 zeigt er bei mir als falschen parameter an.
die angabe aus der Fahrbtabelle(000000) nimmt er.
wenn ich dann das Programm testen will(Beispiel war mit 2 roten kästchen)
startet er,aber nix da mit roten kästchen. und das obwohl ich den Farbwert(laut Farbtabelle) eingegeben habe.

Des weiteren:
sobald es in If und And Befehlen geht meckert er nur.
Der Text lautet:

If BallX > SchlaegerX and BallX < SchlaegerX + 10 and
BallY > Schlaeger Y and Ball> < SchlaegerY+ + 30

BewegX = -1
Endif


das zeigte ermir als Fehler an und nix ist.


Was mache ich falsch???

Titel angepasst - Kaeru fecit
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

PB geht das mit mehreren Zeilen leider nicht du musst es also so schreiben :

Code: Alles auswählen

If BallX > SchlaegerX and BallX < SchlaegerX + 10 and BallY > Schlaeger Y and Ball < SchlaegerY + 30 

BewegX = -1 
Endif
Sharona
Beiträge: 7
Registriert: 02.07.2008 17:53
Wohnort: Gotha
Kontaktdaten:

...

Beitrag von Sharona »

Danke und was ist das mit den Farben, bzw. da wo welche sein sollen sind kein?
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Die Parameter fuer die Farben wurde irgendwann mal angepasst, kann also
sein das deine Anleitung zu alt ist. Warum du allerdings keine roten
Kaestchen angezeigt bekommst, laesst sich ohne Quellcode nur schwer sagen.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Willkommen im Forum.
möglicherweise Hintergrundinfos zu deiner Version findest du in den F A Q.

zu den Farben:
früher wurden Farben als drei getrennte Zahlen geschrieben, nämlich je ein Byte für Rot, Grün, Blau.
seit 4.0 nehmen die Befehle die einen Farbwert erwarten nur noch einen einzelnen Wert,
der besteht aus $000001 * Rot + $000100 * Grün + $010000 * Blau, bzw $BBGGRR,
der läßt sich auch mit den Funktion RGB(Rot, Grün, Blau) erzeugen.

zu dem Anderen:
dass in einem Anleitungsbuch Codes abgedfruckt sind, bei denen die zeilen umbrechen, ist ja nun extrem dämlich gemacht.
also wie edel bereits sagte, drauf achten, dass zusammenhängende Befehle/Ausdrücke immer in einer Zeile stehen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

<offtopic>
@Kaeru
Da Du gerade da bist, wie wäre es den Titel anzupassen? Wie bloß ... macht
sich nicht gut in der Datenbank, bzw. danach sucht auch niemand :mrgreen: </offtopic>
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
kswb73
Beiträge: 319
Registriert: 04.02.2008 16:51
Kontaktdaten:

Beitrag von kswb73 »

Du musst ganz einfach die drei Parametet (Zahlen) zischen "rgb(" und ")" setzten (ohne Anführungzeichen). Also wird aus ClearScreen(255,0,0) ClearScreen(rgb(255,0,0))

Wenn du professioneller arbeiten willst kannst du auch Hexadezimalzahlen nehmen. Die Hexadezimalzahlen stehen in der PureBasic Anleitung(F1). Du kannst sie aber auch mit der PureBasic Farbauswahl einsetzen (alt+P). Damit kannst du aber auch ganz leicht rgb() Werte einfügen. Einfach Farbe einstellen und "Farbe einfügen" anklicken und schwups ist der Hexadezimalwert beim Curser aufgetaucht. Klickst du auf "RGB einfügen" so taucht der Wert so auf, wie du es gewohnt bist, nur halt eben in rgb()-Form.
Windows XP: PB 4.31, PB 4.4, PB 4.51
Open Suse 11.2: PB 4.4
Sharona
Beiträge: 7
Registriert: 02.07.2008 17:53
Wohnort: Gotha
Kontaktdaten:

Beitrag von Sharona »

Danke für die Antworten.

Kämpfe mich gerade durch die Tutorials(wird das so geschrieben?)

Mein "Ziel" ist es ein Game mit Charakteren und Umgebung zu schaffen, glaube das dauert. Komm noch nicht mal mit Blender zurecht :(')

Aber ich muss immer mit

InitSprite()
Init...()
OpenScreen(...)

anfangen und dann die festen Bestandtteile mit
Global ....


setzen?
Sharona
Beiträge: 7
Registriert: 02.07.2008 17:53
Wohnort: Gotha
Kontaktdaten:

Beitrag von Sharona »

Habe mich grad an die Arbeit gemacht mit Hilfe eines Tut. mich durchzukämpfen
Bei
LoadSprite kam mir eine Frage auf,bzw.vielleicht ein Fehler/Denkproblem von mir.
Wie gebe ich die Datei(bmp.) an die ich laden will?

LoadSprite(0, "Dateiname.bmp",0)


oder wie?

Ich habe:
LoadSprite(0,"Eigene Bilder\seras viktoria.bmp",0)
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Sharona hat geschrieben:Ich habe:
LoadSprite(0,"Eigene Bilder\seras viktoria.bmp",0)
da musst Du den kompletten Pfad angeben:

beispielsweise so:

Code: Alles auswählen

"C:\Dokumente und Einstellungen\[username]\Eigene Dateien\Eigene Bilder\seras viktoria.bmp"
Grüße ... Kiffi

// Edit: Wenn Du Dein Programm später einmal weitergeben möchtest, muss
Du natürlich dann darauf achten, dass das Bild in einem Ordner ist, auf den
der User auch zugreifen kann ;-)
a²+b²=mc²
Antworten