Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-09-2005, 10:37   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 173
X- und Y-Positionen überprüfen

Hi,

also ich hab folgendes Problem, und komm einfach nicht weiter.

ich erstelle dynamisch 2 reihen von movieclips. die anzahl der erstellten mc's varriiert (wird aus nem array ausgelesen, spielt aber erstmal keine rolle). diese haben pro reihe immer die gleiche y-position, aber verschiedene x-positionen.

jetzt möchte ich das man die einzelnen mc's aus der erste reihe auf die einzelnen mc's der unteren reihe verschieben kann und das diese "einrasten" sobald sie in der nähe eines mc's aus der 2 reihe losgelassen werden.

meine idee war jetzt die x-positionen +-10 in ein array zu schreiben und dann zu überprüfen, ob die x-position beim loslassen in der nähe der x-positionen ist die im array stehen. vielleicht ist das der falsche weg, und es gibt ne ganz andere lösung.

hier mal das as, damit ihr vielleicht eher seht was ich meine:

ActionScript:
  1. function bildeKaesten(){
  2.     _global.XPositionen = [];
  3.     buchstabeEinzeln = wort.split("");
  4.     var wieviele = buchstabeEinzeln.length;
  5.     var breite = 30;
  6.     var poser = 298-(wieviele*breite)/2;
  7.     for (var i = 0;i < wieviele;i++){
  8.         var neuerMC = vorgabe_int.duplicateMovieClip("vorgabe_"+i, 200+i);
  9.         var XPosTmp = i*breite+poser;
  10.         neuerMC._x = XPosTmp;
  11.         _global.XPositionen.push(XPosTmp);
  12.         var XPosTmp2 = XPosTmp + 10;
  13.         _global.XPositionen.push(XPosTmp2);
  14.         var XPosTmp3 = XPosTmp - 10;
  15.         _global.XPositionen.push(XPosTmp3);
  16.         neuerMC._y = 50;
  17.         neuerMC.vorgabeTxt_int.text = buchstabeEinzeln[i];
  18.     }
  19.     //trace(_global.XPositionen);
  20.     for (var j = 0;j < wieviele;j++){
  21.         var neuerMC = loesungen_int.duplicateMovieClip("loesung_"+j, 100+j);
  22.         neuerMC._x = j*breite+poser;
  23.         neuerMC._y = 100;
  24.     }
  25. };

hier noch die aktion, wie ich sie mir in etwa auf den buttons vorgestellt habe.
der button liegt im film vorgabe_int, der dann ja dupliziert wird.

ActionScript:
  1. on (press) {
  2.     XPosStart = this._x;
  3.     YPosStart = this._y;
  4.     startDrag(this,true);
  5. }
  6.  
  7. on(release) {
  8.     stopDrag();
  9.     XPosStop = this._x;
  10.     YPosStop = this._y;
  11.     for (var i = 0; i < _global.XPositionen.length;i++){
  12.     //Hier muss jetzt die if abfrage rein, aber ich weiß nicht wie ich sie formulieren soll 
  13.     }   
  14. }

oder etwas in der art?

ActionScript:
  1. on (press) {
  2.         XPosStart = this._x;
  3.         YPosStart = this._y;
  4.         startDrag(this,true);
  5. }
  6.  
  7. on(release) {
  8.         stopDrag();
  9.         for (var i = 0; i < _global.wieviele;i++){
  10.                 var kollision = ["_root.loesung_"+i];
  11.                 var kollisionXPos = kollision._x;
  12.                 trace(kollisionXPos);
  13.                 if (this, hitTest(kollision)){
  14.                         trace(kollision._x);
  15.                         this._x = kollision._x;
  16.                         this._y = kollision._y;
  17.                         break;
  18.                 } else{
  19.                         this._x = XPosStart;
  20.                         this._y = YPosStart;
  21.                 }
  22.         }
  23. }

hier gibt er mir aber undefined für kollisionXPos aus, warum?

viele grüße
manni

Geändert von mannimedia (23-09-2005 um 15:40 Uhr)
mannimedia 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 13:47 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele