ActionScript 2.0 :: Change A Movieclip From Local To Global?
Mar 27, 2009
I have a movie clip on my stage and it is named quest. Within quest, there are several frames representing the entire game (it's a text based adventure). Every once in a while, there will be an inventory item in one of those frames that has the ability to be dragged and dropped into the inventory box (which is a seperate movie clip on the main stage).
All of that works fine, however, since the movieclip that can be dragged was defined in the 'quest' movieclip, once the user needs to move on to the next frame in the quest panel, the inventory item disappears from the inventory box.
in my Controller Class:[code]brick it's inside a container and its position in x axis is 200px.When the brick is moving, the x and y value are based on stage x and y mouse.The 0 in the stage should correspond to -200 inside my container.How can i use globalToLocal method?instead write:brick.x = (mouseX - mouseX%theGrid.getGridSize())-200;
I have a problem where I make a variable in one class and change it using the constructor method in another.Is there anyway that I can make that variable available in all methods in this class? Here is the code:
I have this movie clip on a stage that I need everything to be center on stage even after resize.the clip structure is rootclip.child.child.the first time I click the button the tween works fine. If you click a second time the clips start start to drift away from center stage. And if I resize the stage everything seem to fall apart. the 203.5 is half the width of the MC that I'm trying to center. So it's total width is 407px.
ActionScript Code: this.startButton.onRelease = function () { var introHead_currentPos_x = _root.instructMc._x;[code]....
I made a cube with as3. I wanted it to rotate in the Y Axis according to the horizontal mouse movement. It works nice when this is all I want. But if I try to also make it rotate on the X axis with the vertical mouse movement, things get screwy.
This happens because the transformations are added in the global coordinates, not the local ones. So, for Example, if I wanted the cube to rotate 30 degrees along its Y axis, I have to find a way to translate that into the global coordinates, and then apply that to the matrix3D of each face. I need a local to global translator.
I wonder if a keyframe on an actions layer that has an action in it will work like a keyframe on other layers, meaning it will make all actions on the previous action frame inactive and only the actions on its corresponding action sheet available.If that is the case, is it possible to have at least two action layers to separate global and local actions?
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 define a global variable in a swf and then launch a child window which will alter the value of the global variable and I want the parent to detect that event and take specific action. How should I go about this? Can global variables launch events?
I have a movie clip called "myMC". I set its x value as such:
[AS] var myMC:MovieClip = new MovieClip(); addChild(myMC); myMC.x = 100;
[Code]....
I know I could proboly acheive this with a math equation but is there a function that can get the exact global position of "myShape"? So that I can position another movieclip or sprite around that movieclip?
I define a global variable in a swf and then launch a child window which will alter the value of the global variable and I want the parent to detect that event and take specific action. How should I go about this?
I am a rank Flash newbie, so maybe I'm missing something obvious. In InDesign or Illustrator, if I want to change every red object to blue, I can go into the color list, edit the red color to the blue values, and every instance of red in the document reflects the edit. I don't have to select each red element and pick the new blue for stroke and/or fill.
I have one movieclip A within another movieclip B , and I use button to move movieclip B up and down. Then how can I get the position value of the movieclip A ( the global position not the relative position to movieclip B ).
I have a global movieclip named globalInstance, but now I need to duplicate this movieclip and position them 5 x cordinate away from each other , how can I do it?
I have a global movieclip named globalInstance, but now I need to duplicate this movieclip and position them 5 x cordinate away from each other , how can I do it?public static var globalmc: DisplayObject; ( this is how I created the global mc)
If I wanted to get the global position of a movieclip inside another movieclip I just have to use localToGlobal. Is there anything similar I can use for _xscale and _yscale?If I have a movieclip which is scaled inside another movieclip which is scaled, how can I tell what the combination of those scales effectively become?
I've been looking into trying to develop a flash application that has images that will change based off of the time on the clock. For example, if I had an image of a landscape with the sun in the sky, at 11:59am the image of the sun at the highest point in the sky would display. If it was 9pm, an image would display showing a night time setting of that landscape. I've seen plenty of PHP scripts for this idea but nothing in regards to flash (AS2 or 3 )
I have a movie clip of an explosion which is done in code because I am randomizing the direction and amount of debris from the explosion, so it's a movie clip with one frame, and all animation is done in code. Problem is, I'm trying to pause the game from the main timeline when the player presses "p". Right now I have it so it turns the variable gamePaused = true and calls the function pauseGame() which stops everything else. However I don't know how to access the variable gamePaused from inside the explosion movie clip's code. If I can somehow check that variable in the movie clip, I can pause that animation until the player presses "p" again.
So basically, how do I access a variable in the main timeline from a movie clip?
Also just to point out, all of these explosions were created as Sprites in the main timeline's code, any solutions I have found online didn't like that. So just keep that in mind.
Here's the main timeline code:
//This Creates An Explosion<br> function createExplosion(explosionX, explosionY, explosionSize):void{<br> //This Creates The Explosion Movie Clip var explosionSprite:Sprite = new Sprite;
Is this possible AS3? I've been searching everywhere for a way to make Movieclip Instances globally accessible and haven't had any luck.I know I can make variables global by making them public and static in the class constructor, but I can't find a resource for objects.
I hear this is typically bad form, but I have a portfolio site where the entire site and it's contents change scale and position for every thumbnail.If I could make things like the BG, border, header, footer etc. globally accessible, I could change them all with a one or two global methods.
I have some filters set up, and have assigned some global vars to them, which I then use in my Filters code to display the filters: myText:Filters [globals.data.glow1, globals.data.stroke1, globals.data.shad1] Works perfectly. Now I want to assign a global var to each global filter var to determine if it should be shown or not. So...
i want to know whether its possible to change the local settings manager of flash programatically?. Earlier when the global settings manager was there i changed the settings by directly editing the .sol file? Will the same work now?
Let me try my best to explain this... On the stage I have a master movieclip, for explanation purposes, let's call this movieclip "body". Nested inside of body are several other movieclips (we'll call them anatomy items like: arm, hair, foot, etc) Now let's say we scaled body to 200% (body.scaleX = body.scaleY = 2.0)
When I run localToGlobal on one of the nested anatomy movieclips (e.g. arm), actionscript is returning the x and y values of the initial state, not reflecting the scale of body and how it actually caused the arm's position to shift globally.
Is there a simple way of determining a nested movieclip's global rotation?I have several nested movieclips that need to know what their rotation is to the main stage.