LocalConnection en Actionscript 3.0
La clase Localconnection permite la comunicación entre varias peliculas SWF ejecutándose en el mismo cliente. El ejemplo que he utilizado es sencillo, por una parte tengo una pelicula con dos botones, play y stop, y por la otra una animación que reproduzco o paro según pulse los botones. El funcionamiento es el siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
////////////////////////////////////////////////////////////////////// //CÓDIGO DE LA PRIMERA PELÍCULA //Importo las clases necesarias import flash.net.LocalConnection; //Creo la conexion var conexion:LocalConnection = new LocalConnection(); //Le añado un listener para ver el estado conexion.addEventListener(StatusEvent.STATUS, Estado); //Función para ver el estado function Estado(event:StatusEvent) { switch (event.level) { case "status" : trace("Envio correcto"); break; case "error" : trace("Fallo al conectar"); break; } } //Creo las funciones para los botones function Reproducir(event:MouseEvent){ var tiempo = new Date(); conexion.send('esedeerre', 'Reproducir',tiempo.getTime()); } function Parar(event:MouseEvent){ var tiempo = new Date(); conexion.send('esedeerre', 'Parar',tiempo.getTime()); } //Añado los listener Play_bt.addEventListener(MouseEvent.CLICK,Reproducir); Stop_bt.addEventListener(MouseEvent.CLICK,Parar); //////////////////////////////////////////////////////// //CÓDIGO PARA LA SEGUNDA PELÍCULA //////////////////////////////////////////////////////// //Importo las clases necesarias import flash.net.LocalConnection; //////////////////////////////////////////////////////// //Creo la conexión, y me conecto con el nombre esedeerre var conexion:LocalConnection = new LocalConnection(); conexion.client = this; try{ conexion.connect("esedeerre"); }catch (error:ArgumentError){ trace("Error al conectar"); } //////////////////////////////////////////////////////// //Creo las funciones para parar y reproducir el clip function Reproducir(time){ var tiempo = new Date(); var espera = tiempo.getTime() - time; Texto_txt.text = "Se tardaron " + espera + " ms en recibir la última instrucción."; Coche_mc.play(); } function Parar(time){ var tiempo = new Date(); var espera = tiempo.getTime() - time; Texto_txt.text = "Se tardaron " + espera + " ms en recibir la última instrucción."; Coche_mc.stop(); } //////////////////////////////////////////////////////// //Dejo el coche parado al principio Coche_mc.stop(); Texto_txt.text = "Esperando primera instrucción." |