Just some flash common code i found handy and i don't want to remember all the time :)
INDEX
- To dynamically create and manipulate sounds
- To move objects with mouse events
Complete tutorial for sounds: http://www.flasherdot.org/T/T24.htm
- Import an mp3 to the library. Select the imported item and set the "linkage identifier" to sound1 so we can create an instance at running time with actionscript.
- IN the first frame of your movie clip you need to create an instance of the movie clip with a code like this:
mysound = new Sound(); mysound.attachSound("sound1"); var playing = false; mysound.onSoundComplete = function(){ playing = false; }
- Now create a "stop" button and "play button" and add these code pieces inside their respective ON RELEASE blocks:
For the start button:
if ( !playing ){ mysound.start(); playing = true; }
if ( playing ){ mysound.stop("sound1"); playing = false; }
To move some object with the mouse here is some basic code:
circ1.onMouseMove = function (){
this._x = _root._xmouse;
this._y = _root._ymouse;
updateAfterEvent;
}
To retrieve and save info of a database using a movieclip;
/* #######################################################
######## ACTIONS OF BUTTON TO SHOW INFO OF USER
########################################################3
*/
button1.onRelease = function (){
loadFirstUser(_root.searchid.text);
}/* get the first user that my php function returns */
function loadFirstUser(userid){
var auserVars = new LoadVars;
auserVars.onLoad = onUserLoaded;
auserVars.load(server + "getUsers_loaddata.php?id="+userid);
}function onUserLoaded(){
//trace("received this: " + this.firstname );
_root.userclip1.firstname.text = this.firstname;
_root.userclip1.lastname.text = this.lastname;
_root.userclip1.email.text = this.email;
_root.userclip1.career.text = this.career;
_root.userclip1.user_id = this.id;
}
saveuser.onRelease = function (){
saveUser();
}
/* get the first user that my php function returns */
function saveUser(){
var saveuserVars = new LoadVars;
saveuserVars.onLoad = onsaveuser;
var args = "";args += "id="+userclip1.user_id+"&";
args += "firstname="+userclip1.firstname.text+"&";
args += "lastname="+userclip1.lastname.text+"&";
args += "email="+userclip1.email.text+"&";
args += "career="+userclip1.career.text;
saveuserVars.load(server + "saveUsers_loaddata.php?"+args);
}function onsaveuser(){
}
Example of XML Parsing
/*******************************************************
* Assign default Values to the variables used
*******************************************************/
function alb_intAlbum(){
imgDepth = 0 // level which contains no other elements.
AlbumList = new Array()
curAlbum = 0
}
/*******************************************************
* Request XML page from server
*******************************************************/
function alb_loadPage(xmlFile){
alb_intAlbum()
albumXML = new XML();
albumXML.onLoad = alb_parseXML;
albumXML.load(xmlFile);
albumXML.ignoreWhite = true;
}
/********************************************************
* Parse the incoming XML
********************************************************/
function alb_parseXML(success){
if(success){ //file loaded ok
AlbumList = new Array()
for(xalb = 0; xalb < albumXML.childNodes[0].childNodes.length;xalb++){
AlbumList.push( albumXML.childNodes[0].childNodes[xalb] );
}
//create a movieclip to hold the album images.
createEmptyMovieClip("album",imgDepth++);
album.loadAlbum(albumList[curAlbum]);
album._x = Stage.width/2 - album._width/2
album._y = Stage.height/2 - album._height/2
}else{
trace("ERROR: Could not load XML file"); //XML file could not be loaded
}
}
Draggable Pictures loaded from empty movie clip
//X_list = new Array(52,128,204,280,356,432);
//Y_list = new Array(52,128,203,280,356);
depth = 0;
//loads multiple images - Blue// key is to load on on each level
var thisbpic = _root.createEmptyMovieClip("bpic_"+i,++depth);
thisbpic.createEmptyMovieClip("picHolder",++depth);
thisbpic._x = 50;
thisbpic._y = 50;
thisbpic.picHolder.loadMovie("catbee.jpg");
thisbpic.onPress = dragOn;
thisbpic.onRelease = dragOff;function dragOn() {
startDrag(this);
}
function dragOff() {
this.stopDrag();
}
Just drawing lines and filing areas.
function drawsomething( myclip:MovieClip ) {
myclip.moveTo(10,10);
//myclip.lineStyle(2,0xeffCC4f);
myclip.lineStyle(5, 0x00ff00 );
//myclip.beginFill( 0x00ff00, 0x0000ff);
myclip.beginFill( 0xff0000, 2);
myclip.lineTo(200,10);
myclip.lineTo(200,210);
myclip.lineTo(10,210);
myclip.lineTo(10,10);
myclip.endFill();}