AS .. pozycja i instrukcja warunkowa

Technologia Flash, czyli animacja na potrzeby stron WWW to świat daleko odbiegły od zwykłego programowania i kodu. Zapytaj o pomoc i podziel się z nami Twoimi problemami z zakresu Flasha.
regesss
Posty: 4
Rejestracja: śr lip 04, 2007 10:46 pm

AS .. pozycja i instrukcja warunkowa

Post autor: regesss »

Witam. Na początek dam kod.

Kod: Zaznacz cały

function anim() {
	if (Key.isDown(Key.LEFT)) {
		obiekt._x -= 1;
	}
	if (Key.isDown(Key.RIGHT)) {
		obiekt._x += 1;
	}
	if (Key.isDown(Key.UP)) {
		obiekt._y -= 1;
	}
	if (Key.isDown(Key.DOWN)) {
		obiekt._y += 1;
	}
};
Generalnie mój obiekt "obiekt" porusza się po osiach [x,y] -wiadomo. Moje pytanie jest następujące: Jak wywołać akcję, jeżeli obiekt znajdzie się w położeniu np: [20,30] ?. Zapewne przy użyciu instrukcji warunkowej if[/] jednak proszę o odpowiedź [choćby jak ma wyglądać warunek]. Próbowałem samemu, jednak mimo tego, że kod był poprawnie napisany nie zadziałał. Jakby można było to jeżeli będzie na [20,30] to niech przyjmie pozycję [0,0].
Dzięki ;]
Marek_bf
Administrator
Posty: 4419
Rejestracja: czw lut 24, 2005 2:14 am
Kontakt:

Re: AS .. pozycja i instrukcja warunkowa

Post autor: Marek_bf »

Kod: Zaznacz cały

function moves(target_mc:MovieClip, dir:String, speed:Number):Void {
	target_mc[dir] += speed;
	if (target_mc._x >= 20 && target_mc._y >= 30) {
		target_mc._x = target_mc._y = 0;
	}
}
//
var key_list:Object = {};
key_list.onKeyDown = function() {
	switch (Key.getCode()) {
	case Key.LEFT :
		moves(my_mc, "_x", -1);
		break;
	case Key.UP :
		moves(my_mc, "_y", -1);
		break;
	case Key.RIGHT :
		moves(my_mc, "_x", 1);
		break;
	case Key.DOWN :
		moves(my_mc, "_y", 1);
		break;
	}
};
Key.addListener(key_list);
ODPOWIEDZ