Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-06-2005, 08:18   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2002
Beiträge: 39
kombination aus hitTest und onRollOver?!

aloah!

meine problematik ist folgende: ich habe zwei mcs - einer dragable (object) - der andere nicht (area). nun möchte ich, dass sich 'area' einfärbt, während ich 'object' drüberziehe [im onPress-zustand]. habe es schon mit onRollOver und einer weiteren hitTest-funktion probiert - scheint nicht zu funktionieren

ActionScript:
  1. baseX = object._x;
  2.     baseY = object._y;
  3.    
  4.     object.onPress = function() {
  5.        
  6.         this.startDrag(true);
  7.        
  8.     };
  9.    
  10.     object.onRelease = function() {
  11.  
  12.         this.stopDrag();
  13.  
  14.         if (this.hitTest(area)) {
  15.            
  16.             this._x = area._x;
  17.             this._y = area._y;
  18.            
  19.             this.gotoAndStop(2);
  20.             this.enabled = false;
  21.            
  22.         } else {
  23.            
  24.             this._x = baseX;
  25.             this._y = baseY;
  26.            
  27.         }
  28.     };
Pixelhamster ist offline   Mit Zitat antworten
Alt 27-06-2005, 08:44   #2 (permalink)
Neuer User
 
Benutzerbild von derschatten-nrw
 
Registriert seit: May 2003
Ort: Düsseldorf
Beiträge: 381
ActionScript:
  1. object.onRelease = function() {
  2.        
  3.         this.stopDrag();
  4.        
  5.         if (this.hitTest(area)) {
  6.                
  7.                 this._x = area._x;
  8.                 this._y = area._y;
  9.                
  10.                 area.gotoAndStop(2); // Jetzt sollte sich der mc_area verfärben
  11.                 this.enabled = false;
  12.                
  13.         } else {
  14.                
  15.                 this._x = baseX;
  16.                 this._y = baseY;
  17.                
  18.         }
  19. };

Wenn ich das so richtig verstanden habe.
derschatten-nrw ist offline   Mit Zitat antworten
Alt 27-06-2005, 08:49   #3 (permalink)
Neuer User
 
Registriert seit: Jul 2002
Beiträge: 39
nicht ganz, 'area' soll sich verfärben während ich 'object' drüberziehe... mit onDragOver wills nicht...
Pixelhamster ist offline   Mit Zitat antworten
Alt 27-06-2005, 08:52   #4 (permalink)
Neuer User
 
Benutzerbild von derschatten-nrw
 
Registriert seit: May 2003
Ort: Düsseldorf
Beiträge: 381
dann schau dir mal meine kurze fla an...

http://home.arcor.de/fussifan/hitTest.fla
derschatten-nrw ist offline   Mit Zitat antworten
Alt 27-06-2005, 09:07   #5 (permalink)
Neuer User
 
Registriert seit: Jul 2002
Beiträge: 39
danke für deine bemühung.. meine problematik ist dadurch allerdings auch noch nicht gelöst ich hab hier mal was hochgeladen.. ich ziehe "object" über "area" - und während sich "object" über "area" befindet (mit gedrückter maustaste), soll sich "area" einfärben... also im prinzip ein normaler rollOver mit nem object... dürfte eigentlich nicht schwer sein, nur hab ich im moment keine ahnung...

http://pain.deerdance.net/test.swf
Pixelhamster ist offline   Mit Zitat antworten
Alt 27-06-2005, 09:17   #6 (permalink)
Neuer User
 
Benutzerbild von derschatten-nrw
 
Registriert seit: May 2003
Ort: Düsseldorf
Beiträge: 381
Ah danke für die Info...

http://home.arcor.de/fussifan/hitTest.fla ... schau es dir nochmal an, ich glaub das dürfte jetzt soweit funktionieren.
derschatten-nrw ist offline   Mit Zitat antworten
Alt 27-06-2005, 09:27   #7 (permalink)
Neuer User
 
Registriert seit: Jul 2002
Beiträge: 39
hey super! vielen vielen dank! ist echt klasse von dir - hast mir nen riesigen gefallen getan

ich paste jetzt noch mal den fertig angepassten code.. falls jemand bedarf hat..

ActionScript:
  1. baseX = object._x;
  2.     baseY = object._y;
  3.    
  4.     object.onPress = function() {
  5.        
  6.         this.startDrag(true);
  7.        
  8.         this.onEnterFrame = function() {
  9.        
  10.             if (object.hitTest(area) == true) {
  11.  
  12.                 area.gotoAndStop(2);
  13.  
  14.             } else if (object.hitTest(area) == false) {
  15.            
  16.                 area.gotoAndStop(1);
  17.             }
  18.         }
  19.        
  20.     };
  21.    
  22.     object.onRelease = function() {
  23.  
  24.         this.stopDrag();
  25.  
  26.         if (this.hitTest(area)) {
  27.            
  28.             this._x = area._x;
  29.             this._y = area._y;
  30.            
  31.             this.gotoAndStop(2);
  32.             this.enabled = false;
  33.            
  34.         } else {
  35.            
  36.             this._x = baseX;
  37.             this._y = baseY;
  38.            
  39.         }
  40.     };
Pixelhamster ist offline   Mit Zitat antworten
Alt 27-06-2005, 09:41   #8 (permalink)
Neuer User
 
Benutzerbild von derschatten-nrw
 
Registriert seit: May 2003
Ort: Düsseldorf
Beiträge: 381
Hey no Problem, dafür ist dieses Forum ja da !

Kleiner Tip noch, falls du den hitTest nicht mehr brauchst. dann schreib doch noch dazu
ActionScript:
  1. delete this.onEnterFrame;
das schont die Performance.
derschatten-nrw 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 18:43 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele