Показать сообщение отдельно
Старый 12.12.2005, 19:19
s_u_m_p вне форума Посмотреть профиль Отправить личное сообщение для s_u_m_p Посетить домашнюю страницу s_u_m_p Найти все сообщения от s_u_m_p
  № 3  
Ответить с цитированием
s_u_m_p

Регистрация: Mar 2004
Адрес: Областной центр "sump"
Сообщений: 202
Отправить сообщение для s_u_m_p с помощью ICQ
маленький пример:

Код:
class MovieUtils {
	public static function applyClassTo (movie:MovieClip, Class:Function):Boolean {
		if ((movie = MovieClip (movie)) != null) {
			movie.__proto__ = Class.prototype;
			movie.constructor = Class;
			movie.constructor.apply (movie);
			return true;
		} // end if
		return false;
	}
	
	public static function createEmptyClassMovie (Class:Function, parent:MovieClip, name:String, depth:Number):MovieClip {
		var mc:MovieClip = null;
		if (MovieClip (parent) != null) {
			mc = parent.createEmptyMovieClip (name, depth);
			return (applyClassTo (mc, Class)) ? mc : null;
		} // end if
		
		return mc;
	}

class Factory {
	private var __target:MovieClip = null;
	public function Factory (target:MovieClip){
		__target = target;
	}
	public function build ():Void {
		for (var i:Number = 0; i < 4; i++) {
			
			var mc:CustomMovie = CustomMovie (
				MovieUtils.createEmptyClassMovie (CustomMovie, __target, 'item' + i, i));
			
			mc._x = 105 * i;
			mc._y = 0;
		} // end if
	}
}

class CustomMovie extends MovieClip {
	public function CustomMovie () {
		beginFill (0x000000, 100);
		moveTo (0, 0);
		lineTo (100, 0);
		lineTo (100, 100);
		lineTo (0, 100);
		lineTo (0, 0);
		endFill ();
		
		onRollOut ();
	}
	
	public function onRollOver ():Void {
		_alpha = 20;
	}
	
	public function onRollOut ():Void {
		_alpha = 100;
	}
}
}
использование
Код:
(new Factory (this)).build ();
__________________
:::::::::::: sump ::::::::::::