ActionScript 3.0 :: Switch A Boolean Variable To True After A Mouse Click On A Movieclip?
Sep 2, 2011
I am trying to switch a boolean variable to true after a mouse click on a movieclip.
I want an animation to continue after the user has clicked both btn1 and btn2.
After researching this topic it appears that changing a variable inside a function will only effect code within that function and not the code outside of it - therefore my main Btn1Var and Btn2Var do not update to flase.
ActionScript Code:
stop()
var btn1Var:Boolean = false;
var btn2Var:Boolean = false;
[Code].....
Is there an easy way to change the original variable for each button to true after being clicked?
This code is written in simple ActionScript, but I'm assuming this problem of mine would occur in all languages that have boolean datatypes. I'm simply clicking the stage so that my boolean variable reverses its value and than traces/prints/logs it's new value. However, it's always tracing true instead of switching between true and false for each mouse click.
var myBool:Boolean; stage.addEventListener(MouseEvent.CLICK, mouseClickHandler); function mouseClickHandler(evt:MouseEvent):void { changeBoolean(myBool); } function changeBoolean(boolean:Boolean):void { boolean = !boolean; trace(boolean); }
i am trying to assign boolean variables to my script that i have made, basically i have never done it before so i have no idea how to add them to my script. i am controlling movieclips using alpha levels so when a key is pressed it makes a mc =100 and when the key is released it takes the alpha back down to 0. My mc work fine along with the keypresses, its just i need more control over what has already come up.
I want to use the boolean variables so that they control the mc and stop them from playing after a certain amount of times the key is pressed. here is some of my script:
stop(); this.onEnterFrame = function() { if (Key.isDown(65)) { trace("It's an A");
I am using this code to communicate with an easing function:
[AS] onClipEvent (enterFrame) {_root.gek = false; for (var i = 0; i<18; i++) { if (_root.timeline["copy"+i].hitTest(_root._xmouse, _root._ymouse)) { //set gek variable to true when mouse hits timeline[code]....
if "gek" is true then the easing function works and my little "easebar" moves to the mouse.Now, I want to be able to capture what i is when the mouse moves over it so that I can load an mc depending on where the easebar is.I thought I could declare a global variable (_global.j = 0) at the root and then set i to j and use j somewhere else. But i doesn't exist outside of the onClipEvent.
I made this movie in actionscript 2 and it needs a trigger. I have a counter, an integer called totalcount, and when that totalcount reaches 9, the program should jump to another scene.So I tried to put following code into the main timeline:
if (totalcount == 9) { gotoAndPlay.... }
But even though I put a dynamic textbox on the stage with variable name totalcount, it works but it is never triggered.
ActionScript Code: var homeShown:Boolean; //Default of false var contactShown:Boolean; //Default of false homeButton.addEventListener(MouseEvent.CLICK, navFunction()); //Listen for the home button to be clicked contactButton.addEventListener(MousEvent.CLICK, navFunction()); //Listen for the contact button to be clicked [Code] ..... Can I not do this, it does not seem to work, the value of homeShown and contactShown never get altered and they should, so it always returns a value of true.
is the code. I'm trying to change the boolean value of bottomLeft to false or true in the appropriate if sections, but I'm not sure how to properly format it to actually work
ActionScript Code: var bustest:Boolean = false; var balltest:Boolean = false; var clocktest:Boolean = false;
[code]....
are set to true later on in the code the reason is I want a movie to load saying well done you have the correct the answer in my quiz once they have got the answer correct(ie. the boolean turns to true)
I've got an animation with an embedded flv video in a graphic on my main timeline. The embedded video has been scaled down as I enlarge to its full original size later on in the animation. I've been racking my brain and looking all over the place for a possible solution but is there a way to switch smoothing to true for an embedded video? I've tried the old smoothing = true for the embedded video instance but it has no effect. Annoyingly the video is smoothed out nicely on the stage but when I create a swf the smoothing switches off.I don't want to separate the flv from the main fla for numerous reasons .
I would like to toggle my boolean value when I click my button. My boolean var looks like this: var playAllOn:Boolean = false; Then I have a button that calls a function to set the playAllOn to the boolean value it currently is not. So, if for example if playAllOn is false, I would like to call:
[Code]....
I know I could do this with an ifStatement in the myToggleBtn.onRelease, but am wondering if there is a better more efficient way to write this. Something like setPlayAllBtn(!= playAllOn); <!-- Obviously that one does not work...
function clickFunction(event:MouseEvent) { bla bla bla }
My questions are (as silly as they might sound!),
a) why do we need a parameter (i.e. event:MouseEvent) for clickFunction??
b) since we have a parameter for clickFunction, when we feed this function into addEventListener, why didn't we write movieClipName.addEventListener (MouseEvent.CLICK, clickFunction() );
Currently I have a rotating globe with 2 buttons. when i click on "right" button, it will go to next frame. when i click on "left button", it will go to prev frame. I have no problem making it rotating fully.
But now I'm trying to make the globe rotate itself when I mouse over the button. And globe will stop when I mouse out.
having an issue with a variable set. It is set as a string to default "no" on the very first frame of my movie, as follows:
var myaccess:String; myaccess="no";
Within my movie, there is an object. When this object is pressed, it is to change the _root.myaccess="yes"; I am tracing the variable within the movie clip and it shows me: I do not understand why it is changing my string definitition from "no" to false. Because of this, my variable does not seem to change to "yes' on object (button) pressed.
Imagine we have a MovieClip called "box". When I click somewhere on the screen, I want the box MC to move to that position. So I wrote something like this (just for horizontal movement):
PHP Code: onMouseDown=function(){moveTo(_xmouse);}; function moveTo(newx){box.onEnterFrame=function(){if(box._x<newx){box._x+=5; }else if(box._x>newx){box._x-=5;}else{delete box.onEnterFrame;}};}
Now this works to a degree, except that when the box MC moves to the right position, it then proceeds to vibrate on the spot. I thought it was probably because it can never move to the exact position of _xmouse because I'm adding 10 to the x property which is why the condition is never met. However even if I just add 1 instead of 10, I still have the same problem..
I wish make a zoom with tweenlite library on a movieclip.But I wish zoom on a focus where the user click.The user step are like this:step1: the user go on a place over the picturesstep2: clickstep3: zoom to the click placeHow I can do it in AS 3.0?
I'm not proud of my subject line, but it was the best I could do.I'm using this while loop to activate the function buttonpressed from one of five buttons named thumb0, thumb1, etc.:i = -1; while (i++ < 4){this["thumb"+(i)].addEventListener(MouseEvent.MOUSE_UP,buttonpresse d);}I want the main timeline to jump to the labeled frame corresponding with the targeted button's numberfunction buttonpressed(evt:MouseEvent):void{MovieClip(root) .gotoAndStop("clip"+[i]);}
have movie clips on the stage that I have addressed as buttons[code]...
For some reason when I call the select function the variable flips from false, to true and then back to false again which causes the animation im trying to play to hitch and stop 1/2 way through.
I have used the exact same script on other objects in the file but with different instance names and they ALL work fine, this is the only one I can't get working. I have tried removing all other scripts to isolate this one but it makes no difference.
I have a MovieClip of an bicycle, and I've attached and event listener for mouse clicks on that movieclip. The mouse clicks events are raised when I click on the bike, but I really want to be able to click somewhere in the entire region of the movieclip's rect (to make it easier for the audience this is for to be able to click).
I have a square movieclip named squarepad. What I want is when I click on it to do [some stuff] according to where the square is clicked. It should be something like this: if ([mouseclickedx] > 1) and ([mmouseclickedx] < 10) then [do this] end if
I have a boolean variable, projectsLoaded that is set to false when my application loads. As i'm sure you can imagine, when the final project module loads, I set the variable to be true. Is there a way I can trigger a series of functions to run once that variable is set to true?
var bomb1:Boolean = false; var bomb2:Boolean = false; var bomb3:Boolean = false;
Would it be possible to use an array like this? var bomb:Array = [false,false,false]; Or would it be better in another way? Isn't it necessary to declare the variable/array to be boolean or number if it would be that type in the index? Could I also use an array for the movieclips like bomb[0].visible = true; ? But how di I declare that array?
I'm pretty new to Flash and seem to be struggling with variable scope, events and where to put code within movieclips/main area etc. What I'm trying to do is produce a Flash movie that will allow the user to click on a tool from a selection, i.e. a circle, then click on another part of the screen to place the centre of the circle, with a second click to set the radius of the circle (an alternative would be a single click and drag to place the circle and drag it out to the desired radius.) Once the mouse if clicked a 2nd time, or the drag operation is completed, the circle will stay at the selected radius.
The code I'm using so far to test out the idea is below: _root.onEnterFrame=function(){ _root["item1"].onMouseMove=function(){ d = Math.sqrt(Math.abs(_xmouse-this._x)*Math.abs(_xmouse-this._x)+Math.abs(_ymouse-this._y)*Math.abs(_ymouse-this._y)); if(d<370){ this._width = d*2; this._height = d*2; }else{ this._width = 87; this._height = 87; }}}
This uses a simple circle movieclip, and the above code is placed in Frame 1 of the background as opposed to the movieclip itself. It resizes the circle movieclip ok, but I want to be able to control the resize with the mouse or with a single click/drag.
Not to certain how many people may need this script, but lo and behold I had need of it for my project. So, here's my script on how to add a movie clip to a Datagrid Cell via CellRenderer1) Create an Actionscript file (*.as) and call it IconCellRenderer2) Put the following code inside that file: