/* AVISO LEGAL: Este código está amparado por las leyes internacionales de derechos de autor y de propiedad intelectual. Queda totalmente prohibida su utilización y/o modificación sin el previo consentimiento de Antares Comunicación Audiovisual (www.antares.es) o en proyectos en los que no esté presente. */ import movieclip.DraggableItem; import PuzzleController; class Ficha extends DraggableItem { private var mask_mc:MovieClip; private var controller:PuzzleController; public function Ficha() { super(); hide(); this.loadMovie(controller.imageToLoad); setAreaMovimiento(controller.getCaja_mc()); createMask(); show(); } //triggered desde ExtendedMC [callback("onLoadContent")] public function onLoadContent() { //resizePerCent(80); createMask(); show(); } //triggered desde DraggableItem [callback("onDrag")] public function onDrag(success:Boolean) { if(success) { //resizePerCent(100); switchOff(); controller.contador.sumaAcierto(); controller.notifyMovement(this); } else { controller.contador.sumaFallo(); } } //method overload from DraggableItem public function setFinalPosition():Object { var foo = { initValue: [_x,_y], increment: [destiny_mc._x - _x, destiny_mc._y - _y], NFRAMES: NFRAMES } return foo; } private function createMask() { //Creo la máscara del tamaño adecuado mask_mc = createEmptyMovieClip("mask_mc",1); mask_mc.beginFill (0xeeeeee, 50); mask_mc.lineStyle (1, 0x999999, 60); mask_mc.moveTo (0,0); mask_mc.lineTo (controller.widthFicha,0); mask_mc.lineTo (controller.widthFicha,controller.heightFicha); mask_mc.lineTo (0,controller.heightFicha); mask_mc.lineTo (0,0); mask_mc.endFill(); //y la muevo al sitio que corresponde según la ficha que sea var arr = _name.split("_"); _content_mc._x = - arr[1] * controller.widthFicha; _content_mc._y = - arr[2] * controller.heightFicha; setMask(mask_mc); } private function show() { _alpha = 100; } private function hide() { _alpha = 0; } }