2010-02-25 2 views
1

alt text http://www.ashcraftband.com/myspace/videodnd/board2.jpgзакончить аргумент «стартовый код» AS3

Как закончить аргументы для управления внешним SWF? Привлекательный пример «стартового кода», как написать это.

проблема
Я не могу следовать рассуждениям струнных и «сверление-в-к» внешним документам. Я играю догоняю.

alt text http://www.ashcraftband.com/myspace/videodnd/question.jpg

loader.swf

import flash.net.*; 
import flash.display.Loader; 
import flash.events.*; 
import flash.system.Security; 

//Security.loadPolicyFile("xmlsocket://192.168.0.198:843"); 
//Security.showSettings(); 

var xml_s=new XMLSocket(); 
xml_s.addEventListener(Event.CONNECT, socket_event_catcher);//OnConnect// 
xml_s.addEventListener(Event.CLOSE, socket_event_catcher);//OnDisconnect// 
xml_s.addEventListener(IOErrorEvent.IO_ERROR, socket_event_catcher);//Unable To Connect// 
xml_s.addEventListener(DataEvent.DATA, socket_event_catcher);//OnDisconnect// 
xml_s.connect("localhost", 1999); 


function socket_event_catcher(Event):void 
{ 
    switch(Event.type) 
    { 
     case 'ioError': 
      trace("ioError: " + Event.text); //Unable to Connect :(// 
      break; 
     case 'connect': 
      trace("Connection Established!"); //Connected :)// 
      break; 
     case 'data': 
      trace("Received Data: " + Event.data); 
      var xml_msg:XML = new XML(Event.data); 
      var file_to_load:String = xml_msg.body.file; 
      var urlReq:URLRequest = new URLRequest(file_to_load); 
      var myMovie = null; 
      var ldr:Loader = new Loader(); 
      //ldr.contentLoaderInfo.addEventListener(Event.complete, onComplete); 
      ldr.load(urlReq); 
      trace("loader.content: " + ldr.content); 
      if (myMovie != null) 
       bg.removeChild(myMovie); 


      //ldr.content.stage.height = 300; 
      //ldr.stage.width = 500 
      myMovie = bg.addChild(ldr); 
      /* 
       var ldr:Loader = new Loader(); 
      var urlReq:URLRequest = new URLRequest(Event.data); 
      ldr.load(urlReq); 
      */ 
      break; 
     case 'close': 
      trace("Connection Closed!"); //OnDisconnect :(// 
      xml_s.close(); 
      break; 
    } 
} 

external.swf необходимо обмениваться данными()

//Tick Tock 
var timer:Timer = new Timer(10); 
var count:int = 0; //start at -1 if you want the first decimal to be 0 
var fcount:int = 0; 

timer.addEventListener(TimerEvent.TIMER, incrementCounter); 
timer.start(); 

function incrementCounter(event:TimerEvent) { 
    count++; 
    fcount=int(count*count/1000);//starts out slow... then speeds up 
    mytext.text = formatCount(fcount); 
} 

function formatCount(i:int):String { 
    var fraction:int = i % 100; 
    var whole:int = i/100; 

    return ("0000000" + whole).substr(-7, 7) + "." + (fraction < 10 ? "0" + fraction : fraction); 
} 

XML м essage

/*"XML"*/ 
<head> 

<seq_no>text</seq_no> 
</head> 

<body> 

/*"WHERE IT STARTS"*/ 
<count_int>0</count_int> 

/*"TIMESCALE"*/ 
<timer>10</timer> 

/*"TIME CURVE"*/ 
<fcount_>0</fcount_> 

/*function time settings*/ 
<incrementCounter_>count*count/1000</incrementCounter_> 

/*"FILE TO LOAD"*/ 
<file>1.swf</file> 

</body> 

Результат
Даже получение один метод работы, как «fcount» даст понимание. XML прост, но этот проект трудно выполнить , и он управляется соединением сокетов TCP/IP. Это, скорее всего, общие препятствия для реализации онлайн-игры или киоска.

ответ

0

Вот простой пример сокета:

var xml_s=new XMLSocket(); 
xml_s.connect(ip,port); 
xml_s.addEventListener(Event.CONNECT,xmlsocket);//OnConnect// 
xml_s.addEventListener(Event.CLOSE,xm lsocket);//OnDisconnect// 
xml_s.addEventListener(IOErrorEvent.I O_ERROR,xmlsocket);//Unable To Connect// 

public function xmlsocket(Event):void{ 
switch(Event.type){ 
case 'ioError': 
//Unable to Connect :(// 
break; 
case 'connect': 
//Connected :)// 
break; 
case 'close': 
//OnDisconnect :(// 
break; 
} 
} 

xml_s.send("MESSAGE HERE"); 

Вот учебник на патрубках вспышки: http://www.ultrashock.com/forums/tutorials/actionscript-3-socket-communication-81676.html

+0

Строковые аргументы являются B @ #! Переход к external.swf. Я могу загружать файлы, но я не могу их контролировать. – 2010-02-25 18:54:43

+0

Спасибо, извините, я не ответил сразу. Мои сообщения, где сумасшедшие, но я получил разрешение на сокет-сервер. – 2010-04-19 17:07:34

Смежные вопросы