ActionScript 2.0 :: OnEnterFrame Breaking LocalToGlobal
Jan 13, 2009I am using localToGlobal to get the _y coordinate of a nested movieClip in relation to the stage.[code]
View 1 RepliesI am using localToGlobal to get the _y coordinate of a nested movieClip in relation to the stage.[code]
View 1 RepliesonEnterFrame=null, onEnterFrame=undefined & delete onEnterFrame....
Which one to use??? What are the performance considerations. If all my movieclips on-stage are running a MovieClip.prototype.onEnterFrame = function() {run initial stuff before setting onEnterFrame=null/undefined... }, will there be performance hits? It's sad that delete onEnterFrame doesn't work unless I delete the prototype enterFrame as well, which would make the clips reinitailise itself again once you declare the enterFrame prototype again (i need to do this since there's more movieclips that end up appearing on-stage, and they need to automatically initialises themselves the moment they appear).
[Code]...
i'm very new to Flash (although have plenty of experience in Java, C++, PHP, etc). For a University assignment, I am creating a World Cup Guide and i'm creating a countdown to the tournament. I've followed a tutorial and modified it slightly but i'm receiving an error message. The error message is:
[Code]....
any consise methods to restart a deleted onEnterFrame that has been deleted?
View 3 RepliesI have a bunch of enemy ships in a container on the stage.I am moving the container around every second and I'm creating bullets that the enemy ship are firing.So I need to have the bullets get created on the stage where the enemy ship is located currently so I can have it y-- on an enter frame event.The Y coordiantes are accurate but for some reason the X coordinates get scaled across the screen. So the first enemy ship is only off by 10 pixels or so, but the 2nd ship, the bullet gets created about 50-60 pixels over to the right.Is there any reason why the Y would be right but the X isn't?[code]
View 1 Repliesfunction traceCoordinates(event:MouseEvent):void {
var clickPoint:Point = new Point(square.mouseX, square.mouseY);
trace("display object coordinates:", clickPoint);
trace("stage coordinates:", square.localToGlobal(clickPoint));
}
i just want to find extract the .x value? clickPoint.x does not work???
I have a some objects of same class type prgramatically generated on the stage.Inside these objects which are generally at x=300 on the stage is the code:
Code:
this.x+=2.3;
trace(parent.localToGlobal(new Point(this.x,this.y)), ", ", this.x , " ", this.y);
A sample of the trace output is as follows..
(x=2.3, y=0) , 2.3 0
Now im expecting some values in there somewhere to indicate its absolute location on the stage, ie, x=300.This isnt happening.Whats the correct syntax i should be using.Bare in mind these object will be of any name on the stage and will be dynamically created so its not easy to just reference their mc names.
i am teaching myself how to use localToGlobal(), and i seem to be running into a scoping snag, at least i THINK it is a scoping snag. So when i use Code:
[Code].....
i get the desired effect, yippee. That is to say, the output says 299, which is what the global coordinate of the movie is. However when i try use the same code in the main time line like this
[Code].....
Here's what i have:
Code:
for(var i=x; i<y; i++)
{
[code]......
I'm adding several instances of an MC (bread_mc) into a container MC (wall_mc). wall_mc has been added to a shop class and that is where i'm called the rest of my functions from. Also the wall_mc is scrolled left and right with mouseX & mouseY values. I've set up a function to add the bread_mc to the wall at different x/y positions.
[Code]...
I really don't even know if i'm using it right, But I think my problem lies in the fact that I need the currMC path to travel up the display list tree and get the global stage X/Y position. I'm not too sure how to implement a dynamic path with the localToGlobal method.
i just cant make this function work. Using addChild player mc is added to stage, inside it theres a mc named ballCnt. I need to make that position global, but it keeps giving local coordinates. Heres the code line (the last one i tryed):
var point:Point = localToGlobal(new Point(player.ballCnt.x, player.ballCnt.y));
trace(point);
I have a movie clip that is nested inside 2 other clips and want to get it's coordinates on the stage. I am using the localToGlobal method but it is returning the wrong values. Here is my code:[AS]
var myPoint = new Point(this.skew_mc.grid_mc.dot_mc.x, this.skew_mc.grid_mc.dot_mc.y);
var newPoint = this.skew_mc.grid_mc.dot_mc.localToGlobal(myP);
trace(newP);[/AS]
I've attached an fla with an example of this in. If anyone can point out where I'm going wrong .
Let's say i have a 3 movieclips which are nested one in other like this:A-> B-> CAnd i would like to find out C movie clip (which is in B mc and B mc is in A mc) coordinates relative to global stage, how can i accomplish that?
View 3 RepliesI'm making a driving game in Flash Mx 2004, and I based my code in MarkFeller Game,but I can't make the code works, now I'm with problems in the skid routine, flash dont give me any error, but the code don't works (the LineTo and MoveTo dont do anything) and I think that my problem is with localToGlobal function....
Here is my code....
Code:
acel = .2;
angulo = 0;
atrito = .98;
VelocidadeMinima = -5;
[code]....
I have a movieclip A inside a movieclip B. A has a coords (10, 0) and B has a coords (0, 0). So technically the global point for A should be (10, 0) right? Well it's giving me (20, 0). I put A at (10, 10) and I get (20, 20). This is just the weirdest thing ever.
View 2 RepliesSay I have a movieclip called theScreen a 0,0. It is 800 wide, 700 hightheScreen contains a movieclip called theStatusArea at 600,0. It is 200 wide by 700 hightheStausArea contains a movieClip called pieces at 10, 410. It is 180 wide by 180 highpieces contains a number of movieclips (triangle, square, etc.),all of these sub movieclips are more narrow than the pieces container and are all set added to the pieces container at 0,0
var pt:Point = new Point(triangle.x, triangle.y)
pt= triangle.localToGlobal(pt);
trace(pt); // should be 610, 410 at least at the start.
[code]....
What I'm having the problem with is the proper usage of localToGlobal method. I have the hero mc, I put into it another mc called 'weapon'. Now, in the game, I want to fire a projectile and set it at the x and y of the weapon. The question is, how can I access the absolute x and y of the weapon.
View 3 RepliesMy problems keep piling up. I was trying to figure out where child objects X and Y positions are on stage and not locally. Therefore i use the "localToGlobal" function and I'm pretty sure i use it correctly? The thing is that some Y values are true but the X are just completely spaced out. I use a function to find all child objects on stage and this works great.
Code:
private function findGameElements():void
{
// Array that will store all elements on screen and their values
fixedElements = new Array();
[Code].....
I got 23 boxes (box1, box2...) inside two movieclips (Circle.SizeableCircle). I need to bring all these to the front, using localToGlobal.This brings box1 to the front (or whatever it's called):
PHP Code: var cpBox1:Point=new Point(Circle.SizeableCircle.box1.x,Circle.SizeableCircle.box1.y);var gpBox1:Point=Circle.SizeableCircle.box1.parent.localToGlobal(cpBox1);
What can I do instead of making 23x that code?
I've got a clip on the stage at (100, 100) and I execute the following code:
[Code]....
Given that circle1 is on the stage, shouldn't localToGlobal leave the co-ordinates unchanged? I think the result of its call is wrong!
I have a small problem with usage localToGlobal and than back to local. I can get global coordinate of my nested mc in question alright. Than i check if this coordinate + value of my mc.width is more than my stage width. I get to this part with no problem. Than if value is bigger (so mc is not on the stage i mean if part is off the stage i change value so it is stage width - mc.width). So i get value in global coordinates that i need. But how do i apply this to my nested clip is my question? For reference here is my code:
[Code]...
So I am able to trace the correct coordinates. However the hitTest fails. Here is my code:
[code]....
Ive tried looking in a whole bunch of threads for a solution to this probably common issue but to no avail.I have a bunch of objects of same type on the stage which are generated through code.Inside these objects which are generally at x=300 on the stage.
Code:
this.x+=2.3;
trace(stage1.localToGlobal(new Point(this.x,this.y)), ", ", this.x , " ", this.y);
stage1 is the stage object I pass into my class.The trace output is as follows
(x=2.3, y=0) , 2.3 0
Now im expecting some values in there somewhere to indicate its actual location on the stage, ie, x=300.This isnt happening.Whats the correct syntax i should be using.
I'm working on an isometric-view prototype game, and I thought a good way to do the collision detection would be to put four empty movie clips on each of the character's base corners (it's a cube), convert those corner's _x and _y to the Stage, and go from there. Problem is, how to get it to work.My character is on the stage in an otherwise empty "clip" MovieClip. Here's what I have inside my character:
Code:
onClipEvent(enterFrame){
var point:Object = new Object();
point.rightX = right._x;[code]....
Whenever I trace any of these, it always traces the local coordinates. Otherwise, everything is fine.
i am using is flash cs3. the as2 swf contains a tween code using mx transitions.when i remove this tween code and hard code it on the enterframe there seems to be no problem.afaik avm2 should fully supports the as2 and as1 code. so i am unable to understand why this disparity when coding a simple tween in as2 swf.i had made a post in the actionscript forums hoping to gain some light on the issue.URL...[code]
View 2 Replieswhat its meant to do: A casestudy, has a section for each client, showing a selection of work for each one. It starts at a random client/section each time it is loaded, and there is also a menu that allows you to go to a specific client/section if you want.
So what i've done is made a randomly generated var at frame 1, and then told it to gotoAndPlay different sections of my timeline
Code:
var myVar = Math.floor(Math.random() * 6) + 1;
if (myVar == 1) {
gotoAndPlay(5);
[Code]....
This is working fine, as is the menu. However, as soon as I add a new layer with 2 or more images, in any of the sections it stops working.
Stranger still, it seems to be if i use more than one of the same image type it wont work ie, 1 jpg, 1 gif, 1 png it still works, but if i have 2 jpgs or 2 gifs it will break.
I also tried making a movie clip to hold my images, but the same thing happens
I saw a website where a video was breaking up in 2 parts.Is there an easy way to do that
View 7 RepliesJust installed Flash CS4 and the first thing i realized was:When I break apart text the curves straightens in some places.Is there a setting i need to set up for this not to happen?Didn't have any problems in CS3.
View 1 RepliesI am working on a project where I need to show a wooden board and have the user pick a place on the board and somewhat realistically (at least believable) simulate the board breaking and shattering at that point. The final product will need to run on a mobile platform so performance is an issue.I have already experimented a bit and have a movie clip board which is composed of predetermined pieces and I used a tween to move the pieces apart. The main problem is that the way the board breaks and where it breaks are predetermined
View 2 RepliesIf I want to break out of a function rather than a loop, it's suggested that I use the return; statement. But that doesn't work in the following code, I just want the trace statement to run once...
Code:
stage.addEventListener(Event.ENTER_FRAME, EnterFrameHandler);
function EnterFrameHandler(event:Event):void {
trace("It worked, obviously.");
return;
}
So, this will trace the phrase over and over with no stopping point. Why doesn't return have an effect? Doesn't the first line only happen once... ?