ActionScript 2.0 :: Make Global Functions Like Global Variables?
Apr 28, 2004Is it possible to make global functions, much in the same way you make a global variable, reachable from anywhere in the project?
View 1 RepliesIs it possible to make global functions, much in the same way you make a global variable, reachable from anywhere in the project?
View 1 RepliesI was just wondering what the new method for creating global functions and variables are - the _global method has been taken out of as3
View 1 RepliesWhich of the following is better in terms of performance/effectiveness?
public var a:int = 0;
public function Addition():void {
a += 5;
[code].....
Is it possible to make global functions, much in the same way you make a global variable, reachable from anywhere in the project?
View 1 RepliesI'm trying to find a way to have global functions in my as project, similar to how flash does with stuff like the util functions (describeType()...), where you can just call the function wherever you need it. For example:
[Code]...
So when I call Test(), it prints out "hello world" fine. My problem comes in that I can't change the name of the Test function, and I can't add any other functions without compiler errors. Is it possible to have a load of global functions in one file, or do I have to split them up into separate files like in the example? Also, I know that I can make a Global class and call static functions like Code: Global.doSomething() but I'd like to know if there's a way to do it as flash does it (describeType(), getDefinitionByName(), etc), or rather, how does flash do it?
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...
[Code]...
I have about 10 as3 coded buttons that use the same AS3 coded parameters to control the font and filters of their text fields. I'd like to create a global function to hold these parameters, and then just call the function within each button, and then also code each button to have it's own myText.text = "blahblah"; I can set up a global function no problem using an external as file, but am having trouble getting Flash to accept the parameters. For example, the following parameters work fine when used within the text fields of the buttons, but as so as I try to put them in an external global function, Flash doesn't like the parameters being external:
[Code]....
I'm tinkering around with things in AS3, and now that programming the reaction of buttons involves a bit more code, I'm trying to figure out how to kill a few redundancies.With the file I'm working with, at different points, using different objects, the user will click some specific thing to advance the main timeline one frame.Now, the way I've been doing it is, for each object, I have an addEventListener, which calls a function that only contains: MovieClip(root).nextFrame();So I've got, on every frame, unique functions that each require three additional lines of code -- I realize it's not much, and it's not a lazy thing, just an organizational, minimization thing.Since it's just that one thing, I don't see the point in making an entire AS file, so I didn't know if there was a way to make a function that could be called from any frame, from any object, rather than just have them local.
View 6 Repliesi defined the global variable in the first frame of my file, and i can access it on other frames, however i am trying to access it within a movieclip, and flash is telling me that it is undefined. does anyone know why this could be?
View 1 RepliesMy question deals directly with ActionScript 3, although it could possibly appear in other languages. Consider the global trace function found in AS3. Calling the method requires no imports and is globally available from all classes.
class A {
public function A() {
trace("Hello, A!"); // Hello, A!
}}
Now, what if I create my own class method of the same name? In AS3, if I have a class method trace and then make a call to trace elsewhere in my class, the call is made to the class method over the global function. Essentially, I've blocked my ability to call the global trace method.
class B {
public function B() {
trace("Hello, B!"); // no output
} public function trace(s:String):void {
// do something else.
}}
Now, I know the obvious answer is to say, "don't create a class method called trace." But what if I'm unaware of the existence of the global trace function? Or what if I have a desire to "override" or "block" the global function? Is doing so bad programming? Or is this just another example of how AS3 is a poor object oriented language?
I have a .as file with a load of functions that i include using : include "myFunctions.as".They can be accessed alright.I have a custom class that extends movieclip, and i want to use a function inside that class that is located in my "myFunctions.as" file.How do i do that? Seems like the class loads before the myFunctions.as file so the functions are unavailable at this time. I get that error message :
View 7 RepliesI realize that the issue of global variables has been discussed several times on this forum in the past. I have carefully read each one but I could not find any clear, definitive answers. Let me first give the basic idea of what I plan to do with Flash.
I will be simulating electrical, pneumatic, etc diagrams. I will, for an example, have a circuit breaker that can be clicked, thus changing its state from open to closed. Once this is changed, the flow from that circuit breaker will also be changed. This could all be accomplished inside of this file fairly easily, but this Flash file will be linked to hundreds of other flash files, each containing a unique drawing, but the variable for that circuit breaker, and all the other conditions need to be passed from drawing to drawing.
I have spent a lot of time researching online and browsing this forum, but I cannot find a solution to this problem.
In as2, we had global variables which were accessible from anywhere within the movie. How can i achieve similar functionality in as3? You see, in my site, after a user logs in, there are several pages, and each of them calls a php script, and i need to pass the user id as a parameter to them! So as soon as the user logs in, I need to store his id in some place, which i can read from any class or subclass within the whole movie! Can you please tell me how to do this? oh and yea, i am new to as3, so please try to be as descriptive as possible!
View 5 RepliesProblem: global variables disappear.I am using CS4 but still coding in AS2. I am on a Mac, latest OS.I loaded and then trace my _global variables for three screens and they follow me fine until,.... then on the the screen i have tiny bit of code:[code]Could it be the level 99 I use. I tried using 0 and it did not work?
View 1 Repliesare all variables written as global variables in Flash CS3? Is there a way for some variables just to work for some frames?
View 2 RepliesWhere do I place a function, at the lowest level, so I can call it from any other container above it? For example, I have 3 frames and they all need to use the same function, called "myFunction()". Do I really have to create it in each frame? There has so be a lowe level where this can be placed? Is there a good simple description of AS3 Hierarchy somewhere? Also, how do you specify global variables in AS3?
View 2 RepliesI'm trying to create an object/variable in my .fla file which will be accessible to functions located in my .as files. How do I do this?
Example:
Code:
// code in timeline of sample.fla
var player = new myObject();
[code]...
Normally, I would get an error from the second code block, saying that it doesn't know what "player" is. So how is this done correctly?
I've done a search and all I could find are creating global variables through Classes.
Is there a way of creating them on the timeline? I have a preloader.swf that loads another swf to itself and would like to read the values off of the parent.
I'm trying to create a global variable that initially stores a 0.Then via a function will change the value of that global variable, and allow the other functions to access the new number. I have it working where it adds 1 to the variable, and stores the number 1 however, I cannot get the number to add up beyond 1.I have this in my first layer,frame.
_global.thisSound = 0;
function PlaySound(){
temp = _global.thisSound;
[code].....
it has many different sections(15 or so). Now i have made the movie and created all the checkboxes needed in the form.
I have given each one an instance name - e.g. chk_individualtax1
Made a global variable for each checkbox to get the .selected value - e.g. _global.individualtax1 = chk_individualtax1.selected;
At the end of the movie I have put a trace command to check that the variables are working( because they are on different timeline levels)- e.g. trace(individualtax1);
Now my problem comes here because now I am trying to send these variables off to the server using the getURL command. - e.g. getURL("send.php", "_blank", "POST");
This works and the email is sent off to me via php. however only the variables on the main timeline are sent? is there a difference in fetching global variables off different levels of the timeline Now should I rather be using the loadVariables command and if so how?
I'm trying to make my FlashVars global so that they can be accessed in all of my scripts. I have an external .as file called 'globalvars.as' and it has the following code:
Code:
package{
import flash.display.*;
public class globalvars extends MovieClip{
[Code].....
But I get the following error: Error #1009: Cannot access a property or method of a null object reference. The Flashvars are set right as I can access the variables in the main timeline, just not the external .as file. I'd like these variables to be accessible to other external .as files which is why I'm doing this.
I have MC timelines, with script and variables inside them, and i need to access these variables in the main timeline, or from other MC timelines, how do you do this. I guess i baisically need to store the variables somewhere they are globally accessable, but i don't know how?
View 3 Repliesare variables global through scenes? I am working on a game show w/multiple scenes and i need a variable that i used in a previous one, but i dont know if it carries through.
View 4 RepliesI'm try to calling my sloppy global function by calling my global function class as u can see below.[code]
View 2 RepliesIn AS3 I want to use Global variables (not many) that can be accessed in any class and declared somewhere where the fla file or any as file can use them and be ale to change the value of them anywhere. Can I do this in AS3?
View 6 RepliesI 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;
[Code]....
I have a function in which I declare a bunch of variables that I need to be globally accessible from outside the function.[code]I need numVals to be accessible from outside the function.I tried changing the name to _global.numVals and it didn't work
View 4 RepliesI want to replicate the movement of the movie found on [URL] (under collections) where once u press the collection name, movie gradually loads, then if u press another button the movie on stage first unloads and than new movie appears and gradually loads and so on.
I have tried to solve this problem using variable, to tell the movie on stage what to do.....But
I have a problem controlling my MC using _global variable.
I'll try to explain:
I have created empty MC where I attach movie from my library using buttons.
Works fine.
_root.emptymc.attachMovie("attachedmc","attachedmc ",10);
Another button is used to issue command to attached MC to continue playing.
Works fine with this command:
_root.emptymc.attachedmc.gotoAndPlay(21);
Maybe I got the whole idea wrong, but I assumed that if I create _global.somename = "attachedmc" I will be able to issue the following command:
_root.emptymc.somename.gotoAndPlay(21);
But this doesn't work at all.
I have defined Variables at the start of my script, with _root, to make them valid globally.
Then, in several functions and IF loops, I change the values of these variables, again referencing them with _root.
Then at the end of my script, I want to collect these global variables and send them to a PHP file to late store them in a db.
The problem is that at the end of my script, the variables do not contain any data, I used trace() to test this.
They only seem to contain values inside the IF loops which would mean they are behaving as local variables only?
I also tried replacing _root with _global but got the same results.
I have over 1000 lines of code at the moment so I will only post a snippet here of the general method I used, perhaps some experienced users will spot what I am doing wrong[code]...
I have a project that needs some global variables. While developing on my local machine I made a 'globals.as' file which contains the following:
ActionScript Code:
package {
public class globals {
public static var gData:Object = {};
}}
I import that using
ActionScript Code:
import globals;
Then in my code if I need to create or access a global variable I can do something like:
ActionScript Code:
globals.gData.myNewVariable = "whatever";
This all worked fine until I exported the project to the web, suddenly it's as if globals.gData is not an object anymore. Only thing I can think of is that it's not importing globals.as. Is there a special way I have to embed globals.as into my project?