Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как составить юзерлист в чате? (http://www.flasher.ru/forum/showthread.php?t=164613)

Фенёк 17.08.2011 18:12

как составить юзерлист в чате?
 
есть такой вот кусок кода:

Код AS3:

package 
{
 
        import flash.display.MovieClip;
        import flash.events.*;
        import flash.net.*;
 
        public class Main extends MovieClip
        {
                var nick
                var nStream
                var nGroup
                var sequence        = 0;
                var server                = "rtmfp://p2p.rtmfp.net/"
                var devKey                = "2156130125817788fa2ab6c6-86c5984e5813"
                var group                = "fennec"
                var nCon                = new NetConnection()
                var chatBox        = new Chat;
 
                public function Main():void
                {
                        addChild(chatBox);
                        stage.addEventListener(KeyboardEvent.KEY_DOWN, welcomeKey);
                        stage.focus = chatBox.nick;
                        nCon.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
                }
 
                private function welcomeKey(e:KeyboardEvent):void
                {
                        switch (e.keyCode)
                        {
                                case 13:
                                        stage.removeEventListener(KeyboardEvent.KEY_DOWN, welcomeKey);
                                        nick = chatBox.nick.text;
                                        chatBox.nextFrame();
                                        nCon.connect(server + devKey);
                                break;
                        }
                }
 
                private function inChatKey(e:KeyboardEvent):void
                {
                        switch (e.keyCode)
                        {
                                case 13:
 
                                        var mess:Object = new Object;
                                        mess.nick = nick;
                                        mess.text = chatBox.mess.text + "\n";
                                        mess.sender = nCon.nearID;
                                        mess.sequence = sequence++;
                                        chatBox.chat.text += "[" + nick + "]: " + chatBox.mess.text + "\n";
                                        nGroup.post(mess);
                                        chatBox.chat.scrollV = chatBox.chat.bottomScrollV
                                        chatBox.mess.text = "";
 
                                break;
                        }
                }
 
                private function onNetStatus (e:NetStatusEvent):void
                {
                        switch(e.info.code) {
                                case "NetConnection.Connect.Success" :
                                onConnect();
                                break
                                case "NetGroup.Connect.Success" :
                                onGroupConnect();
                                break
                                case "NetGroup.Posting.Notify" :
                                posting(e.info.message);
                                break
                                case "NetGroup.Neighbor.Connect" :
                                onNeighborConnect(e.info.peerID);
                                break
                                case "NetGroup.Neighbor.Disconnect" :
                                onNeighborDisconnect(e.info.peerID);
                                break
                        }
                }
                private function onNeighborConnect(user):void
                {
                        chatBox.chat.text += user + " присоединился…\n";
                        chatBox.chat.scrollV = chatBox.chat.bottomScrollV;
                }
 
                private function onNeighborDisconnect(user):void
                {
                        chatBox.chat.text += user + " отключился…\n";
                        chatBox.chat.scrollV = chatBox.chat.bottomScrollV;
                }
                private function onConnect():void {
 
                chatBox.nextFrame();
                chatBox.myNick.text = nick + ":";
 
                chatBox.chat.text = "";
                stage.focus = chatBox.mess;
                stage.addEventListener(KeyboardEvent.KEY_DOWN, inChatKey);
 
                var gs:GroupSpecifier = new GroupSpecifier(group);
                gs.multicastEnabled = true;
                gs.postingEnabled = true;
                gs.serverChannelEnabled = true;
 
                nGroup = new NetGroup(nCon, gs.groupspecWithAuthorizations());
                nGroup.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
 
                }
 
                private function onGroupConnect():void {
 
                }
 
 
                private function posting(mess:Object):void {
                        chatBox.chat.text += "[" + mess.nick + "]: " + mess.text;
                        chatBox.chat.scrollV = chatBox.chat.bottomScrollV;
                        }
        }
}

Вопрос: можно ли через АйДи получить доступ к переменным?

Пытался решить вопрос иначе кода при коннекте происходит sendToAllNeighbors(%юзернейм%), но sendToAllNeighbors наотрез отказывается работать.


Часовой пояс GMT +4, время: 15:45.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.