Sprites verschwinden

Für allgemeine Fragen zur Programmierung mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

btw:

wenn du in den schleifen nicht

0 to 3

sondern

0 to Anz_Geschenke

schreibst, und vorher auf ein maximun von z.b. 16 DIMensionierst,
kannst du von Level zu Level die Anzahl der geschenke verändern... :wink:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Lars
Beiträge: 347
Registriert: 31.08.2004 23:53
Wohnort: Shanghai
Kontaktdaten:

Beitrag von Lars »

@Kaeru
Ein Array geht hier genauso wenig, wie eine LinkedList, da im Code feste
Koordinaten abgefragt werden, die für jedes Geschenk anders sind.

Die Move Variable wird nicht gebraucht, da sie, wie du siehst, ziemlich
sofort, nachdem sie auf 1 gesetzt wurde, wieder auf 0 gesetzt wird.
Lars
The only problem with troubleshooting is, that sometimes the trouble shoots back.
P4 2,6Ghz, 512MB RAM, GeForce 6200, WinXP Pro SP2, PB V3.94
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

@Lars
Lars hat geschrieben:Ein Array geht hier genauso wenig, wie eine LinkedList, da im Code feste Koordinaten abgefragt werden, die für jedes Geschenk anders sind.
diese problem liesse sich umgehen, wenn er statt der koordinaten die MousePointer/Geschenk-Kollision abfragen würde... :allright:

oder wenn er die x-koordinaten aus einer formel berechnen würde... :shock:

...oder wenn er die start-koordinaten ebenfalls in ein array packt... /:->

@JG: wenn du dazu tipps haben willst, melde dich.
das macht diesen thread dann zwar fast zu einem tutorial, aber wen störts :wink:
Lars hat geschrieben:Die Move Variable wird nicht gebraucht, da sie, wie du siehst, ziemlich sofort, nachdem sie auf 1 gesetzt wurde, wieder auf 0 gesetzt wird.
da muss ich dir widersprechen:

Code: Alles auswählen

  If Geschenk1 = 1 
   Geschenk1_Y = Geschenk1_Y + 2 
   If Geschenk1_Y = 600 
    Geschenk1 = 0 
    Geschenk1_Y = 145 
   EndIf 
  EndIf
:shock: die Move Variable ist das Flag, das bestimmt, ob das geschenk fällt oder nicht. erst, wenn es den bildschirm verlassen hat, wird sie auf 0 gesetzt.

ich hab mir den code copiert und laufen lassen... ich habs gesehen...
...muss man halt mal schnell vier sprites in paint zurechtschmieren... :wink:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
JG
Beiträge: 63
Registriert: 23.10.2004 17:08

Beitrag von JG »

Hallo,
danke schon mal für die antworten!
Kann man das leichter abfragen ob ein geschenk angeklickt wurde??



JG

PS: Es kann sein, dass ich in der nächsten Zeit (1-2Tage) nicht antworte, weil mein Windows net so will wie ich.
Ich benutze z. Zt. noch die Demo Version!
AMD Athlon 2800+ | 1024MB RAM | ATI Raedon 9800 Pro 128MB| 60GB HDD
Benutzeravatar
Lars
Beiträge: 347
Registriert: 31.08.2004 23:53
Wohnort: Shanghai
Kontaktdaten:

Beitrag von Lars »

Kaeru Gaman hat geschrieben:diese problem liesse sich umgehen, [...]
Klar, man kann auch den ganzen Code neuschreiben. Ich wollte jetzt so
tief ins Prinzip nicht eingreifen und da die Koordinaten fest
einprogrammiert sind, ging ich mal davon aus, dass an diesen Positionen
evtl. Buttons auf dem Hintergrundsprite liegen oder derartige Späße.
Konnte ja nicht wissen, dass das extrem verunglückte
Kollisionserkennungsversuche sind.


Womit wir bei JGs Frage wären. Guck doch mal inder Hilfe unter
SpritePixelCollision(), JP :)

Kaeru Gaman hat geschrieben:die Move Variable ist das Flag, das bestimmt, ob das geschenk fällt oder nicht.
Erm, da habe ich irgendwie Mist gebaut, du hast Recht :wink:
Lars
The only problem with troubleshooting is, that sometimes the trouble shoots back.
P4 2,6Ghz, 512MB RAM, GeForce 6200, WinXP Pro SP2, PB V3.94
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

@Lars: noprob :)

@JG: Lars hat recht, schau mal in deine help zu den collision-funktionen
...wenn fragen offen bleiben, kannst ja nochma posten :wink:

PS: wenn du mit kollisionen arbeitest, kannst du die anfangspositionen der geschenke auch auf zufällige werte setzen... :wink:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten