ActionScript 3.0 :: Make Dynamically Named Functions?
Apr 13, 2011
So I've been trying to make dynamically named functions, and while it works, I've run into a couple of problems.
ActionScript Code:
var uServer:String = "irc.epic-chat.net"
var lol:String = "lolz"
var num:Number = 3
[Code].....
If I had something like that ^ what could I add to func to distinguish between whether it is being called by lolz0, lolz1, or lolz2? I was thinking whether there was something like .name I could use, but I couldn't come up with anything.
What I am trying to do is kind of odd, but I am wondering if anyone can come up with a clever way to do what I want to do. Basically, I want to re-define a named function at runtime. I can do this with anonymous functions, but I can't figure out a way to do it for named functions. I want to do this so that I can implement a "spy" functionality on an object for a testing framework (a port of Jasmine to Flex).
Take, for instance, this class:
public class TestClass { public var anonymous:Function = function():void { trace("original anonymous");
[Code].....
Can anyone more clever than I come up with a way to hack this? Can the bytecode be hijacked? Something?
I'm building a variable matching game. The player clicks one of four choices and then clicks the answer area. Their choice appears in the area, and if the answer is correct the answer container shifts down, highlighting the next answer area to be filled. Inside the container are a large number of these answer areas (60).
What I am trying to do is have only one be answerable at a time, the highlighted one, so that players can't skip ahead despite seeing the empty spaces left to answer in. What I have right now isn't working, and I could use some outside insight.
Code: var i:int =1; function sampleFunction(evt:MouseEvent):void{ if(selection == e.currentTarget.targetCorrect){//targetCorrect is a string set statically
[Code].....
I realize I could use a for loop to add the event listener, but the project really calls for only one answerable area at a time.
i'm trying to create a dynamically named Vector. i have a critical project deadline tomorrow, and this small problem is holding back continued development i've adapted my code from this example [URL]...yet am getting an error message (see below). here is what i have:
I have an array of external images that I am loading and the number of external images is variable, so I want to be able to create loaders to load them as needed. Is there a way to dynamically create and uniquely name a loader at run time?
Otherwise is there a way to pass the image content off in such a way that it will remain loaded if the loader is used to load other images?
I've dynamically created a grid of buttons which are going to modify a 2D array, but I can't work out how to create a unique function for each iteration of the loop with a dynamic function name. Probably just a stupid syntax error by me...
i am loading several images from an XML path into a flash movie and i want to dynamically create image loader variables for them. Here is my code so far:
Code: var xmlData:XMLList; var myXML:XML; var xmlLoader:URLLoader = new URLLoader();
[Code]....
method and this doesn't work for me either, i'm guessing thats because it is in the AS2 forum.
I have a movieclip (myMC) that I create several instances of.I dont duplicate the movieclips, but just copy and rename them like "myMC_i", where "i" is a unique number.Can I somehow check if one copy of myMC (for instance "myMC_2") collides with another copy (for instance "myMC_5"), always ignoring collisions with other types of movieclips on the stage?Thats the problem I cant solve. I can either check for a collision with ANY other movieclip, or check for a collision with a single SPECIFIED movieclip (by checking for its name). But I dont know how to check for a collision with a group of movieclips that has the first part of their names in common. If it had been like in a search-engine, you would have been able to search for:[code]
I have a function that creates a group of dynamically created MC'sWithin each MC, there is a group of dynamically created buttons.I got that bit to work fine.Now what I need is to send a handful of var strings and numbers along with each of those buttons, and am not having very good luck doing thatHere's what I got so far...
Code: function storePageBuilder(a):void{ var storeMC:MovieClip = new store_MC();
I have a function that creates a group of dynamically created MC's Within each MC, there is a group of dynamically created buttons. I got that bit to work fine. Now what I need is to send a handful of var strings and numbers along with each of those buttons, and am not having very good luck doing that.
Here's what I got so far...
Code: function storePageBuilder(a):void{ var storeMC:MovieClip = new store_MC(); storeMC.name = "storeMC_"+a;
I've got a project thats getting a bit big, so Im taking the actionscript out into separate as files. I want all the basic functions to be in BasicFunctions.as and the make a library for more specific functions. I find that a lot of people use the import statement but I cant get that to work with a simple Hello World trace, yet the include statement works fine (see attached). I understand that import/include work differently, but which is the better method? If import, then is that heavier to work with. Any rate, what's the best way to organise code when it gets to the 1000+ lines?
here is my new code that works for PART of my movie. i have two dynamic text boxes, one named "item" and one named "ssnumber" ssnumberNode works fine but itemNode does not. i bolded the parts that i think are relevant to the problems
I am trying to make the movieClip named "fish" go to a randomly generated spot. I tried using the tutorial, but I didn't understand the math, so I tried it with my own code. I'm not as much interested in getting this to work as I am knowing why it doesn't work.
how would i go about dynamically making a function... im making a Tile Based World level editor and when the user is done editing a level, then they hit a button and a couple of for loops runs through all the tiles checking the x,y and tile type. then i want thisinformation to be parameters within sub functions within the main function. so the as would look something like this
Code: public function btnU1Out_Handler (event:Event ):void {btnUOut_Handler(1);} public function btnU2Out_Handler (event:Event ):void {btnUOut_Handler(2);}
i'm trying to call a function on a clip, but i want to use a variable that i'm sending to the clip so that when the one function gets done it knows what to do next. i just have no idea of what the syntax would be. here's a sample.
Code: var some_xml:XML = new XML(); some_xml.onLoad = function(success) { if (success) {
[Code]....
This works fine if I use a number, but as soon as I try to use "n" within the function it throws an error. Would eval do this for me? I haven't used eval before.
So I'm finally getting to the point where my sites are just one frame with everything loading dynamically via MCs and functions and whatnots.But I'm having a problem: how does one keep track of what "page" we're supposed to be at?
My specific dilemma: I have an mc called "textframe". I have a function that does some nifty dropshadow knockout effect on that frame, so I can't display any content in it, so I thought I should use attachMovie to load different elements from the library depending on which button has been pressed. But I can't seem to find a flexible method to track which button was pressed and pass that on to which element should be loaded.
After loading the movieclips and text boxes dynamically I now need to get the movieclips to perform a unique function when they are pressed, for testing purposes I am using the getURL funciton and linking to the boxNo. This is just so I can see what is going on!At the moment they are all linking to the boxNo that is pulled from the last run of the loop.
for (var i = 0; i < loc.length; i++) { var boxNo = loc[i].location_ID;;
I've been trolling through the forum and I've seen similar instances however I can't seem to get my head around how to make scripting work;What I'm trying to make is similar to an interface where users can input data into a list (myArray) should they need to remove information they can click the corresponding button to remove it, the current code is repositioning a button that's already on the field as opposed to creating a duplicate from the library
here's the full code: stop(); //hidden hyperlink to AR
I've got clips being attached using attachMovie (clips are in the library with linkage id's).
inside those clips are two functions. I'm trying to access those functions after I attach the clips, but not getting anywhere.
I assume that the methods of my attached clip (the functions) aren't available immediately, but rather after the clip actually 'loads' to the stage they are.
What is the best way to create functions dynamically and store them inside an Array? Obviously the bellow is wrong since the array will always trace the last value of the variable "v" (5)
ActionScript Code: var funcContainer:Array=new Array(); for(var v:uint=0;v<5;v++){
I am in the process of writing a scrolling image viewer that dynamically updates from an xml file. I have written the scroll function (with a lot of help from Kirupa and other sources), and the pictures are updating beautifully, but when it comes to adding the function for the buttons I am encountering an unusual error.
Using the following code:
Code: initButtons=function(){ for (var i in btnArray) { var btn:MovieClip = btnArray[i];
[code]....
from this site results in the doClick function being called for each of the buttons in the btn array at runtime, and then not working afterwards.