ActionScript 2.0 :: Delay A Function Which Then Sets The OnEnterFrame Of A Clip?
Feb 21, 2006I'm trying to delay a function which then sets the onEnterFrame of a clip The colde I am trying will not work
[code]...
I'm trying to delay a function which then sets the onEnterFrame of a clip The colde I am trying will not work
[code]...
I have a 3D field with many MovieClips in it, and seems like the one last added is the one that overlaps others and not the one with highest z value. Is there any property/function that sets z-index? (sorting children by z value seems too much like a hack). A 3D engine that can place MovieClips will be helpful(but not one that requires custom drawing). I'm using Flash CS5 with ActionScript 3
View 2 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 pretty new to AS3 and am getting my feet wet as fast as I can. Currently I have a fairly simple thing I'm trying wherein I will have a button_mc that on ROLL_OVER, it triggers a function that will make another MC move. That part I can do- my question though is how can I have multiple button/movieclip "sets" that are able to call the same function? As an example, I'd have "button1_mc" trigger "shape1_mc", "button2_mc" trigger "shape2_mc", and so on. I want to avoid having to have separate sets of functions for each button/movieclip pair. I hope that makes sense.
Here's where I'm currently at with the first eventListener and corresponding function. You can see how in the function I have a specific MC (shape1_mc) named, which of course I'm trying to avoid, as I will likely have 5-10 similar buton/mc pairs like below. Is there a way to call the movieclip (shape1_mc) in the event handler itself without having to name it in the function?
[Code]...
as2 this works but in as3 it no work how do you do this in as3
this.onEnterFrame = function() { if(Key.isDown(Key.UP)) { square._y -= speed; }
I need to get the width of mc and pass it to a global variable that i can use.
Heres the code sample.
ActionScript Code:
xCor = -3;// this value is actually in the xml so it depends whether its negative or positve
var dragitem:MovieClip = _root.createEmptyMovieClip("new_item"+dragItemTracker,
[Code]....
I'm not getting errors but my program wont call my function.
Code:
this.onEnterFrame = function() {
if(wm == 10)[code].....
I want to change to my end game screen when my value of variable wm gets to 10. Sorry I cant figure out whats wrong with the if statement. It doesnt work outside a function either.
i want to call a funtion once within a onEnterFrame, butthe problem is that the onEnterFrame needs to go on and execute the function only once...(if its between the desired x positions (see script below))
my code
Code:
onClipEvent(enterFrame)
{
if(this._x < -150 && this._x > -1600)
[Code].....
How can I make a function go on without an onEnterFrame?
View 3 RepliesGot a piece of code that moves a line of text I'm calling "eeScroller". I'm using this method because timeline and as tweens make the movement herky jerky (when the movement is slow).
What I want to do is reset the _x of eeScroller to 0.9 once it reaches the _x of -889.3
Here's what I got so far:
Code:
function movething() {
_root.eeScroller.onEnterFrame = function() {
if (_root.eeScroller._x>=-889.3) {
[Code].....
how to implement onMotionFinished if that's even the way to do it...
A function has to "run"(execute) inside the onEnterFrame event method but the function does not seem to run when called.
Example:
_root.onEnterFrame()=function(){
if(something==true){
performFunction();
[Code]....
cerbatana is the instance of my button.. I need that when I hold left key... the "moverizq" function starts.. so I create a new function.. where I have the condition for Key.is Down and then I call the function with onEnterFrame..
function moverizq() {
cerbatana._x = cerbatana._x-5;
}
function moverder() {
[Code]....
I need to use an onEnterFrame event to call a function just once. Here's the code:
my_object.onEnterFrame = function() {
if (this._y == 100) {
my_function();
}
};
So say i drag "my_object" to a y-coordinate of 100, how do i make it so it only calls the function once. Then if i drag the object away from y=100, and then back to y=100, i want it to call the function again.
I'm using the onEnterFrame event b/c i need it to constantly look for the object to be at y=100, maybe except when its actually at 100.
I've been trying to work this out.
Code:
function ghostGoUpDown(currentGhost) {
//do stuff
} benet.onEnterFrame = function() {
//do stuff
if(maze_mc.hitTest(this._x-16,this._y,true)) {
[Code].....
How can I change it so that the ghostGoUpDown is only run once each frame the hit test is true?
How can one stop an onEnterFrame function?
View 5 RepliesThe function is called on release of a movieclip. I'm making a drag a drop navigation and there are two content windows .. "h1" and "h3".
I don't think there's anything(much) wrong with my code itself, I'm just having trouble with calling anything within h_ins.onEnterFrame. Is there a fundamental issue that I'm not aware of? Below are all the details if you're interested.
[Code]....
how to add an onEnterFrame event to a newly created movie clip.
This is what I'd do in as2:
Code:
var mc:MovieClip = new MovieClip()
mc.onEnterFrame = function(){
//Code here
[Code]......
Just wondering what the effects are of putting a function on an onEnterFrame function.
when you call the function what will it do differently? if anything. And is it a bad thing? will it cause bugs?
In the main timeline I have this onEnterFrame function. I also have this movieclip and in it's own timeline stops at frame one. When this movieclip is rolled over it plays and then stops at frame 9. I'm trying to make an if statement in the onEnterFrame function that says when that one movieclip is on frame 9, delete the onEnterFrame function.
I tried to do this code, but so far all I have is
if (movieclip._currentlabel = "framenine") {
delete this.onEnterFrame;
}
Users are also given a set of thumbnails for extra feedback and navigation (here's what I currently have: As you can see, I have a button on my main stage named "portfolio". It has a simple "on (release)" function that goes to frame 2 (frame 2 is when my artwork portfolio displays).I have some code placed on frame 2, in a separate "actions" layer(very simple stuff):
stop();
onEnterFrame=function() {
_root.thumb_movie.gotoAndPlay("book");
[code]......
When assigning a function to onEnterFrame, for ex. onEnterFrame = someFunction, you do not include the brackets or the script will not run properly. my question is then, how can you assign a function to onEnterFrame while specifying parameters for that function? I tried onEnterFrame = someFunction(param1), but the function will only execute once.
View 3 RepliesI haven't been able to find documentation on why loaded movies via 'loadMovie' into another movie clip don't seem to obey onEnterFrame commands. The following code represents a movie clip, 'container', which has a loaded external .swf file, 'box.swf'.
I have set the container to begin a decreasing alpha change. I've also added a trace to see if the onEnterFrame is performing at all. What happens is that the box does not appear to have an alpha change. There is, however, a trace that returns an output of '100' only. But no other numbers, suggesting that the command has stopped.
// Start
container.loadMovie("box.swf");
container.onEnterFrame = function () {
[Code]....
i am using the following AS to scale a movieclip with ease
[Code]....
should i be using a delete this.OnEnterFrame when the clip reaches the desired width? the problem is that ive noticed a lag in my tweens and i wonder if this is whats causing it.
I haven't been able to find documentation on why loaded movies via'loadMovie' into another movie clip don't seem to obey onEnterFramecommands. The following code represents a movie clip, 'container',which has a loaded external .swf file, 'box.swf'.I have set the container to begin a decreasing alpha change. I've alsoadded a trace to see if the onEnterFrame is performing at all. Whathappens is that the box does not appear to have an alpha change.Thereis, however, a trace that returns an output of '100' only. But noother numbers, suggesting that the command has stopped.
// Start
container.loadMovie("box.swf");
container.onEnterFrame = function () {
[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]....
I'm making a game, and it has an onEnterFrame which checks each players status (hp and turn), and decides what to do based on that. Looks like this:
Code:
_root.onEnterFrame = function(){
if(enemy.HP>0){
if(hero.HP>0){
if(hero.turn==0) {
[code]....
So this works fine when it's the players turn. But when it's the enemy's turn, the enemy simply attacks a bunch till hero.HP<0 and enemy wins. I am certain this is because it's checking each frame to see if it's the enemies turn and then it executes the hitting code before the turn is changed (which must mean this is freakin fast, so cool, but not good for me here!).I tried simply making a function to call at the end of the attack, with a function that happens only on first turn to let the player initiate, but when then the hero makes no attack, enemy attacks and there is a recursion error and it shuts down.
So, I'm a beginning to intermediate Flash and AS guy grappling with some programming concepts.I find that when I create my own functions from scratch, especially to define a generic function to different movie clips, in this case to their onEnterFrame functions, I get unexpected results.The bottom is some code from a new simple website I'm trying to code. My problem is that I can't get the function working in a generic way. I know I may be taking the completely wrong approach and totally missing something, but I am continuously coming up with problems (seems to be a misunderstading of scope at a deeper level, not simple variable timeline scope, but inherant scope within functions, etc..).So, I will just copy paste the code here and try and comment as much as possible. For claritie's sake I will remove button codes except option1 and option2.
//initialization of a few global and one timeline variable. These should
//be self explanatory in the code so I wont go into to much detail
//my probs arent in the detail but in the overall relationship of the
[code].....
If I need to assign the function fMy_Function to my_MC.onEnterFrame
Then it's fine to write :
myMC.onEnterFrame = fMy_Function;
but how to pass a parameter to fMy_Function ?
N.B. I don't want to use =function(){ fMy_Function(parameter1, parameter2); }
There is a function that I use all the time written in AS2 with buttons and rollovers to create a smooth animation in and out that doesn't relly on gotoAndPlay or gotoAndStop methods (as I have found them to be quite buggy. The AS2 code follows. I have started to write the same function in AS3, but keep getting errors when attempting to create a nested even listener for the onEnterFrame function that will drive the animation forward. How can I rewrite the AS2 function to work the same way in AS3.This is the AS2 Code
Code:
btnBox.onRollOver = function()
{
[code]....
I'm making a game, and it has an onEnterFrame which checks each players status (hp and turn), and decides what to do based on that.[code]So this works fine when it's the players turn. But when it's the enemy's turn, the enemy simply attacks a bunch till hero.HP<0 and enemy wins. I am certain this is because it's checking each frame to see if it's the enemies turn and then it executes the hitting code before the turn is changed (which must mean this is freakin fast, so cool, but not good for me here!).I tried simply making a function to call at the end of the attack, with a function that happens only on first turn to let the player initiate, but when then the hero makes no attack, enemy attacks and there is a recursion error and it shuts down.
View 5 Replies