Difference between revisions of "Actionscript 2 Sandbox"
From Wikicliki
Line 5: | Line 5: | ||
− | /* | + | /* CONDITIONALS */ |
− | CONDITIONALS | ||
− | */ | ||
var message = "yellow"; // the equal sign assigns values to variables | var message = "yellow"; // the equal sign assigns values to variables | ||
Line 13: | Line 11: | ||
if (message == "yellow") { // the double equal sign checks to see if variables are equal | if (message == "yellow") { // the double equal sign checks to see if variables are equal | ||
trace ("yes, i did say big yellow truck."); // prints "yes, i did say big yellow truck" | trace ("yes, i did say big yellow truck."); // prints "yes, i did say big yellow truck" | ||
+ | trace (typeof message); // prints "string" | ||
+ | var x = a; // prints "number" | ||
+ | trace (typeof a) | ||
} | } | ||
− | /* | + | var x = 1; |
− | BUTTONS IN A QUIZ | + | while (x <= 5) { // as long as x is less than 5... |
− | */ | + | trace (x); // return 1 in output |
+ | x = x + 1; // return 2 3 4 5 in output | ||
+ | } | ||
+ | |||
+ | |||
+ | /* BUTTONS IN A QUIZ */ | ||
button1.onRelease = function () { // on pressing button 1 | button1.onRelease = function () { // on pressing button 1 | ||
Line 25: | Line 31: | ||
if (q1answer == 3) { // if answer was right | if (q1answer == 3) { // if answer was right | ||
totalCorrect = totalCorrect++; // increase number of total correct qns by one | totalCorrect = totalCorrect++; // increase number of total correct qns by one | ||
− | } | + | } // you could even do something like |
+ | // if ( 3 < 300 ) { do something } | ||
+ | // if ( "a" < "z" ) { do something } | ||
+ | // | ||
− | /* | + | /* FUNCTIONS IN DIFFERENT LAYERS/SCENES */ |
− | FUNCTIONS IN DIFFERENT LAYERS/SCENES | ||
− | */ | ||
function T1over() { // this code is placed on main stage | function T1over() { // this code is placed on main stage | ||
Line 36: | Line 43: | ||
} | } | ||
+ | _root.one_mc.onRollOver = T1over; // this would be same | ||
− | + | on (rollOver) { // this placed on one_mc | |
+ | gotoAndStop(2); // is the same as above | ||
+ | getURL('javascript:modifyT1();'); // OPTIONALLY use frame labels instead of frame no. | ||
+ | } | ||
+ | /* ROTATION */ | ||
+ | |||
on (rollOver) { | on (rollOver) { | ||
− | + | this._rotation = + 45; // Values from 0 to 180 represent clockwise rotation; | |
− | + | } // values from 0 to -180 represent counterclockwise rotation | |
− | + | ||
+ | |||
+ | /* LOADING IMAGES IN */ | ||
+ | |||
+ | this.createEmptyMovieClip("image_mc", 1); // to create a dynamically created mc | ||
+ | image_mc.loadMovie("giraffe.jpg"); // mc loads an image | ||
+ | |||
+ | image_mc.removeMovieClip(); // to remove the dynamically created mc | ||
+ | |||
+ | |||
+ | /* CREATING TEXT FIELDS */ | ||
+ | |||
+ | var score = 99; | ||
+ | this.createTextField("score_txt", 1, 150, 200, 200, 20); | ||
+ | score_txt.text = " "+score+" points"; // prints 99 points in score_txt field | ||
+ | score_txt.textColor = 0xFF0000; // text color is red | ||
+ | |||
+ | // myMovieClip.createTextField (instanceName,depth,x,y,width,height) | ||
+ | // instanceName A string that identifies the instance name of the new text field. | ||
+ | // x An integer that specifies the x coordinate of the new text field. | ||
+ | // y An integer that specifies the y coordinate of the new text field. | ||
+ | |||
+ | myFormat.underline = true; | ||
+ | myFormat.Color = 0xFF0000; // alternatively, score_txt.textColor also works | ||
+ | myFormat.bold = true; | ||
+ | myFormat.size = 16; | ||
+ | myFormat.font = "Georgia"; // if you choose to set a font, make sure you include dummy field offstage | ||
+ | // which uses your font, has font embedding turned on (character) | ||
+ | // and if you use bold/italic/regular variation you must include each type | ||
+ | |||
+ | score_txt.setTextFormat(myFormat); // applies format to all of score_txt | ||
+ | score_txt.setTextFormat(12, 27, myFormat); // applies format to only the 12-27th character in score_txt. HARDCORE.... | ||
+ | |||
+ | |||
+ | this.createTextField("more_txt", 1, 180, 250, 200, 20); | ||
+ | more_txt.html = true; // creating a dynamic (highlightable) txtfield | ||
+ | more_txt.htmlText = "look its a | ||
+ | <font color='#00ccff'><u> // you will have to format it all in html | ||
+ | <a href='http://www.sg'>link</a> | ||
+ | </u></font>"; | ||
+ | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</pre> | </pre> |
Revision as of 16:13, 17 June 2008
the readable stuff is at the Actionscript page, the sandbox is the-messing-around-with-snippets-section.
#include "filename.as" // includes the .as file at runtime (must be in same folder as .fla) /* CONDITIONALS */ var message = "yellow"; // the equal sign assigns values to variables trace ("big " + message + " truck"); // prints "big yellow truck" if (message == "yellow") { // the double equal sign checks to see if variables are equal trace ("yes, i did say big yellow truck."); // prints "yes, i did say big yellow truck" trace (typeof message); // prints "string" var x = a; // prints "number" trace (typeof a) } var x = 1; while (x <= 5) { // as long as x is less than 5... trace (x); // return 1 in output x = x + 1; // return 2 3 4 5 in output } /* BUTTONS IN A QUIZ */ button1.onRelease = function () { // on pressing button 1 this._parent.q1answer = 1; // assigning 1 to q1 answer this._parent.gotoAndStop("q2") // after which we go to frame labelled as q2 } if (q1answer == 3) { // if answer was right totalCorrect = totalCorrect++; // increase number of total correct qns by one } // you could even do something like // if ( 3 < 300 ) { do something } // if ( "a" < "z" ) { do something } // /* FUNCTIONS IN DIFFERENT LAYERS/SCENES */ function T1over() { // this code is placed on main stage _root.one_mc.gotoAndStop(2); // but refers to a one_mc on the stage getURL('javascript:modifyT1();'); } _root.one_mc.onRollOver = T1over; // this would be same on (rollOver) { // this placed on one_mc gotoAndStop(2); // is the same as above getURL('javascript:modifyT1();'); // OPTIONALLY use frame labels instead of frame no. } /* ROTATION */ on (rollOver) { this._rotation = + 45; // Values from 0 to 180 represent clockwise rotation; } // values from 0 to -180 represent counterclockwise rotation /* LOADING IMAGES IN */ this.createEmptyMovieClip("image_mc", 1); // to create a dynamically created mc image_mc.loadMovie("giraffe.jpg"); // mc loads an image image_mc.removeMovieClip(); // to remove the dynamically created mc /* CREATING TEXT FIELDS */ var score = 99; this.createTextField("score_txt", 1, 150, 200, 200, 20); score_txt.text = " "+score+" points"; // prints 99 points in score_txt field score_txt.textColor = 0xFF0000; // text color is red // myMovieClip.createTextField (instanceName,depth,x,y,width,height) // instanceName A string that identifies the instance name of the new text field. // x An integer that specifies the x coordinate of the new text field. // y An integer that specifies the y coordinate of the new text field. myFormat.underline = true; myFormat.Color = 0xFF0000; // alternatively, score_txt.textColor also works myFormat.bold = true; myFormat.size = 16; myFormat.font = "Georgia"; // if you choose to set a font, make sure you include dummy field offstage // which uses your font, has font embedding turned on (character) // and if you use bold/italic/regular variation you must include each type score_txt.setTextFormat(myFormat); // applies format to all of score_txt score_txt.setTextFormat(12, 27, myFormat); // applies format to only the 12-27th character in score_txt. HARDCORE.... this.createTextField("more_txt", 1, 180, 250, 200, 20); more_txt.html = true; // creating a dynamic (highlightable) txtfield more_txt.htmlText = "look its a <font color='#00ccff'><u> // you will have to format it all in html <a href='http://www.sg'>link</a> </u></font>";
Contents
code hinting suffixes/names
to keep in good form you should keep to these common suffixes so that any programmer can read your code easily without finding it utterly incomprehensible.
variables:
- must start with letters, underscore or dollarsign.
- no hyphens or other punctuation besides the underscore.
- cannot start with a number.
- are case-insensitive, but keep it constant or you might get confused
- xxx_str // means the variable contains a string
- xxx_arr // means the variable contains an array
conditionals
var message = "yellow"; trace ("big " + message + " truck"); // prints "big yellow truck" if (message == "yellow") { trace ("yes, i did say big yellow truck."); // prints "yes, i did say big yellow truck" }
= assigning value == comparing values
loops
this sequence... trace (101); trace (102); trace (103); trace (104); trace (105); |
is equal to:
var x = 101; trace (x); x = x + 1; trace (x); x = x + 1; trace (x); x = x + 1; trace (x); x = x + 1; trace (x); |
is also equal to:
var x = 101; while (x <= 105) { // as long as x is less than 105... trace (x); x = x + 1; // ...continue to trace x but add one each time } |
they all print:
101 102 103 104 105 |
functions
sample:
function area(height, width){ return height * width; } area1 = area(10,15); area2 = area(10,20); area3 = area(10,20);
event based execution
someObject.onSomeEvent = someFunction;
for example:
skaGirl.onRelease = dirtyskanking; // the object named skaGirl will dirtyskank when mouse is released function dirtyskanking () { this._parent._rotation = 360; // defines the rotation of the dirtyskanking. }
sample
quiz
button1.onRelease = function () { // on pressing button 1 this._parent.q1answer = 1; // assigning 1 to q1 answer this._parent.gotoAndStop("q2") // after which we go to frame labelled as q2 } if (q1answer == 3) { // if answer was right totalCorrect = totalCorrect++; // increase number of total correct qns by one }
confused about root, this, and parent? so am i!
this piece of code would work ON a frame on the main stage, one_mc being an object onnit.
function T1over() { _root.one_mc.gotoAndStop(2); getURL('javascript:modifyT1();'); } _root.one_mc.onRollOver = T1over;