ActionScript 3.0 :: Duplicate The Functionality Of A ...rest Parameter Into Another Function?
May 21, 2008
I'm trying to extend the functionality (not extend the class itself) of the netconnection.call() function by enclosing a netconnection instance in a class.What I'm attempting to do is have a function that I have defined as "call" make a call to mynetconnection.call("", null, ...rest). For example:
Code:
public function call(method:String, ...rest):void {
this.mync.call(method, null, rest);
}
I have tried repeatedly to do this, and it's not working. The rest parameter feeds the parameters into an array, but is there any way to undo that on the inside of the method and pass a pseudo-list of parameters to nc.call() so that it will see it correctly?Is it possible to duplicate the functionality of a ...rest parameter into another function?
View 9 Replies
Similar Posts:
Jun 8, 2011
I want to add some common functionality to a number of display object classes: Sprite, MovieClip, TextField, TLFTextField, Bitmap, Loader, SimpleButton, and possibly more.I can easily extend any one of those and add my code, but I would need to duplicate the same code across a bunch of classes, ie SuperSprite, SuperMovieClip, SuperTextField, etc.
So the options I've thought of: 1. Use includes, so each class extends whatever and simply includes the class code. I haven't tried this so I'm not sure you can even use includes like that, and I'm not sure how it might affect (break) code hinting.
2. Create a new class that takes a target reference and essentially wraps functionality on to any eligible target instance. I'm not crazy about this because it means the instance I'm dealing with isn't the actual display object (ie its some wrapper that references the display object.)
3. Create a core class that takes a target display object and encapsulates all the functionality, then create separate classes each that extend the various display objects and contain an instance of that core class with itself as the target. I think I like this idea but am sure I would come back later and be confused with the structure.
View 4 Replies
Feb 2, 2011
I'm making multiple similar calls with similar results to one remote object. Because these calls are so similar and very changeable, I've been keeping the name of the remote method in a config file, and when I need to make the call I use getOperation() on the remote object, and call send() on the operation object. However, the requirements have changed so that not all of the calls will have the same number of parameters. Because send uses ..., will I be able to continue using the same formation and pass an array, or will send() treat that as passing one argument of type array?
View 2 Replies
Nov 17, 2009
I have a function that uses the ... rest argument as follows:
public function dispatchActions(... actions):void
{
var params:Object = new Object();
params.actions = actions; // I also tried casting ie. = (actions as Array)
this.target.dispatchEvent(new ActionEvent(ActionEvent.dispatchActions, params));
}
I call it using myActionObject.dispatchActions("all"); The problem is that when a listener receives the dispatched params object and try to access the actions array, it does nothing. If I try to trace evt.params.actions it traces blank and if I try to trace evt.params.actions[0] it traces undefined.
ex:
function actionsListener(evt:ActionEvent):void
{
var actions:Array = (evt.params.actions) as Array; // I also tried without casting
trace("actions", actions, "actions 0", actions[0], "action 1", actions[1]);
}
This is the output: actions actions 0 undefined actions 1 undefinedI don't understand why I can't pass the ... rest argument through an object as an event parameter. How can I make this work?
View 3 Replies
Aug 14, 2009
Forgive me for this stupid noob question but I want to call a function (loadList) that originally gets triggered after a mouseevent from another function (addToXML) that does not have an event.
The loadList function takes info from a XML var, sticks it into an array which then gets loaded into a tile list and that is working fine.
The addToXML function when called adds elements to the XML var after which I want to call the first function with the event parameter so it refreshes the items in the tile list.
I know it can do this by creating a new array and loading that into the tile list in the addToXML function, but it be much simpler to just recall the function.
I have tried things like
Code:
addToXML.addEventListener(Event.COMPLETE, loadList);
but all the event constants I have tried give me error messges like "1061: Call to a possibly undefined method addEventListener through a reference with static type Function."
View 3 Replies
May 22, 2009
Let's say I have a Custom Event Class, and it has several Event types stored in static Constant:
[Code]...
Is there an easy way to validate that the type passed to the Constructor is one of the Static Constants of the Class, without having to check it against each value?
View 5 Replies
Sep 3, 2010
I'm having some trouble passing parameters with a function that is itself being passed as a parameter.In my application code I'm instancing that class five times:they are buttons in a menu.In that class, I've got an onRelease handler that does a number of things when a button is released, one of which is to invoke a function that is defined in the application level of the code.My problem is that I don't know how to send the function parameters.In my StandardButton class I have:
class StandardButton extends MovieClip
{
/* define properties */[code]..........
The function is successfully being "sent" to the StandardButton class, but without any parameters.How can I send parameters to the class instance with the way I've got this architected.
View 7 Replies
Dec 23, 2009
i have a function that receives a function as a parameter. example:
function foo(bar:Function):void() {};
how can i set a default value for the function to be an empty function so the user will not have to paste a function as a parameter ?
View 1 Replies
Aug 19, 2008
I have a movie with 5 movieclips named section1_mc, section2_mc, section3_mc, etcI want to advance to frames 1 - 5 by clicking in each of the movieclips. Do I need to add the onRelease to each of them, or is there a way to do it once for everybody. I tried the code below, but when I click on any of the movieclips the timeline goes to frame 5, the last one.
Code:
for (i = 1; i < 6; i++) {
_root["section" + i + "_mc"].onRelease = function(){
[code].....
View 3 Replies
Feb 26, 2009
just made my jump into OOP and I am quite excited to find out such marvelous things that I did not know. If someone has a quick answer or can point me in some direction please reply to this question: How can I, if at all possible, modify a function from a superclass but preserving all of it's functionality? I know about the "override public function" but that is not precisely what I want.
View 5 Replies
Jul 6, 2011
I got a huge problem trying to color objects that are flying around in my space game. When I shoot and hit them - the affected enemies shall blink. The graphics are pre-rendered (i.e. there's an rotation array and function where the degrees and their appropriate rotation for the objects are stored / calculated for better performance).
So - my idea was to enhance that rotation function with a functionality for additional coloring; but the colored AND rotated objects shall be stored apart of the normal rotated objects. To accomplish this I made a nested array: in row one there are 360 rotated graphics of one object and in row two there are 360 graphics of a rotated and colored object.
[Code]...
View 1 Replies
May 24, 2009
I have a function:
Code:
function test(arg1:int, ...rest) {
function anotherTest(rest); // -> Seems not working
[code]......
View 5 Replies
Apr 19, 2011
Is there any way to determine if a (anonymous) function has defined the ...(rest) parameter in ActionScript 3? I know there's the function.length property, but it only counts the explicitly defined arguments.
View 2 Replies
Jan 14, 2010
im having this errors:
1021: Duplicate function definition function onComplete1(event:Event):void {
1021: Duplicate function definition function stopSound1(event:MouseEvent):void {
1021: Duplicate function definition function backSound1(event:MouseEvent):void {
codes i used:
Code:
var thereReq:URLRequest = new URLRequest("SOUNDS/how.mp3");
var there:Sound = new Sound();
var thereControl:SoundChannel = new SoundChannel();
[code]....
View 2 Replies
Jan 1, 2010
I'm designing a game that uses this function;
function moveBars(Bl:Number,Gr:Number,Or:Number,Ye:Number)
{
blueBar_mc.scaleX += Bl;
greenBar_mc.scaleX += Gr;
orangeBar_mc.scaleX += Or;
yellowBar_mc.scaleX += Ye;
}
When moveBars is called, the length of the 4 colored bars change to indicate how the player is doing in different areas of the game, like so; moveBars(.1,-.2,.3,-.1)
My problem; I need to store the moveBars parameter arguments in XML like so;
<myArgs> .1,-.2,.3,-.1 </myArgs>
But I can't find the way to get those 4 numbers into the moveBars parameters from the XML doc. Is there a way to do this?
View 5 Replies
Jan 28, 2010
Essentially, I have a function with three parameters, that works fine when I type in the parameter values. The function is tweens(MCname, targX, targY) and it runs properly when I use tweens(btn1, 150, 200) for instance. I need the function to move 6 different movie clips, one at a time, and I am using a variable (Counter) and an if statement to tell the function to run again after one of my tween classes finishes. The code all works, and it will run six times with the same clip if I just type in one of the movie clip's instance names as the MCname parameter.
BUT, if I try to use a variable (BTNname) to serve as the MCname parameter, it will not work, making it so I cannot apply the function to my 6 different movie clips. I put a trace on the MCname parameter, and it returns the correct value (btn1, btn2, btn3, etc) but it is not moving the corresponding movieclips. I've tried a number of different methods, but nothing will work.[code]...
View 2 Replies
Sep 10, 2009
I wanna pass a class name as a function parameter.In that function I wanna make instances of that class, any1 know how?
View 1 Replies
Feb 24, 2012
I'm just looking for clarification on the passing of a parameter and why/how it works.
In this example, it looks like you create a parameter to be passed in called 'evt', but I don't see it used anywhere in the function. [code]...
View 9 Replies
Mar 26, 2012
I'm trying to program a race timer with OOP, and I've been adding more and morefunctionality to its class. Everything had been running well, until I had the idea to put a countdown() function, to make a cool countdown effect. Things got worse when I wanted to make the countdown function to call another function when the countdown effect has finished.The code runs well when I first pass a function parameter from the Main class to the Timer'scountdown() function. The problem begins when I want that function to be past again on other private function of the same class, because this time, the function becomes nullOn the Main class constructor, I 've written the following line:
ActionScript Code:
timer.countdown(5, false, myFunc);
ActionScript Code:
[code].....
View 3 Replies
Jul 17, 2005
lets say i define a function...
function myFunc(para1, para2, para3){
blah.. blah..
}
but i want para3 to be an optional parameter... can i do it..?
example..i will either use myFunc(var1, var2); or myFunc(var1, var2, var3); when calling myFunc function...
View 1 Replies
Dec 16, 2006
I am sending a name of a function via parameters to another function. This allows more usage of a single function. However, the button commands work every-so-often. The message appears everytime with no problem.
Code:
_root.msgReveal("This is just a random message. Click the ok button to close.", false, true, false, false, _level0.msgHide(), false);
Code:
function msgReveal(msgString:String, btn1B:Boolean, btn2B:Boolean, btn3B:Boolean, command1:Function, command2:Function, command3:Function) {
msg.messageBox._visible = true;
msg.messageBox.textF.htmlText = msgString;
msg.messageBox.btn1._visible = false;
[Code] .....
View 14 Replies
Mar 10, 2008
why this doesn't work:
Code:
listContainer.next.onRelease = advance(1);
listContainer.prev.onRelease = advance(-1);
function advance(d)
[code]....
I know I can reference a function onRelease without any parameters no problem, but what if I want to pass a parameter to the function?
View 5 Replies
Apr 25, 2008
I'm trying to do something like this and it doesn't work, but I get no errors.
callback = function(){
//bla bla bla
}
[code]........
View 5 Replies
Aug 22, 2009
Simply said, I want to have an inputtextfield, a button that is linked to the textfield and a dynamic textfield as an display, to display stuff, which comes from the inputtextfield and the button.Then, I want to have items in the actionscript, like item1 = 5, or item1 = 1a, or 1a = item1. Just some code that equals to another code. But for now item1 = 5.For the button that is linked to the input textfield, has to calculate something when pressed and the dynamic textfield will display it. So if I would type in the inputtextfield 5 and press the button, it will be as example multiplied by 2, so the dynamic textfield will show 10.
Still following? The point is, I know how to set something like that up, but what I want is that when I type item1 in the textfield (which equals to 5) and press the button the dynamic text will show 10, because "2 x instance name inputtextfield" (in which intem 1 is typed, which equals 5) should be 10 right? But when I try to do this, the dynamic text will show nothing or some error. but when I type directly in the code "2 x item1" and press the button it will show 10. But I want it to double link, so "2 x (instancename inputtextfield which equals to what is typed in the field, this case: item 1 which equals to 5) and not that it stops to item1, so it will freak.
View 1 Replies
Aug 19, 2004
I have several TextInputs in a certain form which have been assigned id in an incremental order. For example:
<s:TextInput id = "index1"/>
<s:TextInput id = "index2"/>
<s:TextInput id = "index3"/>
[code].....
View 8 Replies
Sep 22, 2009
I have one action for stopping video when i go to another page, and it works great. Here's the code:
function newPage(e:MouseEvent):void
{
new Tween(highlight_mc,"x",Strong.easeOut,underline_mc .x,e.currentTarget.x,12,false);
removeChild(currentPage.targetMC);
[Code]....
View 1 Replies
Nov 11, 2009
I'm new to flash/AS and trying to create a flash movie that shows a frame (1) which has a 'next' button to move to second frame(2), pauses uses a timer, before moving onto the next frame (3) which then has a 'next' button to move to the third frame (4).I'm building a presentation where the user has to pause to read the instructions on frame 2 before the next button appears.My two Action Scripts are, on frame 1 :
Code:
stop();
next_btn.addEventListener(MouseEvent.CLICK,next_btnMouseClickEventHandler);[code]....
It doesn't seem to like me calling the same function in two places (frames 1 and 3) and gives me an error '1021 Duplicate Function Definition' but surely that is the point of a function, that you can call it many times? I have worked around it by calling the button and the function a slightly different name each time it is used but this just don't seem right.
View 3 Replies
Jun 30, 2009
Is it possible to set up a Class to have a Default Parameter as a new function? An example of Default Parameters:
Code:
function sayHello(somebody:String = world):void {
trace(hello, +somebody);
}
If so, what is the syntax for it?
View 3 Replies
Oct 22, 2009
For the record I am running Flash CS4, but am using actionscript 2.0 (its just what I know, and I don't feel like learning 3.0)-So I'm making a contact list, and each of the names will be clickable to bring up more information. There's going to be a lot of names, so I'm trying to keep the actionscript concise. The code is shown below in a simplified form, but essentially I have created a variable for the hexadecimal color, and I have created a function which will change the text color of each of the name buttons. This works, I have tested it. But, I don't want to have to tell the function to run for every single name button
(eg. changeColor (option1 , testColor);
changeColor (option2 , testColor);
changeColor (option3 , testColor);
etc..)
SO - I tried to create a for loop that would run the changeColor function for each button without typing it a million times. The one below should run from "option1" to "option5" for instance. I originally tried entering the equation "option" + i as a parameter, but it did not work. So I tried the code below where the for loop creates a variable which is assigned the value option1, option2, etc. as it runs through the loop. I added the trace code, and it is showing me that MCname is holding the correct value. However, the changeColor function still refuses to insert the MCname variable as a parameter. The testColor parameter is a variable, and that will work, so why not the MCname one? I also tried replacing the MCname variable with the name of a button (option1) and it runs fine. I just don't want to type in every single option name for the entire list.Sorry for rambling, but I'm trying to fully explain the situation.. If the code is all correct, why won't the changeColor function accept a variable for the first parameter? Is there a way I can get this to work without having to copy and paste the changeColor(option, Color) code for every button (there could be over 100 options)
CODE:
var testColor:Number = 0x33ff00;
function changeColor(buttonName , myColor:Number){
[code].....
View 5 Replies
Mar 3, 2011
Does anyone know what is the syntax to use for a function's default parameter when it's a Vector? You can easily create a default value for an int or Number or even an Array, but what about a Vector?
View 2 Replies