![]() |
|
||||||||||
|
|||||
|
Нет. Он вставлен в Мувиклип "панели", отвечающей за подключения пользователя к игре, а вот код _root.authentific.setsts.value - это как раз относится к ComboBox'у, отвечающий за переключение статуса Он/Офф лайн. Сейчас я вообще расскажу, что у меня, да как...
Я создаю мультиплеерскую игру и у меня возникла проблема по поводу добавления пользователя в онлайн-списки. Ведь если пользователь заходит в игру, то он опять добавляется и добавляется. И теперь фактически онлайн - 1 юзер, на цифрах - 100500 юзеров.. Я решил от этой проблемы избавиться, добавив дополнительные фукции в мувиклип authentific, в которой в принципе хранятся все переменные, относящиеся к регистрации, авторизации, онлайн-данные (логин, пароль, статус и т.п.). Осуществил я эти возможности путем ежесекундной проверки согласования UNIX-времени (кол-во секунд с 1.01.1970, по-моему так...). Одна из двух первых функций отправляет время в юзерский файл, другая - проверяет, а не отличается ли это время больше, чем на 5 секунд. Если разница больше 5 - юзер off, меньше - on. При этом, этот статус отправляется в файл статуса юзера. Затем третья функция смотрит файл статуса, и если юзер on, то идет проверка онлайн-списков. Если юзер есть в этом списке (имеется в виду наличие 4-ех файлов: логин, х-координата, y-координата и угол поворота), то просто будет стоять на готове, как только не поступит команда off с сервера. P.S. Только что пришла идея: вместо 4-ех файлов - один со всеми данными...... Команда off с сервера (файл статуса) придет только тогда, когда разница составит больше 5 секунд, что осуществляется как раз тем самым переключателем, про который я говорил выше. НО! Проверка положения (по моему способу - это нубский setInterval в 10 мс для функции проверки положения переключателя: "а не изменилось ли положение переключателя???") будет каждые 10 мс запускать проверку онлайн-листов, что будет накладно и для клиента и для сервера. Тут-то мне и нужен слушатель для того, чтобы проверка запускалась только в тот момент, когда происходит переключение статуса. Эта же функция, отвечающая за онлайн-списки, если она получит команду off, то тоже только в этот момент запускает новую проверку, во время которой произойдет удаление этих четырех файлов (P.S. Или одного....). Четвертая функция отвечает за проверку количества юзеров-онлайн. Проверив наличие файлов в онлайн-списке, она создаст массив, куда запишет всех онлайн-юзеров. А вот тут начнется уже зацикленный в 100 мс процесс, который будет "прогонять" этот массив. "Прогонка" включает в себя: дублирование мувиков-героев, считывание настройки цвета героя, считывание координат и углов поворота. При этом, всё это будет высвечиваться на основной сцене. Отправка этих данных будет сразу же после нажатия или движения мыши. Вот в принципе и всё. Сейчас попробую опять свой нубский (но немного другой способ) проверки переключателя. Если получится - сообщу... Добавлено через 5 минут Кстати... Я вот тут подумал... Зачем мне онлайн пользователи? Ведь все эти файлы с координатами, углами и прочим я могу сделать в основной папке users! При этом будет меньше проблем... Но потом до меня дошло: если я этого не сделаю, то каждый новый пользователь будет добавляться на поле и всё... Рандом координат я, конечно же, сделал.. Но как-то некрасиво получится: куча пользователей и все обездвижены... Или как вы считаете? С онлайнами или без них? Добавлено через 25 часов 13 минут Неужели никто поможет?.. Добавлено через 33 часа 37 минут Я так понимаю, что никто с советом не поможет? если что - вот ссылка на приложение. ОЧЕНЬ СЫРОЕ http://forstudents.xe0.ru/multyplayerchat/ чтобы не мучиться Логин 1111 Пароль 111111
__________________
Надо сменить подпись... |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:03. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|