Zielpfad

hab mal noch weiter probiert hab dann nun dies stehen

function setzePano (obj) {
obj.mittelpunkt = 500
obj.umkehrPunkt = (obj._width - (obj.mittelpunkt * 2)) / 2
duplicateMovieClip (obj,"navi2", 16385 )
navi2._y = obj._y
obj.onEnterFrame = function (){
_root.navi.onMouseMove = function():Void {
var leer = _root.navi.hitTest(_xmouse, _ymouse, true);
if (leer == true) {
trace("you hit the circle");

this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10)
if (this._x < 0 - this.umkehrPunkt) {
this._x = this._x + this._width
}
if (this._x - this._width > 0 - this.umkehrPunkt) {
this._x = this._x - this._width
}
this._parent.navi2._x = this._x - this._width
}
else if(leer == false) {
trace("nope");
}
}
}
}

getURL("FSCommand:allowscale","false")
outline.swapDepths(10)
setzePano(navi);

Aber nun lagt es ein bisschen
 
Hi,

probier es ohne Shape-Flag:
Code:
root.navi.hitTest(_xmouse, _ymouse, false);
Du musst allerdings zusätzlich auf Kollision mit dem Duplikat der Navi prüfen (daher mein Vorschlag mit dem transparenten MC):
Code:
var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));

Gruß

P.S.: Bitte setze Codeausschnitte der besseren Lesbarkeit wegen in [CODE]-Tags!
.
 
nun dann hab ich das.

obj.onEnterFrame = function (){
_root.navi.onMouseMove = function() {
var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));
if (isover == true) {
trace("you hit the circle");

this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10)
if (this._x < 0 - this.umkehrPunkt) {
this._x = this._x + this._width
}
if (this._x - this._width > 0 - this.umkehrPunkt) {
this._x = this._x - this._width
}
this._parent.navi2._x = this._x - this._width
}
else if(isover == false) {
trace("nope");
}
}

Allerdings bewegt sich dann nur das menü wenn ich die mouse auch daraufbewege
Wenn ich nun RollOver mache dann bewegt es sich nur kurz wenn ich draufgeh und erst wieder wenn ich runtergehe und nochmal drauf:

Code:
		obj.onEnterFrame = function  (){
			_root.navi.onRollOver = function() {
   			var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));
    			if (isover == true) {
    				trace("you hit the circle");
    				
					this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10)
					if (this._x < 0 - this.umkehrPunkt) {
						this._x = this._x + this._width
					}
					if (this._x - this._width > 0 - this.umkehrPunkt) {
						this._x = this._x - this._width
					}
					this._parent.navi2._x = this._x - this._width
				}
				else if(isover == false) {
					trace("nope");
				}
			}
		}

Wie schaff ich es nun das wenn man draufgeht das es sich dauerhaft bewegt und wenn man runtergeht stopt
 
Hi,

1. onRollOver ist hier (aus mehreren Gründen, nicht zuletzt der Maushandler-Schachtelung wegen) der völlig falsche Ansatz.

2. Ich hatte übersehen, dass Du die onEnterFrame-Methode noch in eine onMouseMove-Methode geschachtelt hattest: diese hat dort ebenfalls nichts zu suchen.

Gruß
.
 
Du meinst also so oder?

Code:
function setzePano (obj) {
		obj.mittelpunkt = 500
		obj.umkehrPunkt = (obj._width - (obj.mittelpunkt * 2)) / 2
		duplicateMovieClip (obj,"navi2", 16385 )
		navi2._y = obj._y
		_root.navi.onMouseMove = function() {
   			var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));
    			if (isover == true) {
    				trace("you hit the circle");
    				obj.onEnterFrame = function  (){
						this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10)
						if (this._x < 0 - this.umkehrPunkt) {
							this._x = this._x + this._width
						}
						if (this._x - this._width > 0 - this.umkehrPunkt) {
							this._x = this._x - this._width
						}
						this._parent.navi2._x = this._x - this._width
					}
				}
				else if(isover == false) {
					return;
					trace("nope");
			}
		}
	}

Dabei hört es nämlich wieder dann nicht auf sich zu bewegen :(
 
Zuletzt bearbeitet:
:rolleyes: nein, ich meinte so:
Code:
obj.onEnterFrame = function (){
  var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));
  if (isover == true) {
    this._x = this._x + (this.mittelpunkt - this._parent._xmouse) / 10;
    if (this._x < 0 - this.umkehrPunkt) {
      this._x = this._x + this._width;
    }
    if (this._x - this._width > 0 - this.umkehrPunkt) {
      this._x = this._x - this._width;
    }
    this._parent.navi2._x = this._x - this._width;
  }
}
,denn wie ich sagte:
mir hat gesagt.:
[..] dass Du die onEnterFrame-Methode noch in eine onMouseMove-Methode geschachtelt hattest: diese hat dort ebenfalls nichts zu suchen.

Gruß
.
 
ahh ok hatte es gerade auch rausgefunden aber ein bisschen anders

Code:
_root.navi.onMouseMove = function() {
   			var isover = (_root.navi.hitTest(_xmouse, _ymouse, false) || _root.navi2.hitTest(_xmouse, _ymouse, false));
    			if (isover == true) {
    				obj.onEnterFrame = function  (){
						this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10)
						if (this._x < 0 - this.umkehrPunkt) {
							this._x = this._x + this._width
						}
						if (this._x - this._width > 0 - this.umkehrPunkt) {
							this._x = this._x - this._width
						}
						this._parent.navi2._x = this._x - this._width
					}
				}
				else if(isover == false) {
					obj.onEnterFrame = function  (){
						return;
					}
			}
		}

Aber noch eine frage wie schaff ich es das es sich langsamer hinundherbewegt den bis jetzt kann man kaum etwas lesen
Und was vllt auch noch cool wäre wenn der balken nicht so aprupt abbremst sondern noch langsam ausläuft
Aber wieder einmal fehlt mir dazu der ansatz
 
Das
Code:
_root.navi.onMouseMove = function() {
ist nach wie vor überflüssig: Damit erstellst Du (unsinnigerweise) jedes Mal wenn Du die Maus bewegst, die komplette onEnterFrame-Methode neu.

Die Geschwindigkeit kannst Du anpassen, wenn Du den rot markierten Wert änderst:
Code:
this._x = this._x + ((this.mittelpunkt - this._parent._xmouse) / 10);

Gruß
.
 

Neue Beiträge

Zurück