Ver Mensaje Individual
  #17 (permalink)  
Antiguo 10/06/2010, 01:06
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 8 meses
Puntos: 214
Respuesta: Realizar Multimedia en AS3

Hola ceaped

Bueno, pues "imagino" que ese código esta ejecutandose
en el stage (escenario) en cuyo caso yo cambiaría stage por this

Con esto se van los errores, y ahora pruebas y no funciona
es tiempo entonces de reflexionar sobre porque no hace lo que
debe hacer!!! y entonces volvemos a reflexionar que el código
esta en As2 pero estamos probandolo en As3, producto de este
sencillo ejercicio de comparación de versiones, observamos que
el onPress es válido para as2, pero en as3 sería más adecuado
hacer uso de MouseEvent.CLICK (pero para un drag sería mucho más
adecuado un MouseEvent.MOUSE_DOWN), y por supuesto, un complementario
listener que enlace el evento con el objeto y la función a ejecutar,
startDrag en as3 recibe un rectángulo en vez de las coordenadas como
se hacía en as2,
Y asi sucesivamente, es una reacción en cadena, que tiene
su irreversible final en este código

Código actionscript:
Ver original
  1. ///////////////ZOOM de mapa///////////////////
  2. // s --> smalll --> larged --> drag
  3. // w --> widthh --> height
  4. var sw = 395;
  5. var sh = 380;
  6. var dw = 25;
  7. var dh = 20;
  8. var lw = 400;
  9. var lh = 320;
  10. var porcentaje_zoom = 25;
  11.  
  12. MovieClip.prototype.move = function(drag_mc)
  13. {
  14.     this.addEventListener(Event.ENTER_FRAME, entraframe);
  15.     function entraframe(e:Event)
  16.     {
  17.         with (stage)
  18.         {
  19.             this._x = -drag_mc._x*100/porcentaje_zoom;
  20.             this._y = -drag_mc._y*100/porcentaje_zoom;
  21.         }
  22.     };
  23. };
  24.  
  25. with (clip1_mc)
  26. {
  27.     drag_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);
  28.     drag_mc.addEventListener(MouseEvent.MOUSE_UP, drop);
  29.     function drag(e:MouseEvent)
  30.     {
  31.         with (this)
  32.         {
  33.         var rect:Rectangle = new Rectangle(0,0,30,10);
  34.         rect.left = 0;
  35.         rect.top = 0;
  36.         rect.right = sw-dw;
  37.         rect.bottom = sh - dh;
  38.         //drag_mc.startDrag(false, 0, 0, sw-dw, sh-dh);
  39.         this.startDrag(false,rect);
  40.         clip1_mc.clip2_mc.move(this);
  41.         }
  42.     };
  43.  
  44.     function drop(e:MouseEvent)
  45.     {
  46.         this.stopDrag();
  47.         delete this.clip1_mc.clip2_mc.onEnterFrame;
  48.     };
  49. }

y pues pruebo y funciona

esta fue una entrega más de "migrando de as2 to as3..." jajaja, espero
te funcione ceaped
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com