der vorgefertigte zufall

Posted By: ratz

der vorgefertigte zufall - 12/23/13 10:15

hallo

ich hab mal eine ganz einfache aber evtl auch recht komplizierte frage ...

öffne ich ein spiel , indem der Zufall die x,y position eines objects bestimmt, liegt dieses halt immer "zufällig" woanders auch bei neustart des spieles -> (so soll es ja auch...)

///////

das gleiche brauche ich für mein spiel !

-> ich hab mal vor einiger zeit ein 2d space shooter erstellt, der auch die x,y position des objectes per zufall ermittelt ...

ABER

egal wie offt und wann ich das spiel öffne ... der zufallspunkt ist immer der gleiche

z.b.

schieße ich ein object ab so wird es zufällig oben links in der ecke wieder neu dargestellt.
kollidiere ich wiederum mit diesen, so ist das nächste object unten rechts ...

und jetzt der Punkt, den ich nicht vestehe...

öffne ich das erstellte spiel nochmal
so weis ich schon im vorraus wo der nächte zufalls punkt liegt, sobald ich mit dem object collidiere oder es abschieße

nun zur frage:

WARUM IST DAS SO ???

-> liegt das an der A8 engine ?

diese frage wurmt mich schon recht lange laugh
Posted By: alibaba

Re: der vorgefertigte zufall - 12/23/13 10:21

Ist random_seed(0) gesetzt?
Posted By: ratz

Re: der vorgefertigte zufall - 12/23/13 10:25

nö und ich glaub das ist auch schon des rätsels lösung tongue
... ich guck mal nach wie und wo ich es einsetzen muss
Posted By: ratz

Re: der vorgefertigte zufall - 12/23/13 10:28

manuel sagt folgendes: wink

Parameter:
seed - "Saat"-Wert für den Zufallsgenerator oder 0 für eine tatsächlich zufällige "Saat". Ein seed-Wert von ungleich Null generiert immer diselbe Zahlenfolge für nachfolgende random()-Aufrufe.
Posted By: ratz

Re: der vorgefertigte zufall - 12/23/13 10:42

genau das wars !
Code:
...
function create_enemy(i_2)
{
random_seed(0); // <- hier :)
enemies[i_2] = pan_create("bmap = enemy2.bmp; flags = VISIBLE;", 20);
enemies[i_2].pos_x = random(650);
enemies[i_2].pos_y = random(150);
enemy_event(i_2);
enemy_collisions(i_2);
i_2++;
}
...


DANKE !!!
Posted By: Superku

Re: der vorgefertigte zufall - 12/23/13 10:50

Für gewöhnlich verwendet man "random_seed(0)" nur einmal im Code, bspw. am Start der main Funktion.
© 2024 lite-C Forums