![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2008
Сообщений: 23
|
Вообщем был написан буфер между сервером и играми на флеше 8 и 9, который передает данные от сервера к игре и обратно.
Общение посредством LocalConnection. Работает все отлично, но вот беда - если данные очень быстро передаются, то первая часть проходит, а остальные теряются. Весь код писать не буду, но вот пример. Клиент-буфер: AVM_lc = new LocalConnection();
AVM_2c = new LocalConnection();
AVM_2c.allowDomain('*');
AVM_2c.client = this;
AVM_2c.connect("_As2toAs3");
// всякая всячина
private function parser(s:String):void {
var xml:XML =new XML(s);
node = xml.name().localName;
if (node== "m") {
AVM_lc.send("_As3toAs2", "messages", xml);
}
}
//==================
AVM_1c = new LocalConnection();
AVM_2c = new LocalConnection();
AVM_1c.allowDomain('*');
AVM_1c.client = this;
AVM_1c.connect("_As3toAs2");
// тоже всякая всячина
// Функция получение от клиента сообщение в ксмле
public function messages(xml:XML):void {
var number_cadr:String; // Номер кадра на карте
var nodes:XML = new XML();
nodes = xml.children()[0];
// и так далее
Ставить ограничение по времени на клиенте - нельзя, ибо игры быстрые, мультиплеерные, синхронизируются, как милисекунда на счету. У какого какие мысли? Может я что то не так сделал или это особенность LocalConnection? |
![]() |
Часовой пояс GMT +4, время: 03:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|