Показать сообщение отдельно
Старый 03.02.2013, 15:24
alex_195 вне форума Посмотреть профиль Отправить личное сообщение для alex_195 Найти все сообщения от alex_195
  № 7  
Ответить с цитированием
alex_195

Регистрация: Apr 2009
Сообщений: 104
mi_nooker, спасибо, что стали разбираться с моей проблемой. Да игра должна загрузиться, как и остальные мувики 800х600 под komp_mc. Насчет того, что грузить игру в клип, созданный в clip и и вешать на его маску я уже пробовал, не прокатило. Я все же думаю, что в самом клипе(в игре) camera_mc имеется код, который выводит эту камеру на более высокий уровень, чем подгружающий его клип. Вот посмотрите:
Код AS1/AS2:
import flash.geom.Transform;
import flash.geom.Matrix;
var level = 1;
if (_parent._parent.type != "demo") {
	cameraFrame._visible = false;
	init();
}
//================================== 
//don't tuch this :)
function init() {
	var oldMode = Stage.scaleMode;
	Stage.scaleMode = "exactFit";
	w = Stage.width;
	h = Stage.height;
	Stage.scaleMode = oldMode;
	recalcParentMatrix();
	cameraStep();
	onEnterFrame = cameraStep;
	onUnload = resetStage;
}
function recalcParentMatrix() {
	mc = _parent;
	if (level) {
		var i = level-1;
	} else {
		var i = 1000;
	}
	while (i-- && mc && mc != _root) {
		var tempTrans = new Transform(mc);
		if (!parentM) {
			parentM = tempTrans.matrix;
		} else {
			parentM.concat(tempTrans.matrix);
		}
		mc = mc._parent;
	}
	cameraTrans = new Transform(this);
	topLevelTrans = new Transform(mc);
	resetM = topLevelTrans.matrix;
	resetTopLevelColor = topLevelTrans.colorTransform;
}
function cameraStep() {
	topLevelTrans.colorTransform = cameraTrans.colorTransform;
	curM = cameraTrans.matrix;
	if (parentM) {
		curM.concat(parentM);
	}
	curM.invert();
	curM.translate(w/2, h/2);
	topLevelTrans.matrix = curM;
	//_root.filters = this.filters;
}
function resetStage():Void {
	topLevelTrans.matrix = resetM;
	topLevelTrans.colorTransform = resetTopLevelColor;
}
Но как заставить камеру "не высовываться" поверх всего, а работать только для игры пока не разобрался. Пробую методом "тыка" исправить в этом коде. Ваше мнение по этому поводу?..