Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-10-2006, 14:57   #1 (permalink)
man lernt immer dazu
 
Benutzerbild von dabinjo
 
Registriert seit: Dec 2003
Ort: Freiburg
Beiträge: 442
Grenzen von Mc herausfinden

Salute

Wie kann ich denn die Positionen der äussersten Bergenzungen ( linien) eines quadrats herausfinden?
Ich habe nämlich folgendes Problem. Ich habe 2 MC's. Einen als Hintergrund ( back )und einen als dragbares Objekt ( drag) . Über einen Hittest will ich wissen wo der Drag-Mc sich befindet. Soweit Sogut...

Jetzt skaliere ich den back_Mc über das gesammte Browserfenster. Dadurch habe ich nicht mehr die möglichkeit den Drag-Mc ausserhalb des Hintergrunds zu plazieren. Jetzt will ich wissen wann Drag-Mc den Rand von Back_mc berührt und eine funktion aufrufen aber ich bekomm nicht raus wie die Begrenzungen auslesen kann...
hier ein Beispiel:
PHP-Code:
browserSize.onResize();
Stage.scaleMode "noScale";
Stage.align "TL";
back.onResize = function() {
    
back._width Stage.width;
    
back._height Stage.height;
};
Stage.addListener(back);
back.onResize();
drag.onPress = function() {
    
this.startDrag();
};

drag.onRelease = function() {
    
stopDrag();
    if (
this.hitTest(back)) {
        
trace("du bist drin");
    }else{
        
trace("du bist draussen")
    }
}; 
lieben Gruß
Daniel
dabinjo ist offline   Mit Zitat antworten
Alt 12-10-2006, 17:32   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
aber ich bekomm nicht raus wie die Begrenzungen auslesen kann...
Welche Begrenzungen? Die der Stage?
  Mit Zitat antworten
Alt 13-10-2006, 08:04   #3 (permalink)
man lernt immer dazu
 
Benutzerbild von dabinjo
 
Registriert seit: Dec 2003
Ort: Freiburg
Beiträge: 442
nein, sorry.
ich muss im grunde soetwas wie eine kollisions abfrage machen. wenn kleines quadrat die grenzen des bildschirms berührt dann stoppe...soetwas in der richtung. aber dazu brauche ich doch die genauen werte der beggrenzungen des kleinen quadrats. ich habs jetzt ziemlich dreckig hinbekommen, indem ich an jeder seite einen kleinen mc reingeparkt hab und der merkt wenn man ausserhalb des bildschirms ist und dann zurück springt:
PHP-Code:
quad.onRelease = function() {
    
stopDrag();
        if (
oben.hitTest(_parent.container)==false) {
        
_parent.menu_quad.tween("_y",250,0.5,"easeOutExpo");
    }
    if(
unten.hitTest(_parent.container)==false){
        
_parent.menu_quad.tween("_y",Stage.width-325,0.5,"easeOutExpo");
    }
    if(
links.hitTest(_parent.container)==false){
        
_parent.menu_quad.tween("_x",10,0.5,"easeOutExpo");
    }
    if(
rechts.hitTest(_parent.container)==false){
        
_parent.menu_quad.tween("_x",Stage.width-220,0.5,"easeOutExpo");
    }
    if((
links.hitTest(_parent.container)==false)&&(oben.hitTest(_parent.container)==false) ){
        
_parent.menu_quad.tween("_y",250,0.5,"easeOutExpo");
        
_parent.menu_quad.tween("_x",10,0.5,"easeOutExpo");
    }
    if((
rechts.hitTest(_parent.container)==false)&&(unten.hitTest(_parent.container)==false) ){
        
_parent.menu_quad.tween("_y",250,0.5,"easeOutExpo");
        
_parent.menu_quad.tween("_x",10,0.5,"easeOutExpo");
    }
    
}; 
aber wie gesgt, das ist ziemlich dreckig

gruß

daniel
dabinjo ist offline   Mit Zitat antworten
Alt 13-10-2006, 08:13   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
getBounds
gibt dir von einem mc: xMin, xMax, yMin und yMax

damit kannst du die 4 ecken testen. wird aber auch nicht weniger code ergeben als deine jetzige lösung.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 13-10-2006, 08:42   #5 (permalink)
man lernt immer dazu
 
Benutzerbild von dabinjo
 
Registriert seit: Dec 2003
Ort: Freiburg
Beiträge: 442
Salute

getBounds hatte ich auch ausprobiert, hat bein (mit) mir aber leider nich hingehau en
dabinjo ist offline   Mit Zitat antworten
Alt 13-10-2006, 09:08   #6 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
muster:
http://www.seibsprogrammladen.de/fra...ispiele/flash6
-> Grundwissen
moreEnterFrames.fla
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib 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 17:19 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele