ActionScript 3.0 :: Pass FlashVar Values Through Preloader As Global Variables?
Jun 30, 2009
I have a program that uses a document class. The preloader.swf calls the main.swf. Problem is, the main swf uses FlashVars to set certain parameters. If I use preloader.swf to load the main.swf, FlashVars will no longer work.
So I need some way for preloader.swf to pass the FlashVars to the rest of the program.
I have been grappling with this problem for days now. I want to set two variables in a SWF and have them passed to FlashVars PHP page. I can get it to work when I just send one variable with this code:
I have a main preloader that loads Main.swf. Within Main.swf the user can open up other sub swfs, but they all need a preloader too. I have this all working for one sub swf, but I don't want to make 17 sub swf preloaders, and am wondering how I can - based on the button on stage pushed - pass along to the ONE sub preloader which sub swf to preload...
Is it possible to pass a variable between different swfs?Here's what I have now[code]...
Is it possible to load xml as a flashvar? Basically I want to pull information from a server for a news ticker, but I want the info to be available as or before flash loads so that it appears to be instantaneous. Can xml be passed in as a flash var or do I need to break down the feed into individual vars that get passed in?
I'm not talking about passing a URL to flash, I mean that actual XML. Basically I just want all the data there and loaded on the same page as the flash so there's no load times.
Does anyone know how to pass a value to a child swf, loaded into a parent swf, from the parent swf as flashvars?
Have an old AS2 project that accepted flashvars from a HTML file it was in, but now it has to be loaded into an AS3 parent. Just need to know a way to pass some values to the AS2 swf that it is expecting as flashvars.
All I want to do is send the FlashVars to the Flash movie where it picks it up and goes to play the frame specified in AdFrame.
This is an odd one because it works perfectly when I preview it locally in IE. However, it does not work in IE when I move it out and tested remotely (tried it on two servers). It does not work in Firefox remotely or locally. I have the lates version of the js and I authored in Flash 9.[code]...
I've just completed a flash banner for our site and my boss has just informed he's bought some bannerad software to manage clicks, etc. Originally my flash was passed variables from the HTML via Flashvars which I accessed using something like this: var manid = root.loaderInfo.parameters.manid Which worked great. But now that the variables are getting passed like this (which I have no control over):
I have a class file defined in my package as MyGlobals.as.[code] (I have tried adding/removing "static" and "dynamic" to no effect.)I am trying to call a touch event from the main timeline in this way:myObject.addEventListener(TouchEvent.TOUCH_BEGIN, MyGlobals.myFunctionName);(I have tried removing the class name to no effect.)When I compile I get the error 1046: Type was not found or was not a compile-time constant: TouchEvent. This error occurs on function definitions in the class file.What syntax/concept am I getting wrong? The functions were working fine when I was using constants in the timeline, but I need to be able to reuse these functions over and over again, so I wanted them to be able to take touch event variables so that I didn't have to write a different function for every touch event.I tried googling "error 1046" but I can't find anything useful.
I'm a begginer flash game developer-ish individual working on my first project - An economic game with RPG elements, I'm mixing AS 3.0 with Flash CS5 (for the graphics, buttons, tweens and the simple stuff in general since it's easier for me atm than scripting it). The trouble started when I had to script in variables. I've sorted out a couple of issues but a few still remain:
1. I need to limit three of my main skills to 0-100. Only managed to stumble across tutorials for AS2,
2. Each character will have 3 main skills, and then the 18 secondary skills will be calculated from those 3 values. This works fine, when I modify existing variables directly in the code. The thing is that I created those buttons that add or subtract from a certain skill value, but when I press them the var changes but all of the 18 skills remain unchanged (as if they do not refresh themselves - i was thinking about an eventListener waiting for a change in skill value but if I would have to do one for every one of the 18 skills in conjunction with the 6 buttons to change levels - so 144 functions - im thinking maybe an array...but I'm such an actionscript newb that I can hardly translate the tutorials into my ideas.
3. Also wondering how to create a pool of unused skill points so when I add points I can't max it out right off the bat but rather take it from that value instead and once it's 0 you can't add points anymore.
4. Last but not least, I'm having trouble creating global values. My main menu is in scene1 and when I press Newgame it goes to scene2, the problem starts when i go back to main menu errors keep showing up (since scene 1 has no information about statistics but a function probably keeps asking )which means that the program can't get access to an attribute or a method of reference for the null object at MainMenu_fla (don't be fooled by the file name, I have everything in 1 fla file)Of course an error pops up for every skill, main or secondary.
I 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!
Problem: 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?
Where 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?
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;
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?
are 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.
In 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?
I 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;
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
I 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.
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?
Code: onClipEvent(load){ _global.tinta=0xFF0000; tintb=0xFF0000; box = new Color("_root.boxy"); //This instance is named "boxy" } onClipEvent(enterFrame) { box.setRGB(tintb); //Turns it red } This works and makes the box red. However, if I change it so it's "box.setRGB(_global.tinta)", it turns it black. Even setting "tintb=_global.tinta" and using the "box.setRGB(tintb)" doesn't work any more. Why doesn't setRGB() like _global variables?