Yo tuve el mismo problema pero me lo pude solucionar asi mira..
Primero que nada a la clase le cambie el nombre de la funcion cResize por Resize que era lo que me estaba dando un error. Incluso le agregue el case "fondo" solo para probar.. era el mismo que "bg" igualmente jaja.
Dejo aca el codigo en limpio.
Código ActionScript :
package Resize{
import flash.display.Stage;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.EventDispatcher;
public class Resize extends MovieClip {
private var objetos:Array;
private var lugares:Array;
private var _Mc:MovieClip;
private var _mcStage:Stage;
private var min_width:int=1015;
private var min_height:int=600;
private var _Ancho:Number = 0;
private var _Alto:Number = 0;
public function Resize(pMc:MovieClip,pOobjetos:Array,pLugares:Array) {
objetos=pOobjetos;
lugares=pLugares;
this._Mc=pMc;
_mcStage=pMc.stage;
addStageListener();
}
public function mostrar(muestro:String) {
trace(muestro);
}
public function minStage(Width:int, Height:int) {
min_width=Width;
min_height=Height;
}
public function addStageListener() {
_mcStage.scaleMode=StageScaleMode.NO_SCALE;
_mcStage.align=StageAlign.TOP_LEFT;
_mcStage.addEventListener(Event.RESIZE,resizeHandler);
_mcStage.dispatchEvent(new Event(Event.RESIZE));
}
private function resizeHandler(event:Event):void {
if (_mcStage.stageWidth >= min_width && _mcStage.stageHeight >=min_height) {
_Ancho = _mcStage.stageWidth;
_Alto = _mcStage.stageHeight;
} else if (_mcStage.stageWidth < min_width && _mcStage.stageHeight < min_height) {
_Ancho = min_width;
_Alto = min_height;
} else if (_mcStage.stageWidth < min_width) {
_Ancho = min_width;
_Alto = _mcStage.stageHeight;
} else if (_mcStage.stageHeight < min_height) {
_Ancho = _mcStage.stageWidth;
_Alto = min_height;
}
//ahora recorremos todos los objetos para hacer su resize
for (var e:int=0; e<lugares.length; e++) {
switch (lugares[e]) {
case "bg" :
objetos[e].x = (_Ancho - objetos[e].width)/2;
objetos[e].y = (_Alto - objetos[e].height)/2;
break;
case "menu" :
objetos[e].y = (_Alto - objetos[e].height - 34);
break;
case "bottomLeft" :
objetos[e].y=(_Alto - objetos[e].height);
break;
case "bottomRight" :
objetos[e].x=(_Ancho - objetos[e].width);
objetos[e].y=(_Alto - objetos[e].height);
break;
case "fondo" :
objetos[e].x=(_Ancho/2);
objetos[e].y=(_Alto/2);
break;
}
}
}
}
}
Fuera de eso para poder ejecutarla, la clase va en la carpeta Resize junto a nuestro swf. Ponemos este codigo en el stage.
Código ActionScript :
import Resize.*;
var arr:Array=new Array(cont.obj1, cont.obj2, cont.obj3);
var pos:Array=new Array("bg", "bottomRight", "menu");
var miResize:Resize = new Resize(cont, arr, pos);
Y en el stage vamos a tener que tener obviamente un movieclip que se llame "cont" con 3 objetos adentro.. "obj1", "obj2" y "obj3".
Es todo. Saludos!! Y Gracias 22 o como te llames