ActionScript 2.0 :: SetInterval, Classes And Variable Scope?
Jul 27, 2005
I'm trying to make a Class for a slideshow. I have a problem using the setInterval and clearInterval methods.See my code below. In the showPic function I have a conditional clearing the interval (repeating the showPic function). At least, it should do so, but it's not working. The interval continues. I'm using "this" so that's not the problem. Maybe it has to do with the scope of the variable to which I assigned the interval?
I seem to be having difficulty in using the contents of a variable whan i receive the data from the database the script places the contents in a variable called myText1This I need to access outside the function.This is part of the script below.
mypath = "http://192.168.0.100/fedpest/pestReports/" mypath1 =mypath + "exterior.php"; var sendData = new LoadVars();
I'v attached a listener to a movieclip on stage but I can access any "global" varaiables which are out side the listeners function.I lose the scope or something what can i do about it? here is some code.
PHP Code player.controlbar.muteButton.addEventListener(MouseEvent.CLICK,mute0,false,0,true); public function mute0(e:MouseEvent):void {
I have 2 methods in a actionscript class.[code]I get duplicate variable warning. Is the local variable scope not limited to the method. Can't I declare same name variable in multiple methods?
This is suppose to be an error I overlooked, but when I saw that I have forgotten to declare weekDayLabels right below the class, shivers travel down my spine that it works.[code]
Well... Doesnt work at all... In the class, there isnt a instance of i, so, how may i access this property inside a class function? But i still have an way to access the class.
I've been having trouble with scope in subclasses, where variables that I would like to be local to each instance of a class are instead global. For example:
Code: class Prototype extends MovieClip { //Various functions all clips have access to } class Ship extends Prototype {
[code]....
I've found that if I instantiate more than one ship, the hitboxes array is populated with clips from every instance of the class, instead of staying local to each instance as I'd like. Is this because I'm attaching them with a constructor?
I'm working on a sliding gallery like Hulu. Setting it up and the sliding slides in and out is working fine. However, I need to add and then remove a button to each slide as it comes in and goes out. (I initially tried including the button on each slide, a mc, but this proved problematic for the event listeners). So when the file loads up, I add a mc to the first slide of the group like so (features[] is an array of movie clips - my slides): Code: var goBtn:MovieClip = new FeatureButton(); features[0].addChild(goBtn); goBtn.x = 350; goBtn.y = 230; So I add the button/mc to the first slide - works just fine.
So there are two handlers, next and previous. So I started with the next handler. The first thing I have to do is kill the button on the panel that is sliding out, so I do that like so: Code: features[featureCount].removeChild(goBtn); goBtn = null; (featureCount is a counter keeping track of the slides). This works fine. I click the next button, and the button on the slide disappears and we move to the next slide - perfect.
So then I add the following next - exactly like I did in the beginning: Code: var goBtn:MovieClip = new FeatureButton(); features[featureCount].addChild(goBtn); goBtn.x = 350; goBtn.y = 230;
This time adding it to the current slide coming in - but this generates the following error: Code: TypeError: Error #2007: Parameter child must be non-null. at flash.display::DisplayObjectContainer/removeChild() at featuregallery_fla::MainTimeline/nextFeature() How I'm getting an error on the removeChild() when that is already gone. I assume "parameter child" means goBtn - yes it is null because it's been removed. But I'm not trying to do something with that. I can only guess this is a variable scoping issue with goBtn - but I'm not seeing how to resolve it. Flash file attached.
I'm binding an array of items to a data grid using ItemRenderer. I use the data variable to control the bindable data. I also have someComponentVariable that need be inserted into every row but its declared at the component scope, so the data grid doesn't seem to reconize it (compile error). How can I use this variable (someComponentVariable) inside the ItemRenderer?
You will find enclosed a ".zip" file in wich there's a ".fla" file, a ".txt" file and 6 ".jpg" images. Frame 1 of the FLA only has a "Preload" class/constructor found on another site and works well. Frame 2 launches the graphic interface construction. The file "externalVar.txt" has one variable "maxVin" with a value of 6.
I would like to know WHY i can't acces this variable from outside of the loadVars object's scope (i would better say from outside of its ".onLoad" methode scope). In fact, when i trace my variable "maxVinNum" from outside of this function, flash player return "undefined". Even if i declare "maxVinNum" on the _root (_root.maxVinNum). For information, at the start of frame 2, i have let an instruction in comment: //var maxVinNum = 6; When we activate this instruction, then the variable is directely declared and everything works well. This test allow us to verify that scripts are not bugged. Here is the script of frame 2, some of you may understand quickly what's wrong :
In the code below, I'm looping through nested xml structure of an unknown number of levels. GenMenu is (or will be) a recursive function that will build each level of the menu. My problem is that I can't figure out how to reference the variables from an eventlistener function. I need to pass the children node_xml[i] to the next recursion, as well as set hover styles on the menu links, etc...
Code: function GenMenu(container, name, x, y, depth, node_xml) { // variable declarations var curr_node = new Array(); var curr_menu:MovieClip = new MovieClip(); addChild(curr_menu); [Code] .....
I'm not an experienced Actionscript user so I'm not sure what the normal way to associate a custom class with a movieclip that has been designed in the Flash IDE is. I made a class called Window to control a movieclip called TestWindow. There are some buttons in the movieclip whose functionality I would like to assign the instance of class Window. How is this supposed to be done? Here's a representation of what I mean. I hope it is sort of clear. My actual problem is that the local variables are outside the scope of the onPress function but I also think there must be some other way of associating classes with movieclips that have been designed in the IDE.
I have a Debug class I've written, and I'd like to include a static trace() method in there, unfortunately I have no idea how to then access global / top level trace as effectively I've blocked it with the local static scope.[code]
I'm trying to play through a MovieClip frame by frame using setInterval. Overall I'm trying to imitate speeding up and slowing down of the MovieClip by changing the setInterval time. Basically, when a user moves the Slider the MovieClip needs to speed up or slow down based on the Slider value. EDIT: The code above works to a certain extent. As in the slider updates updateClip() and the MovieClip does actually play at one speed. But the MovieClip does not play at the speed variable value. If I remove the ClearInterval() the MovieClip just plays at one speed but then doubles when the Slider is changed. What I'm looking for is the MovieClip to play at the same rate as speed value.
My goal is to change the time for setInterval each time the function is called. Planning to replace myInterval = 5000; with a randomized number. My problem is getting setInterval to recognize the myInterval variable from the function.
var myInterval = 1000; callback = function() { _root.myMovie.gotoAndPlay(1);[code]....
You can see the .swf of what I have created here at [URL]. The idea is that the user can change the speed of the simulation clock at any time using the slider. I noticed while building this, that this thing worked until I tried making it so that the user could change the speed at any time (this is a necessary part of the design). The relevant part of the code is as follows:
var time_intervalID:Number; var stime_intervalID:Number; var time_interval:Number; var stime_interval:Number; function clockUpdate() { [Code] .....
First of all, I need to get the clocks working correctly. Secondly, I would really like it if the user could type in a number and the slider would adjust accordingly .
I was just wondering if this is possible and the best way to achieve the following.I have 3 classes. One base class and 2 subclasses. eg MyShape, Square, Circle. The Circle and Square classes both override the MyShape's assignProperties method which takes a string as its argument.What I do in this method is loop through a serialized string and assign variables.So the string looks something like p:10|x:200|f:300Because some of the properties are generic to the MyShape class I have the Circle and Square assignProperties call super.assignProperties()Now this all works great but I realised I'm going to get some repitition calling it at each level.
So I was thinking is it possible to get the supers.assignProperties to strip a property from the string if it is found before the assignProperties in the Circle and Square class is called.Here is sort of what I have with a little pseudo codeSquare Class assignProperties Method
PHP Code: assignProperties(_properties:String) { var properties:Array = _properties.split('|');
I have two classes, IntroScreen.as and MainMenuScreen.as.I have an input text box on the IntroScreen that captures text and successfully traces it in the same class.
Actionscript Code: public var nameEntry:String;public function startButton(event:MouseEvent):void { trace("Start button clicked.") nameEntry = enterName.text;
I've got two classes running...one is a document class (EgoGame.as) and another is a class linked to several similar movie clips (Ball.as).I'm trying to access a public variable from Ball.as which has been declared in the doucment class EgoGame.as.When I run the test the outputs states the following...1120: Access of undefined property _ballPlaced.Here's my code. What I'm trying to do is remove the event listeners from the Ball.as when the _ballPlaced variable is true, so that the user can't drag and drop the balls after they've been placed in a zone.
I have a problem with returning variable between classes. As far as I know there are some ways to do it but in this particular case I tried to use Getter.
So I have an XML file (content.xml), a class to read XML (LoadXMLExt.as), a class to display images, and the main class which first call the LoadXMLExt to get the information from and then call the displayimage class including passing the information from LoadXMLExt.
I'd have thought this to be simple, but nothing works. I have a game I'm working on, and in it, there will be a speed stat. The fast you are going, the faster everything else has to move to make it look like you are moving faster.The problem is, the speed stat (obviously not called speed) is one of the upgradable stats, and needs to be available for the class handling upgrades for it to be changed, and it needs to be read by the class handling moving objects.The second class however, has absolutely no idea the variable even exists. I've tried for weeks to look up a tutorial on it, but there doesn't seem to be any at all that I can find. (I am using public variables, and have tried various ways of trying to point at the class it's from but apparently I must be using the wrong syntax)