Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Objekte zufällig bewegen lassen (https://www.delphipraxis.net/145899-objekte-zufaellig-bewegen-lassen.html)

FedEx1990 10. Jan 2010 15:37


Objekte zufällig bewegen lassen
 
Guten Tag,
ich muss für die Schule ein Spiel mit Delphi 6 programmieren. Meine Idee ist so etwas ähnliches wie moorhuhn zu programmieren. Wie ich Objekte bewegen kann (links nach rechts) weiss ich, nur meine Frage ist, ob ich die Objekte an einer zufälligen Position ausserhalb des Sichtbereiches starten lassen kann, damit die Moorhühner nicht immer den gleichen weg fliegen.


Bitte um schnelle Antwort, da ich bald fertig sein muss.


Vielen dank und lieben Gruß

patti 10. Jan 2010 15:56

Re: Objekte zufällig bewegen lassen
 
Im OnCreate rufst du einmalig folgendes auf:

Delphi-Quellcode:
Randomize;
In der Routine zum Setzen der Position der Objekte kannst du dann per

Delphi-Quellcode:
x := random(GrenzeX);
y := random(GrenzeY);
Die Position per Zufall bestimmen lassen (Du musst GrenzeX bzw. GrenzeY natürlich noch anpassen).

Außerdem könntest du dem Objekt noch eine zufällige x-Geschwindigkeit geben:

Delphi-Quellcode:
v := random(2) - 1;
if v = 0 then v := 1;
Jedes mal, wenn sich das Objekt bewegen soll, machst du dann noch:

Delphi-Quellcode:
x := x + v;
Dann hättest du eine zufällige Position und eine Bewegung in eine zufällige Richtung.

Der Code ist jetzt eher Pseudocode und funktioniert so natürlich noch nicht, aber vielleicht gibt dir das ja schonmal einen kleinen Denkanstoß!

mfg

Edit: Übrigens willkommen in der DP :dp:

FedEx1990 10. Jan 2010 16:43

Re: Objekte zufällig bewegen lassen
 
Hi danke für deine schnelle Antwort ich werde es mal versuchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:29 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz