ActionScript 3.0 :: Use Modular Functions With Movieclips?
Mar 30, 2011
I was looking a tutorial that shows how to make modular functions, the user only used numbers, i was wandering if there is a way to use this with movieclips or childs.[code]...
I'm working on a large application that is broken up into many independent swfs. There is a master swf that loads a navigation shell and the foundational logic, and a module loading system that loads child swfs into the main display area. This is all working smoothly, and now I'm onto building the modules, and I'm starting to feel like my methods aren't as efficient as they should be. The module swfs (and corresponding flas) are located in a "modules" subdirectory of the main project's src folder. These modules share a large number of classes. In fact, most them define no new classes that are specific to just that module. The shared classes have a complicated structure of inheritance and interface usage, and are located in a view/structure subdirectory of the main src folder.
Currently, in order to use the shared classes from view/structure in my module swfs, I add the main project's src folder to the source path in each of the module flas. Besides being a bit tedious to do every time, it. 1.) Redundantly compiles the shared classes into each module increasing file sizes across the board, 2.) Requires addition of new source paths to the modules for every developer who wants to work on/test the application because they are absolute values and different on every os's file system, and 3.) Doesn't allow modules to be built independently without access to the main project src folder
I'm working on a large application that is broken up into many independent swfs. There is a master swf that loads a navigation shell and the foundational logic, and a module loading system that loads child swfs into the main display area. This is all working smoothly, and now I'm onto building the modules, and I'm starting to feel like my methods aren't as efficient as they should be.The module swfs (and corresponding flas) are located in a "modules" subdirectory of the main project's src folder. These modules share a large number of classes. In fact, most them define no new classes that are specific to just that module.The shared classes have a complicated structure of inheritance and interface usage, and are located in a view/structure subdirectory of the main src folder.
Currently, in order to use the shared classes from view/structure in my module swfs, I add the main project's src folder to the source path in each of the module flas. Besides being a bit tedious to do every time, it 1.) Redundantly compiles the shared classes into each module increasing file sizes across the board, 2.) Requires addition of new source paths to the modules for every developer who wants to work on/test the application because they are absolute values and different on every os's file system, and 3.) Doesn't allow modules to be built independently without access to the main project src folder.
I'm trying to make a td game for fun and I need to make function to build towers and if I want to build the second tower it changes the first one... But I thought if i could change the name of the first tower's name when it builds to other var and it should be fine, but the problem is that those 2 towers will shoot together or something, so is there a way to bind functions to movieclips that are created with actionscript (addChild(Name))?
I have this REALLY wierd problem. I have a MovieClip that is attached onto the stage. In this MovieClip I have the init() function. When I try and call this function, after the MovieClip has been attached on stage it doesn't work! I can't belive it!
I've not touched AS2 since AS3 appeared, but circumstances brought me back to using AS2,Is there way to invoke the functions/methods in a loaded movieclip? I know you can do that in AS3 by invoking the Loader object's content's function, but I haven't been able to do that successfully in AS2. I'm currently using the AS2 MovieClipLoader object, like so (snippet):[code]as set up, I intended the target movieclip's function 'invokeInternal Function' to run, but it doesn't seem to be doing it although the SWF itself loads successfully.
I'm trying to simply access anything inside this loaded SWF and all I get is 'null'.
I have code in the parent SWF that needs to tell the child SWF movieclip what to do but nothing works. This was a piee of cake in AS2 and I can't seem to get anything to crossover in AS3.
Here's my code:
import com.greensock.TweenMax; import flash.display.MovieClip; var myLoader:Loader = new Loader();
[Code]......
panel2 traces null and all the clips loaded within pull up undefined property errors.
I have done this same thing in ActionScript 3, but am not familiar with ActionScript 2, which I am forced to use for this project. I am loading products into a SWF via XML and attempting to add a click event to each dynamically-created movieclip. Simply tracing the text from a node in XML will do for now. I'd like to assign a property called "desc" or "description" to each movieclip and have it trace that property's value when clicked. Here is the relevant portion of my code as it stands[code]...
I have the following code, which should display some square clickable clips over a map. This is done by calling a function (shown below) with arguments. However, when I call this function, only the last box is shown... The clips are drawn on the same level (9000) but that should not be a problem as they wont overlay...functions calls....
I will have 5 type of buttons. Each type I will duplicate (+1) at some condition. Each button is sharing a same functions, just some difference in value and positions. Button type's name:bug1, bug5, bug10, bug20, bug50
I am currently having a mc in my library use a class. The mc is duplicated and put on the stage. Inside the class the mc gets a rollover state. Problem is that, although the rollover listener and function 'works', any action that is given is applied to all objects linked to that class.
Code: Select allpublic class cities extends MovieClip { private var theStage:*; public function cities(cityid:int, cityname:String, mymc, ref:*) { theStage=ref; this.alpha=.85; this.buttonMode=true; [Code] .....
So pretty much on rollover on one of the mc's makes them all alpha = 1 and rollout makes them all alpha = .85 instead of the one being rolled over. It does make sense I guess because they are all calling that same function I think. I also tried referring to the specific mc (mymc) instead of the parent and this.
Is there an easy way to animate multiple movieclips without using a lot of functions and setInterval??I want an animation to start and before it's finished another one starts, right now I'm using a ton of functions and setInterval but I'm sure there's a cleaner more efficient way to achieve this.
I somehow am able to write bits of code but am still learning how to restructure code so that it is more efficient.I have 15 buttons. Each one, when rolled over, should change the color of 2 movieclips underneath it (and when rolled out, should change back). I have the below code so far but I don't think I have to re-write the functions each time. How do I "re-use" the function code (or, only write the function code once), but specify what movieclips the function should be applied to? These are just 2 of the buttons of the 15:
Code: menu_mc.invis1.addEventListener(MouseEvent.MOUSE_OVER, changeColor); menu_mc.invis1.addEventListener(MouseEvent.MOUSE_OUT, changeBack); function changeColor(event:MouseEvent):void[code].................
My setup has several movieclips in different layers. My problem is that .onRollOver, onRollOut and .onRelease functions are still active for movieclips lying underneath. Is it possible to inactivate these functions and then activate them again when it is needed? Or how do I solve this?
I have a series of calculations i'm doing over a bunch of objects stored in a array. Each function is pretty CPU demanding but if you only run one function, it just works fine.
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?
I'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 one function that puts text in a text field and makes a button goto a url onRelease.The code is like this:
Code: item.onRelease = function() { myButton.onRelease = function() { getURL("http://google.com", "_blank"); } talk = this.txt; } the only problem is that the button doesn't work onRelease. i think that it is because there are too many functions there, but at the same time,
Functions embedded inside other functions? In all my years of ActionScript programming, I've never seen this (this is part of legacy code written by someone else which I am adapting):
Its a complicated senario for me. I have a sound management singleton with an asset like dictionary storing all referances to my urls and assets and the guff inside it-
I have a function called addItem(id:String, url:String):Object
I would love to do something similar as soundManager.addItem(id:String, url:String).play() or soundManager.addItem(id:String, url:String).stop() of which it'll both add my item to my dictionary, and begin playing the sound
Let's I have a class Square that has a several functions. I want to call it from a class Grid, which is a group of Squares.So in the class file for Grid, how would I do this:
Code: public function doSquareFunction(thisFunction:Function):void{ square1.thisFunction();
I have a function with 4 necessary arguments (aka parameters) in order to perform the actions. I would like to have the ability to pass the same function to itself as an argument (sort of like a recursive function) along with its arguments. Basically I want to "base" to engage an onMotionFinished event handler if there is another function passed as an argument. Something like...
[Code].....
Would there be a way to use listeners to do this or the AsBroadcaster?
I m trying to make sense of how to load a swf into a parent MovieClip and allow them to communicate.I ve attached two zip files � one which works fine and the other doesn�t. Unfortunately (for me), the one which doesn�t work is closer to my current project.I need to load movieclips into the parent movieclip. The parent movieclip has controls which rely on values parsed from the child movieclip.In the parent movieclips I wait until the loading is complete and so the values should be passed. However, the values aren�t passed unless I use a button (or timer), to pass the values (see the working exampes).The code which doesn�t work is:
Parent movieclip:
ActionScript Code: stop(); var myLoader:Loader = new Loader();[code].............
the only problem is that the button doesn't work onRelease. i think that it is because there are too many functions there, but at the same time, i think it's just me..
I have two SWF-Movies. One is exported into eht other as Child.Can I instance the Objects of the two libraries in all places, where ActionScript is possible? (In Keyframes of the MovieClips and in external class definitions.)