ActionScript 3.0 :: Function Passed As Parameter Not Working?
Apr 11, 2010I've got this code:
Code:
function func2(options:Object)
{
...
}
[code].....
-which doesn't seem to work.
I've got this code:
Code:
function func2(options:Object)
{
...
}
[code].....
-which doesn't seem to work.
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 4 RepliesI have a basic XML file and a parser in as3.
So far, I can get it to parse and trace data from the xml file:
{
xml = new XML(e.target.data);
var tester = xml.item;
[Code].....
My objective is to pass in a bunch of variables from my XML file that I can use anywhere in the flash project.
why is my variable not being passed into my function?
Code:
dealerLocate.urlButton.linkButton.onRelease=function(webAddress){
web=webAddress
trace("this is web "+web);
[Code]....
the webAddress variable is from the exact same timeline making it one level up from this function. it traces out correctly too so I know the variable is there... just not getting passed!
My code seems to produce an error (7 times - same code) "1120: Access of undefined property xmlMarker." This appears on all occasions where the variable 'xmlMarker' is called outside of the function ('showData') where it was first produced.
Code:
stop();
var placesXML:XML =
<places>[code]............
I have a feeling that I shouldn't refer to the variable as a 'MovieClip', but I am unsure what else to pu thee if that is where the fault lies.On the stage there are several buttons relating to the place names attributes (works perfectly), dependent upon which button is pressed, the scene then jumps to a frame (again this works well), however within that frame there will either be 'myMarker_mc', or myMarker_mc2' (this does not work!).
I have the following problem with objects in actionscript3:
var o:Object = new Object();
destroyObject(o);
trace(o); // [object Object]
[code].....
In my case I have 6 movieclips and 6 corresponding text fields (all 12 objects are on the main timeline) and the movieclips are named thumb1_mc, thumb2_mc, etcetc, and the text fields are named text1, text2, etcetc.I have a method:mcl_mcl.onLoadProgress = function (targetMC, loadedBytes, totalBytes)in which I need to change the appropriate text file's text depending on which movieclip is targetMC.The trouble is I can't find a way to distinguish which mc it is, so I can't pick which text file to change.I tried using properties but that doesnt work because everything about the movieclip gets obliterated the moment I load something into them.
View 4 RepliesI am using a Repeater in an Accordian which does not appear to see a single element in userArray. If I add another entry to userArray then the Repeater works fine.
private function currUsersServiceHandler(event:ResultEvent):void{
if (event.result.currentUsers != null)
{
if (event.result.currentUsers.user is ArrayCollection) // if more than one elements are present
{
[code]....
Edit:There is another thing I have just noticed i.e. that the accordian does show a single tab (when Array has a single element) but it's not labeled with the first name which I am setting. If I enter another user, two tabs appear and both are labeled with names I am setting. The first tab appears labeled too then.
I am working with Flash with Java. I need to call Java servlet which is deployed in Tomcat server in my local system from Flash.
For this, I have added following code in my Flash application to call a servlet:
var xmlurl:String = "http://localhost/webapps/ROOT/servlet/xmlServlet"; var xmlrequest:URLRequest = new URLRequest(xmlurl); xmlLoader.dataFormat = URLLoaderDataFormat.TEXT; xmlLoader.addEventListener(Event.COMPLETE,
[Code].....
In c++ if I have a function that takes a class I have defined elsewhere as a parameter like so:void moveto(CPoint2D point) { ... }I can invoke it and pass along data to it like this:moveto(CPoint2D(0,0));basically creating the object and invoking it's constructor to be passed to the functionIs there an equivalent to this in AS3?if I have a function like this:function initialize(min:Point, max:Point): void { ... }how do I do something along the lines of :initialize(Point(0,0), Point(10,10))This throws an error im assuming because it thinks I want to cast something to a point and the notation I found earlier to do something similar only seemed to work if using the basic Object class.
View 1 RepliesHow can you change the interval passed to the setInterval function?
I've tried for hours but it seems to trigger the function a million times.[code]...
Basically I want Javascript to pass a variable to Flash according to resolution. I realize my syntax might be off, but something like:
HTML Code:
<script type="text/javascript" language="javascript">
if (screen.width <= 800) {
expand = "false";
[code]....
Trouble is, I'm not sure what to do from here. I don't know exactly what I need to put in the <param> and <embed> tags, and how Flash would detect if the variable was true or not.
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."
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?
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.
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 ?
In a 'for loop' I'd like to add an event listener to a series of buttons. For each button I'd like to define a different function. Is it possible to pass the variable through when the functions are being named? My buttons all have sequentially named instance names.Here's my code:
for (var cBut:int = 1; cBut < 4; cBut++)
{
this["c" + cBut].addEventListener(MouseEvent.CLICK, ["orangeValue" + cBut]);
}
And the resulting error:
TypeError: Error #1034: Type Coercion failed: cannot convert []@42f50a89 to Function.
I am using FLEX version 3.0I want to calculate the total working hours. I am giving you the details and what i have done in it.
var a:Number = 2.00;
var b:Number = 2.00;
var c:Number = 1.45;
[code].....
I have created my own file upload flash app that has been working great for me up until this point. It uses PHP to upload the files and sends back a status message which gets displayed in a status box to the user. Now I have run into a situation where I need the HTML to pass a parameter to the Actionscript, and then to the PHP file using POST. I have tried to set this up just like adobe has it on [URL] without success.
Here is my Actionscript code:
import fl.controls.TextArea;
//Set filters
var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg; *.jpeg; *.gif; *.png");
var textTypes:FileFilter = new FileFilter("Documents (*.txt, *.rtf, *.pdf, *.doc)", "*.txt; *.rtf; *.pdf; *.doc");
var allTypes:Array = new Array(textTypes, imageTypes);
[Code] .....
The flashVars variable is the one that should contain the values from the HTML file. But whenever I run the program and output the variables in the PHP file I receive the following.
//Using this command on the PHP page
print_r($_POST);
//I get this for output
Array (
[Filename] => testfile.txt
[Upload] => Submit Query
)
Its almost like the parameters are getting over written or are just not working at all.
I am trying to load an image. The image paths are stored in an xml file called "setup.xml". I'm getting the strangest error. Never seen it before.
[Code]...
Here's a snippet of a pixel bender shader that I'm using in Flash:
parameter float2 srcSize
<
parameterType: "inputSize";
inputSizeName: "src";
>;
input image4 src;
The width and height of the source image are filled in correctly in the Pixel Bender Toolkit, but when I run this shader as a filter in Flash Player 10, the srcSize value is not automatically filled in.
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?
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]...
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 RepliesI'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]...
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].....
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...
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] .....
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?
I'm trying to do something like this and it doesn't work, but I get no errors.
callback = function(){
//bla bla bla
}
[code]........