ActionScript 3.0 :: Intercept The Coordinates Of A Nested MC Respect To The Stage?
Oct 14, 2011
I've a button on the stage called "closedbt" that i have to move near an image. This image is nested into a MC named "gallery", then it's coordinates are different from the rest of the stage.
I am building a project where I have 15 'islands' inside one big 'ocean' movie clip. I created navigation buttons so you can explore the Ocean movie clip and look around the islands. my problem comes when i want to 'zoom into an island'
So basically on the stage i have a movie clip called- Ocean_mc, and inside it are 15 movie clips, one of them (for this example) is a movie clip called GreenIsland_mc.
when a user clicks the GreenIsland_mc it needs to expand and place itself centre stage, then when clicked again in needs to colaps back to where it came from. The problem is that when GreenIsland_mc expands it needs to expand to coordinates relative to the stage, but when I shrink it back again it need to find the original coordinates relative to its place inside the Ocean_mc movie clip.
I have a main mc, with another mc nested inside it that needs to reposition to exact x,y coordinates (on four separate occasions). Can I put keyframes on the timeline with a script placed on the keyframes so that when my main movie reaches those frames, the nested mc repositions to the specified coordinates?
I am trying to get a movie clip - nested inside another movie clip on the stage - to match the x, y coordinates of the mouse. Attached is an example file both in Flash 8 and MX2004 formats. I can get the drag to occur, but the problem is that the dragged mc's coordinates are relative to it's parent movie clip and not the stage. I have been messing around with localToGlobal with not much luck. I think I may be using it wrong, though. I have left it out of the example file.
Here is the relevant code: var dragging = false; this.onMouseMove = function() { if (dragging == true) { this.container.drag._x = _xmouse; this.container.drag._y = _ymouse; }}; [Code] .....
I have a MovieClip ("mc3" that moves dynamically) inside of a MovieClip ("mc2" that moves dynamically) that is on the stage ("stage" that is static). I need to find the value of mc3's x in relation to the stage? I need to make it into a variable. I am trying to do the math, can't figure it out. Also tried localToGlobal and failed.
I have a whole stack of tile instances arranged in a grid on the stage. Each mc has a button in it. All I want is when the user clicks the 'mc', to return the coordinates of that mc relative to the main stage. I've tried _root, _parent ... everything.
Does each tile have to be named? Of course I have been able to find the coordinate if I name them all but I'm dealing with about 600 of them. Also, they are arranged in a weird way that I can't use AS to generate it at runtime. Check out the attachment and you will see what I mean.
I know about Flash's localToGlobal and globalToLocal methods to transform coordinates from the local system to the global system, but is there a way to achieve the intermediate? To transform coordinates from an arbitrary system to any other arbitrary system?
I have a clickable object inside a Sprite, and the Sprite is a child of the stage. I want to retrieve the clicked point in the Sprite.
mc1 is placed on the stage. There are several key framesinside of it. On the first key frame is mc2. The subsequent keyframes have copies of mc2 which have been tweaked individually byway of transform tool etc. Run the play head manually and you sell the frames like you meant.But when the movie is tested only the original mc2 (as on keyframe 1) shows up on all the frames. And it is evident that thescript is moving the playhead as images placed in key frames onanother layer in mc1 appear correctly. I have heard its called 'puppeting' but my question remains:
I am having some trouble with Classes with respect to a movieclips 'As 2.0 class' in the linkage settings.After an attachMovie i am expecting my Class members to exist but they are not
OK, This is what i was doing...I create a MovieClip called Class1_mc and another called Class2_mc, original eh.i then stick an instance of class2_mc INSIDE of Class1_mc, call it clipinner
ok so i assign Class1 to Class1_mc and Class2 to Class2_mc via the linkage settings.
I want to develop a player , which shows images.URL...but I am so much confused about the progress bar or scrubber which can be moved or how to arrange with respect to time just like VIDEO Player every image will have to play 10 sec , so if 20 images , so there will be 200 sec.so how i should control this time bar or even when user move the scrubber, it moves to exact image with respect to time
I have a graphical component and I am trying to obtain it's coordinates relative to the stage by using the localToGlobal or contentToGlobal methods.
My problem is when scrolling a Container, these methods do not return the correct values, but return the old unshifted coordinates of the graphical component. Later, after everything seems stable, when trying to use the methods they return correct value so this means at the time where I use them after scrolling not all information necessary in computing have been commited.
For the case of the Container class I have investigated and although it passes through the scrollChildren method, the computation is wrong.For the case of the Tree component when scrolling with the wheel, the methods return correct value, but when pressing the arrow button of the scroll-bar the methods return incorrect value.
Until now I have tried to listen the scroll and the update complete events when they are dispatched but without any success. So my problem is that after scrolling I would need to know a moment(event to be listened or something else) that I can call the methods and the output to be ok.I would like the final solution to be uniform.
I made a particle generator that spawns bubbles... the particle spawner is a movieclip and all particles are children to it... this spawner is then loaded to stage with some more instances of it and they're arranged so that they produce enough bubbles to cover pretty much the whole screen...
So far so good... the trouble is that this project is meant to be projected into a hologram, and needs to be positioned, rotated and distorted to fit the irregular projection space...
My idea is to just leave the particle generating swf as it is and load it into another swf, then do all the positioning and rotationing as if it were a movieclip... My knowledge of Flash and the way movieclips have they own local spaces tells me that this has no reason to not work... but apparently, loaded swf's have a mind of their own...
I'm loading the swf using the UILoader component, which seemed to me the easiest way to get it working, since it doesn't need to be dynamic or anything... I just want to position it once, save it at that, and leave it be...
the trouble is that once loaded, the particle generating swf spawns it's emmiters (there are 5) in relation to stage space, and not loader space... so it doesn't respect it's boundaries or orientation...
I've tried all possible settings of the UILoader parameters... none seem to work with an swf that is creating movieclips at runtime...
Does anyone know why this is? I'm probably missing something stupid here... I'm feeling rather dumb today... yesterday I created the whole particle emmiter and bubble physics in 2 hours, but today it seems my head doesn't want to go and I'm stuck with this rather silly problem...
I tried placing the UILoader into another movieclip, so that any loaded content would be inside that movieclip's space, but it just doesn't respect any orientation... btw, I'm not rotating it by code... yet... I was trying to get it working using the editor, which would indeed be much faster and simpler.
I am trying to scale a movieclip with AS3, but always using the center of the stage as the registration point. The movieclip is larger than the stage to begin with, and uses a slider component to slide back and forth. I'd like to be able to scale the movieclip using a button, but it currently uses it's own registration point (upper left corner) as the source.
Is there a way to force the scale to use the center of the stage?
I just started coding classes and I am having some pretty good success thus far coding individual objects. BUT I realized that I don't know how to find coordinates of another object that is on the stage!Say I am coding in the class "Zombieguy".With the other movieclips linkage "Armyguy" I try toracetrace(Armyguy.y);ORtrace(Armyguy.Y);Both come up with "access of possibly undefined property y through reference with static type Class".I'm sure this is probably pretty simple, but can someone inform me of how to do this small step that is holding me back?
I have a Movieclip (MC1) with and moving object (OBJ1) inside it and using AS3. I want to do a hit test on it with another object (OBJ2) that is on the stage. Normally I would just do MC1.x + OBJ1.x to get my coords for the hit test. But how do I do it if MC1 has been rotated?
Okay this is always something that's puzzled me. If I create a movieclip, place that clip on the stage, then inside that movieclip, create another movieclip, how does flash determine the coordinates of that second movieclip in relation to the stage. The reason I am asking this, is that I have a large movieclip which contains a number of other smaller movieclips. When a user clicks on one of the smaller movie clips, I need the larger movieclip to move so that the clicked movieclip is now centered on the stage.
I figure that this would be easier to know if I knew how to calculate the distance which the second, smaller movieclip is from the center of the main stage in x and y coordinate values. Am I making any sense? If not I'll try to explain again.
Is there a method to determine the stage coordinates of a movie clip?
I don't mean something like this: stageX = mc.x + mc.parent.x + mc.parent.parent.x + ....
I would like to be able to determine the movie clip stage coordinates without knowing what are its parents and grandparents etc. The goal is to be able to place the movie clip on exact place on a stage, no matter what is the nesting structure.
I want to trigger via mouseDown a function that plays a 30 frame mc while the mouseX coordinate increases and the mouse Y decreases. Then when the mouseX coordinates decreases and mouseY increases ie. the mouse moves up on the stage - mc plays in reverse So basically the movieClip is scrolled by the mousemovement. When the mouse is not moving mc stops at currentFrame
i have 20 buttons, and i want to design an external file that holds the coordinates for each named button.how would i go about this, since the external file would be read as a string by flash?
is it possible for flash to detect off-stage mouse coordinates in order to continuously drag an object within its bounds while the mouse is moving outside of the stage? for example: i have a draggable red square on my stage. the stage is the bounds of the drag. if i drag the red square to the bottom of the stage and continue to drag outside of and around the stage, i'd like the red square to continue moving within it's bounds, following the mouse coordinates. currently, dragging halts as soon as i leave the stage and the red square only begins to move with the mouse coordinates if i reenter the stage bounds.
I have 35 movie clips named mcMyObject1, mcMyObject2, etc. to mcMyObject35Each time the playhead enters the frame this code sits on, I want all of these 35 movie clips to be placed on the stage in random orderI want each one of these 35 movie clips to land on one of these X coordinates: 57, 187, 317, 447, 577, 707, 837 and on one of these Y coordinates: 53, 183, 131, 443, 573. (It's a 7 x 5 grid)Movie size is 1024 x 768Here's my code, which doesn't work:
stop(); var myXArray=[57, 187, 317, 447, 577, 707, 837]; //cordordinates for x var myYArray=[53, 183, 313, 443, 573, 573, 573]; //cordordinates for y
I was trying to convert global coordinates to local coordinates of a UIComplenent in my flex project using below code using below code
var gp:Point = new Point(e.stageX,e.stageY); //global point var lp:Point = uic.globalToLocal(gp); //local point
uic is UIComponent in which I have subclass of Sprite for drawing something I have set the sprite's mouseEnabled and mouseChildren to false to not interrupt the mouse event. above code is within uic's mousemove event where I was tracing the gp and lp gp was giving correct value and suprisingly lp was giving negetive values. when I move the move to the top left corner of uic i expect lp to be 0,0 but it is giving the -width of of uic. I broke my head for hours and ended up finding an alternate by using offsets. Infact my original code was much simpler like this which was same issue
var lp:Point = new Point(e.localX,e.localY);
I am not sure what exactly is causing this problem. the workaround had lot of issues and it creating a mess in my rest of the algorithms.Just now I found even more interesting thing (which is actually weird). for some reason I went and create a new lp2
var lp2:Point = new Point(e.localX,e.localY);
now surprisingly it was giving correct values as expected and I went back and changed the code as
var gp:Point = new Point(e.stageX,e.stageY); //global point var lp:Point = uic.globalToLocal(gp); //local point var lp2:Point = new Point(e.localX,e.localY); var lp2:Point = uic.globalToLocal(gp);
now it is expected to have all the lp, lp2 and lp3 variables to be same but weiredly lp two is giving wrong value and lp2 and lp3 were giving correct. I am suspecting using the variable lp has something to do. I am not sure about that but above proves it so right now I am using lp2.
I was reading the 'Isometric Transformations' tutorial by Danko Kozar and I have a few questions. I understand what all the code does, but not how it does it. First of all, how does the following code work:
transforms x,y,z coordinates into Flash x coordinate xFla = function (x, y, z) { // cartesian coordinates[code].....
I understand that it converts 3d coordinates to 2d coordinates, but I don't understand how. What numbers whould be punched into x, y, and z to acquire certain desired effects?Also, what's the difference between moveTo and lineTo:
red line style(1, "0xFF0000", 100); plot(0, 0, 0); draw(200, 0, 0);