Ich versuche, einen MovieClip einem benutzerdefinierten Mauszeiger (einem MovieClip) zu folgen, aber immer an einer definierten Position (in Bezug auf Koordinaten)), eine Entfernung vom Mauszeiger entfernt auf wo der Mauszeiger ist. Unten ist der Code:So definieren Sie die Position eines Movieclips in Relation zu der eines anderen MovieClips
import flash.display.MovieClip;
import flash.events.Event;
Mouse.hide();
var mouseCounter:int = 0;
var mouseDelay:int = 5;// how many frames the mouse must stay still before the follow code is run.
var speed:Number = 5;
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove);
stage.addEventListener(Event.ENTER_FRAME,follow);
// set counter back to zero whenever the mouse is moved.
function mouseMove(e:MouseEvent):void
{
wand.x = stage.mouseX;
wand.y = stage.mouseY;
e.updateAfterEvent();
mouseCounter = 0;
}
function follow(e:Event):void
{
// increment the counter each frame
mouseCounter++;
// now run the follow block if the mouse has been still for enough frames.
if (mouseCounter >= mouseDelay)
{
orb_mc.x -= (orb_mc.x - mouseX)/speed;
orb_mc.y -= (orb_mc.y - mouseY)/speed;
orb_mc.x = mouseX + 46.5;
orb_mc.y = mouseY +50.95;
}
}
Die letzten beiden Zeilen von Codes (26 & 27), ist das, was ich verwenden, um die orb_mc Position in Bezug auf den benutzerdefinierten Mauszeiger zu definieren, die „Zauberstab“ ist jedoch scheint es zu haben in Folge der Leichtigkeit der Bewegung des Kugel behindert, nicht so einfach, wenn der Code Positionierung ich falsch verwendet wird, ist
Bitte klären Sie, was Sie brauchen. Entweder möchten Sie, dass Ihr 'orb_mc' an der Position bei einem bestimmten Versatz von der Mausposition nachgibt oder dorthin springt? – Vesper
Ja, ich möchte, dass es dort leichter wird, anstatt dort zu springen. Ich war in der Lage, die Lockerung vorher zu erreichen, bis ich die Position – SoloWalker
Ich habe dich @SoloWalker definiert. eine Minute. –