(category) LIST of posts

Fra AS2 til AS3 – Kort og Groft

Strict scripting: Type definitioner

var untyped:*; // (or no typing) undefined
var boolean:Boolean; // false
var number:Number; // NaN
var integer:int; // 0
var unsignedInteger:uint; // 0
var string:String; // null
var object:Object; // null

Ingen acctionscripting direkte på knapper
Actionscripting på hovedtidslinien – og helst på første frame – eller i classes.

Knap-actions:

// event
home_button.addEventListener(MouseEvent.CLICK, home_button_handler);
 
// handler
function home_button_handler(event:MouseEvent):void {
gotoAndStop("homeLabel");
}

Properties

ActionScript 2 ActionScript 3
_name name
_x x
_y y
_width width
_height height
_xscale (0-100) scaleX (0-1)
_yscale (0-100) scaleY (0-1)
_rotation rotation
_alpha (0-100) alpha (0-1)
_visible visible
_xmouse mouseX
_ymouse mouseY
_parent parent

loadSound (as2)

var lyd1:Sound = new Sound();
lyd1.loadSound("musik.mp3",true);
lyd1.stop();
o-knap.onRelease=function(){
	lyd1.start();
	}

Pauseknap

Med if else og en ‘boolean’
Læs om syntaksen her

this.soundButton.onPress = function () {
	if (this.spiller != true) {
		this.gotoAndStop ("play");
		this._parent.lydloop.play ();
		this.spiller = true;
	} else {
		this.gotoAndStop ("pause");
		this._parent.lydloop.stop ();
		this.spiller = false;
	}
};

Den skrabede
En anden måde at lave betingelser på – læs om syntaksen her

o.onRelease = function () {
	clicked = (!clicked) ? true : false;
	this._alpha = (clicked) ? 50 : 100;
};

mcStatus function (as2)

mc er movieclippet med den sektionerede timeline og relevante labels. De har her samme navne som mcStatus værdierne!
mcStatus er en variabel der her får værdi af trin som indgår i en logisk rækkefølge. Hvert trin betinger det næste (erstat navne med dem du arbejder med).

Start med at få overblik over de forskellige mcStatus værdier

/*mcStatus værdier: sleep, awake, dressup */

Og definer så en startværdi for mcStatus

mcStatus = "sleep";

Kombinationer

Andre objekter ændrer mcStatus:

alarm_mc.onRelease = function () {
	if (mcStatus == "sleep") {
		mcStatus = "awake";
	}
};
dress_mc.onRelease = function () {
	if (mcStatus == "awake") {
		mcStatus = "dressup";
	}
};

mc aktiveres ved direkte klik:

mc.onRelease = function () {
	gotoAndPlay (mcStatus);
};

Andre objekter ændrer mcStatus og aktiverer mc:

dress_mc.onRelease = function () {
	if (mcStatus == "awake") {
		mcStatus = "dressup";
		mc.gotoAndPlay (mcStatus);
	}
};

attachSound i en level (as2)

Til dem der har brugt attachSound i en swf, som derefter loades ind i en anden swf..
fx. ved hjælp af loadMovie eller loadMovieNum.
LYDEN VIL IKKE VIRKE!

Lydobjektet anbefales ofte oprettet således:

lydobjekt = new Sound();
lydobjekt.attachSound("co2");
lydobjekt.start();

// Opret en pladespiller
// Sæt en plade på fra Library
// Spil pladen

Hvor ‘co2′ her er linkage-navnet man har gevet sin lyd efter at have døbt den ved højreklik på lyd-symbolet > linkage > Linkage-name, X export to actionScript, X export in first frame.

Problemet og løsningen:

Når filen så pludselig eikke er _root mere – hvilket sker når man loader den udefra med loadMovie fx., vil lydobjektet ikke kunne findes fordi der ikke er specificeret hvor det ligger.

Det løses i oprettelsen af lydobjektet således:

 lydobjekt = new Sound(this);

‘this’ peger på den rigtige placering for den level lydobjektet og lydsymbolerne ligger på..
- og så virker den selvom filen nu er _level1 !

loadMovie i Levels (as2)

Der kan loades swf-filer og jpg-, gif-, png-filer i nye ‘Levels’.
Den åbne swf-fil vil, som den der starter, altid være ‘_level0′.
Der forudsættes, at “nyfilm.swf ligger i samme mappe som den igangværende swf-fil”

this.loadMovieNum("nyfilm.swf", 1);

eller:

this.loadMovie("etellerandet.swf", 1);

Loader man en ny swf i samme Level (1), vil den nye erstatte den der var der før.

this.loadMovie("etellerandet.swf", 1);

Den kan også unloades:

this.unloadMovie(1);

Tilbage er: _level0, og eventuelt andre eksterne filer i yderligere levels.
Se tutorials:
cbtcafe.com/flash/loadmovie/loadmovie.html
webwasp.co.uk/tutorials/b55-load/index.php
Der kan også loades ind i en movieClip:
hed.swinburne.edu.au/design/tutorials/flash/load_movie_tute/
Understanding-Scale