room.text ="Lobby";
6 }else {
7 chat.gotoAndStop("Login Failed");
8 chat.reason.text =reason;
9 }
10 }
Принимаются два параметра, success и reason. Если регистрация была успешна, то значение success равно true. В этом случае, мы вызываем метод joinRoom() объекта ElectroServerAS для присоединения (или входа) в комнату Lobby. Мы попадаем в кадр Chat и текстовое поле room отображает ее имя. Если success равно false, то попытка авторизации неудачна, и параметр reason содержит причину, по которой произошла ошибка. В этом случае вы попадаете в кадр ошибки регистрации Login Failed, где отображается ее причина.
Из кадра Chat вы можете послать сообщение в чат. Чтобы это сделать, вы вводите текст в поле ввода и нажимаете кнопку Send. Сообщение передается в эту функцию, и она выполняется:
1 function chatSend(info){
2 ES.sendMessage(info,"room");
3 }
Параметр info содержит текстовое сообщение, которое вы пытаетесь послать. Затем мы вызываем метод sendMessage() объекта ElectroServerAS. Второй параметр, «room», определяет, что мы хотим послать это сообщение прямо в комнату. Если вместо «room» этот параметр содержит имя пользователя, то сообщение должно быть послано определенному пользователю (то есть, это должно быть личное сообщение, до которого мы скоро доберемся).
Когда сообщение получено от сервера, возникает событие chatReceiver и вызывается следующая функция:
1 function messageArrived(info){
2 var from =info.from;
3 var body =info.body;
4 var type =info.type;
5 if (type =="public"){
6 var msg =formatFrom(from)+":
."+formatBody(body)+"<br>";
7 }else if (type =="private"){
8 var msg =formatFrom(from)+"[private ]:
."+formatBody(body)+"<br>";
9 }
10 chat.window.htmlText =ES.addToHistory(msg);
11 chat.bar.setScrollPosition(chat.window.maxscroll);
12 }
Эта функция вызывается всякий раз, когда получено сообщение