ActionScript 3.0 :: Constrain Movement Without Using The Drag Function?
Dec 6, 2009
I'm trying to create an interactive piece, where the veiwer can move sliders to effect to movement of other pieces. I understand how to contrain the movement of the sliders, and I've done so, but I'm having trouble figuring out how to constrain the movements of the mc's effected by the sliders. How do I do this without using the drag function?
I have a small movieclip where an external image gets loaded into a custom shape mask. The user can then drag the image around. This is all working fine.
I am now trying to constrain the movement allowed so that the image cannot ever leave the masked area.
On my startDrag() function i have tried to include the following properties but i cannot get this to work:
So I have a Sprite and if using startDrag(), how do I constrain the movement to x-axis only? that is, move it horizontally? The free x,y movement code sample is here, directly from Adobe's livedocs: [URL]
I'm moving an HSlider thumb via the accelerometer. The following code works fine. The problem, though, is that as I keep tilting the device, xSpeed continues to increment. This means that when I now tilt it the other way, the thumb doesn't move for a while -- since, depending on how long I was holding tilted in that intial direction, xSpeed has been going up and up.So this works, but with the abovementioned flaw:
private function readAcc(e:AccelerometerEvent):void { xSpeed -= e.accelerationX * 4;[code].......
But what I want to do is to stop incrementing xSpeed once the hSlider.value == either the minimum or the maximum. Sounds simple, but when I put in if statements, they prevent the thumb from moving at all:
I have a MC called planPOPUP which is draggable and at the moment I am constraining where the MC can be dragged to by using the 4 co-ordinates method such as:
Now would it be possible to, instead of using that method, place another MC around the edge of the stage, making a border, and then have some code so that whenever planPOPUP touches the border MC it cannot be dragged over it? Thus constraining it to within the borders of the stage?
The blue bar has the instance name track and the pink dot has the instance name puck.
I need the puck to be constrained within the blue area at all times, and this is where my maths failings work against me! So far I have the puck moving along the x axis only like this:
I have a movieclip that is locking to mouse center when dragging it. I know how to set up the boundary code, though the movieclip images are different sizes, so didn't want to have to create a custom code such as:t.startDrag(true, 290, 85, 910, 390);for each movieclip.does anyone know how to constrain the draggable item to within the left, top, right, bottom boundaries inside of a movieclip?
I have builded a 3d carousel following the tutorial and managed to insert it properly in my site. (great great tutroials, really)What i wanted to change though if possible, is that i would like the carousel to spin only when dragged by the mouse. I have searched alot of forums for days but didnt manage to find a script to include or substitute to achieve this.
I have a function that states when movieclip1 is dragged and hits a line then it stops the drag, however it seems to stop the entire drag function in the swf on the other movieclips even though they arent called in the function.[code]
I would like 2 objects that I can drag up and down indipendantly with the mouse (vertically only) between set limits. I would also like a line between the two objects that stretches like a piece of elastic.
Code: package { import flash.display.MovieClip import flash.events.Event import flash.events.* public class Main extends MovieClip{ Main is my document class, and player is a MC on the main timeline.
I was wondering if it's possible to use the startDrag function AND giving the selected MC an elastic movement. Or if I 'm supposed to use an onEnterframe function instead.My project needs me to use startDrag only, but I can give a smooth elastic MC movement with this function.
ErrorTypeError: Error #1010: A term is undefined and has no properties.at draft1_fla::MainTimeline/down()TypeError: Error #1010: A term is undefined and has no properties.at draft1_fla::MainTimeline/release2drop()Been working on this for a couple of hours and just cant seem to get my head around it. Why does this error keep appearing, what is it i need to do for each object in the array to simply drag and drop
Code:- import flash.events.MouseEvent; var cereal1_Array:Array =
I have a movie, within this movie I have a container which loads an external swf, the problem I have is that when this movie is viewed within a browser, if the browser is resized then the external swf that loads into the contanier resizes, going smaller or larger.How do I constrain a particular container to stay the same size, 100%?This is the script I have that loads the external swf, is there a way to constrain container?
I'm loading a .swf (flash game) (719 x 480) into a new .fla that is bigger (1280, 720) than the dimensions of the .swfThe game appears to load well, but when I start playing it, I realize that the game is messed up because it is actually running in the dimensions of the .flaCan somebody tell me how to constrain the loaded .swf to 719 x 480?NOTE: I can't change the .swf game file's codingAnd the .fla stage-size has to stay the same.
I load swf files continuously, but if one of the swfs has some defective code such as Mouse.hide() the mouse disappears when the swf is loaded. I want to constrain such malicious code in loaded swfs. There is also another problem related to containing loaded or loading swfs. When I load a swf which loads another swf to operate, It never completes loading (Event.Complete of contentLoaderInfo) because it needs another swf to load. However, the swf should be loaded before it runs. Since loaded swf is as-2, loader does not give any error. I am also suspicious whether or not it will give error if it is as-3.
I'm at a bit of a coders block, and I'm sure it's quite simple. I tried using the following:Code:((angle-180)%360) + 180But for angles < 180 degrees, it works just fine, but after that it get's a little funny. I know why it's doing that, I'm just looking for a way to fix it.
I've been playing with carousel code, and was wondering how to change it from circular animation (carousel) to left/right linear (conveyer belt) style animation, how to change the mover code and 't.angle = i * ((Math.PI*2)/numOfItems);'
I'm trying to create a script that would imitate an old rotary phone dial. I have this script, but need it to function on MOUSE_DOWN:
Code: handle.addEventListener(MouseEvent.ENTER_FRAME, startRotate); function startRotate(e:Event):void { var dx:Number=mouseX-handle.x; var dy:Number=mouseY-handle.y; // presupposes position of object to be facing to the right. var radians:Number=Math.atan2(dy,dx); handle.rotation=radians*180/Math.PI; var hR:Number = Math.round(handle.rotation); rotationA.text = String(hR); }
Changing the event handler doesn't work. Somehow the MouseDown function should be working like an EnterFrame event, I guess. The condition I want to check is whether or not the handle is at a certain degree angle to stop the dial from rotating. if (handle.rotation >= 30) { handle.rotation = ?; } Not sure what I need to put in there to stop it from rotating.
i want to use the simple startDrag-function to drag a movieclip. when the option to lock the movieclip is set to false, there's no problem but when i set this option to true, so the movieclip should follow the mouse locked to the center, my movieclip just disappears. i used this code:
I am trying to created a constraint to a rectangle. I have the startDrag working and I am trying to constrain a square to the movie size of 600x400.I have been searching online help files but I can not for the life of me get it to work, would someone beable to put me out of my misery. I have attached the demo file I am working with but I will also post my script here for thoughs who prefer that...
[code]...Now if I load this swf into a bigger SWF the mouse is acting in the entire movie as if it were in de loaded swf. This also happens when I test it (ctrl-enter) and make the resulting box bigger... the mouse will not fade at the border of the swf any more, but at the border of the containing window....) is there a (easy) way to constrain the mouse behaviour within the box of the loaded swf (like the MOUSELEAVE event triggered when i leave the box of the loaded swf in stead of the entire stage?)
I have a MC on stage with instance name of holder.I load a swf into holder. I want the swf which is bigger than holder to have the same height and width as holder.var myLoader:MovieClipLoader = new MovieClipLoader(); myLoader.loadClip("contact.swf", holder);