Habe ein Problem mit dem Zufall
Übersicht

Razor1994Betreff: Habe ein Problem mit dem Zufall |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also ich versuche gerade zufällig Kreise auf dem Bildschirm erscheinen zu lassen die mein "Futter" darstellen sollen.(vorläufig) Und weil ich diese auf kollisionen prüfen möchte, wollte ich die x und y Koordinaten in Variabeln abspeichern. Ich habs so gemacht.(sagts wenns falsch ist.)Code: [AUSKLAPPEN] Global rund2.futter
Type futter Field x Field y Field groesse Field naehrwert End Type Restore Futter anzahl = Rnd(1,30) For i = 1 To anzahl rund2 = New futter Read x, y rund2\x = x rund2\y = y rund2\groesse = 10 rund2\naehrwert = 5 Next ;dann halt in der Haupschleife Repeat cls Futter flip until keyhit(1) Function Futter() Oval rund2\x, rund2\y, rund2\groesse, rund2\groesse End Function ;Daten .Futter ;und hier einfach 30 mal Data Rnd(10,630), Rnd(10,470) Mein Problem ist jetzt aber das, da ich das ja per "Zufall" mache, dass immer die Fehlermeldung "data expression must be constant" kommt. |
||
User posted image
kommt in meinen Runescape clan |
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du brauchst hier kein Data.
Nutze diesen Code zur Initialisierung, anstatt einen Umweg über Data ![]() BlitzBasic: [AUSKLAPPEN] rund2\x = Rnd(10,630) Data brauchst du nur, wenn du vorherbestimmte Daten im Code festlegen möchtest. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: data expression must be constant
Heißt übrigens dass in Data-Blocks alles Konstant sein muss. Ein Data-Block ist im Prinzip einfach ein Block Daten der an deine exe hinten ran geklatscht wird. Demnach muss er beim Erstellen der exe ja schon bekannt sein. |
||
Razor1994 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@mpmxyz
Hatte ich ja am Anfang aber dann kam nur ein einziger Kreis.(immer(ja auch mit seedrnd)) und es soll ja eine zufällige anzahl zwischen 1 und 30 erscheinen. @silver_knee Ich weiss was es übersetzt heisst. |
||
User posted image
kommt in meinen Runescape clan |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Vorschlag von mpmxyz ist korrekt.
Das Problem ist, dass du dir nur den zuletzt erstellten Kreis in rund2 merkst und nur diesen einenzZeichnest. Die Globale kannst du weglassen. Stattdessen in der Zeichenfunktion "Futter()" mit einer For-Each ![]() |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
Razor1994 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah danke es klappt wiekonnte ich nur so etwas banales übersehen.^^ | ||
User posted image
kommt in meinen Runescape clan |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group