Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-08-2004, 19:03   #1 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
puzzle mit Math.random

hi,

bastel gerade ein kleines puzzle mit 20 steinen.
die steine liegen in einem kranz um die freien felder, die quadratisch angeordnet sind. bei einem neuen spiel, sollen die steine im kranz vertauscht sein.
dazu habe ich folgendes srcipt.
das doofe ist nur, wenn ich für alle 20 möglichkeiten, die _x/_y-werte hardcodiert zuweisen muss, werde ich ja rammdösig!!

Code:
zufall = Math.floor(Math.random()*20)+1;
if (zufall == 1) {
    p_1._x = 279;
    p_1._y = 78;
    
    p_2._x = 198;
    p_2._y = 78;

        
    p_3._x = 360;
    p_3._y = 78;
    
    p_4._x = 441,
    p_4._y = 78;
    
    p_5._x = 522,
    p_5._y = 78;

:
:    
    }
if (zufall == 2) {
    p_1._x = 360;
    p_1._y = 78;
}
if (zufall == 3) {
    p_1._x = 441;
    p_1._y = 78;
}
if (zufall == 4 ) {
    p_1._x = 522;
    p_1._y = 78;
}
:
gruss sven
xlive ist offline   Mit Zitat antworten
Alt 17-08-2004, 20:02   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Hmmm, müsste man wissen, wie sich die Reihe fortsetzt. Also was ich aus deinen bisherigen Angaben entnehme, is, dass der y-Wert gleich bleibt und der x-Wert sich immer um 81 erhöht. Das ließe sich z.B. so ausdrücken:
ActionScript:
  1. for(var i = 1; i <= 5; i++) {
  2.   this["p_" + i]._x += 81 * (zufall - 1);
  3. }
Aber das is wahrscheinlich noch nicht alles... aber vielleicht mal so als Ansatz. Gäbe bestimmt auch die Möglichkeit, mit Arrays zu arbeiten...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 17-08-2004, 20:11   #3 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Mit sowas vielleicht!

ActionScript:
  1. var mcArray = ["mc1", "mc2", "mc3", "mc4", "mc5"];
  2. var posArray = [[0, 50], [50, 100], [150, 200], [250, 150], [300, 250]];
  3. var l = posArray.length;
  4. var ziel_list = [];
  5. for (var i = 0; i<l; i++) {
  6.     r = Math.floor(Math.random()*posArray.length);
  7.     ziel_list[i] = posArray[r];
  8.     posArray.splice(r, 1);
  9.     this[mcArray[i]]._x = ziel_list[i][0];
  10.     this[mcArray[i]]._y = ziel_list[i][1];
  11. }
Hi sonar
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 18-08-2004, 13:10   #4 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi RustyCake,

super lösung. danke.
habe das ganze noch etwas aufgebohrt und angepasst.
sobald das puzzle fertig ist, werd´s ich mal posten.

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 18-08-2004, 15:03   #5 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi,

puzzle liegt unter:
http://www.castra.de/puzzle.zip

aufgabenstellung:
wenn der "Neu starten-Button" gedrückt wird, soll die bilder kurz in ihrer ursprungsstellung zu sehen sein.
danach sich neue anordnen, bei jedem button-klick sollen die bilder sich per zufall an einer anderen position
befinden.

gruss sven
xlive ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele