Syabro 81 Опубликовано: 9 июля, 2014 Привет! Как многие знают на новом сервере 1.6.4 , относительно новом, добавили такие моды как ComputerCraft и аддон к этому моду - OpenPeripheral. В моде OpenPeripheral есть очень хорошая вещь! TerminelGlasses у нас на сервере их называют "GoogleGlass" и не зря ведь они могут создавать объекты такие как: text, gradientBox и просто box и вот используя эти 3 объекта, а точнее 2 (text и box) я написал "локальный" чат! Вот так он выглядит:Что бы написать сообщение вам нужно ввести "$$" и затем сообщение например: $$Hello World!Также как вы уже заметили на скриншоте чат поддерживает русские символы.Имеются команды настройки такие как: set text_coordX, set text_coordY, set text_color, set bg_show, set bg_color, set bg_opacity, set max_height. Например работа команд:$$set text_coordX$$10$$set text_coordY$$10$$set text_color$$0xFF0000Остальные команды означают:set bg_show - скрывать или нет фон, стандарт: true. Пример: true, falseset bg_color - задает цвет фона, стандарт: 0x0101FF. Пример: 0xFF0000set bg_opacity - задает прозрачность фона от 0 до 1, стандарт: 0.5. Пример: 0.3set max_height - задает максимальное количество строк чата, стандарт: 10. Пример: 15Pastebin коды для файла "glass.lua" и самого чата соответственно: DiYrqfti и xDfjKViHЧто бы вводить команды вам нужна админка, просто введи свой ник вместо Syabro на 8-ой строке!Загрузка и сохранение настроек будет доступна попозже. Функция бана пока не работает.Забыл написать! Вам понадобится Terminal Glasses Bridge, программа сама определит с какой стороны он стоит. Что бы подключить к нему очки нужно кликнуть ими по блоку ПКМ(правой кнопкой мыши)Большое спасибо Fenixrus!!! 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 ОБНОВЛЯЙТЕ! Программу чата нужно загрузить по новой. Добавлено сохранение настроек! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 Также добавил возможность рестарта чата! Нужно например для очистки или изменения количества строк чата. Что бы перезагрузить сервер нужно написать: $$reboot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 Что же это за файл "glass.lua"? В этом файле содержится функця для принта таблици которая используется в моём чате. Она выглядит так: printGlassText(prox, text, x, y, text_color, bg_show, bg_color, opacity, user) prox - сюда передается объект peripheral.wrap() text - соответственно таблица с индексом от 1-го до конца... x, y - координаты верхнего левого угла текста text_color - цвет текста bg_show - показывать или нет фон (true, false) bg_color - цвет фона opacity - прозрачность фона user - ф-ция не доступна Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 9 июля, 2014 Не до конца разобрался с механизмом обмена сообщениями. Вот, что удалось понять, поправь если не так 1. Чат построен на основе одного единственного компьютера, к которому прикручена фиговина "openperipheral_glassesbridge" 2. Каждый участник чата должен иметь на носу супер очки, связанные с этой фиговиной при помощи ПКМ 3. Для отсылки сообщения в GoogleGlass Chat необходимо в обычный чат послать сообщение, начинающееся с $$. После чего, каждый у кого очки, это сообщение увидит. Причем в обычный чат сообщение не попадет. 4. Расстояние от пользователя до компьютера значения не имеет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 Не до конца разобрался с механизмом обмена сообщениями. Вот, что удалось понять, поправь если не так 1. Чат построен на основе одного единственного компьютера, к которому прикручена фиговина "openperipheral_glassesbridge" 2. Каждый участник чата должен иметь на носу супер очки, связанные с этой фиговиной при помощи ПКМ 3. Для отсылки сообщения в GoogleGlass Chat необходимо в обычный чат послать сообщение, начинающееся с $$. После чего, каждый у кого очки, это сообщение увидит. Причем в обычный чат сообщение не попадет. 4. Расстояние от пользователя до компьютера значения не имеет Все правильно понял! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 Опять добавлены команды: set adm_nick - изменяет ник админа del msg - удаляет определенное сообщение Также о системе команд. Есть команды такие как reboot они пишутся "$$reboot" и все а есть команды типа "set adm_nick" после которых нужно вводить значение. Например: $$set adm_nick $$Fenixrus Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 Что бы вводить команды вам нужна админка, просто введи свой ник вместо Syabro на 8-ой строке! Теперь нужно заменить Syabro на свой ник на 3-ей строке в таблице Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 9 июля, 2014 "Опять обновление?!" Исправлены баги! Вот код программы-чата что бы вы не искали... xDfjKViH Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 9 июля, 2014 Александр, ты не указал главной фичи блока - это то, что он перехватывает чат с тегом $$ и в pullEvent возвращает ник и сообщение. А функцию бан разбан легко и нужно обязательно реализовать через запись в файл banlist по команде $$ban nick и $$unban nick и обрабатывать файл, в котором построчно лежат ники. То есть дописывать или удалять из файла игрока, а при срабатывании пуливента смотреть из таблицы tmpban, есть ли игрок в ней или нет и соответственно принтить его смс или нет. Таблицу tempban обновлять после каждой операции добавления/удаления игрока из бана и при старте сервера. Сложнее с $$mute nick delay. Нужно генерировать на "заткнутого" игрока переменную таймера и отдельным пуливентом на срабатывание таймеров чистить игроков из таблицы table_temp_mute. Сделай обработку строки целиком, если там есть команда и аргументы. Zero целую энциклопедию уже написал для этого тут! А вот если еще систему уровней доступа сделаешь (суперадмин, админ, модер и юзер) которым будут доступны только определенные команды (а так же префиксы будешь выводить) - цены программке не будет! П.С. За работу над программойLike выдаю стак иридия и иридиевую дрил 3 уровня. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
fenixrus 17 Опубликовано: 10 июля, 2014 Не до конца разобрался с механизмом обмена сообщениями. Вот, что удалось понять, поправь если не так 1. Чат построен на основе одного единственного компьютера, к которому прикручена фиговина "openperipheral_glassesbridge" 2. Каждый участник чата должен иметь на носу супер очки, связанные с этой фиговиной при помощи ПКМ 3. Для отсылки сообщения в GoogleGlass Chat необходимо в обычный чат послать сообщение, начинающееся с $$. После чего, каждый у кого очки, это сообщение увидит. Причем в обычный чат сообщение не попадет. 4. Расстояние от пользователя до компьютера значения не имеет от расстояния полностью не зависит, даже от мира Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 10 июля, 2014 Александр, ты не указал главной фичи блока - это то, что он перехватывает чат с тегом $$ и в pullEvent возвращает ник и сообщение. А функцию бан разбан легко и нужно обязательно реализовать через запись в файл banlist по команде $$ban nick и $$unban nick и обрабатывать файл, в котором построчно лежат ники. То есть дописывать или удалять из файла игрока, а при срабатывании пуливента смотреть из таблицы tmpban, есть ли игрок в ней или нет и соответственно принтить его смс или нет. Таблицу tempban обновлять после каждой операции добавления/удаления игрока из бана и при старте сервера. Сложнее с $$mute nick delay. Нужно генерировать на "заткнутого" игрока переменную таймера и отдельным пуливентом на срабатывание таймеров чистить игроков из таблицы table_temp_mute. Сделай обработку строки целиком, если там есть команда и аргументы. Zero целую энциклопедию уже написал для этого тут! А вот если еще систему уровней доступа сделаешь (суперадмин, админ, модер и юзер) которым будут доступны только определенные команды (а так же префиксы будешь выводить) - цены программке не будет! П.С. За работу над программойLike выдаю стак иридия и иридиевую дрил 3 уровня. ИРИДИЙ :eek: На счет бана! Там суть не в самой системе бана, а в выводе сообщения "You are banned!" одному игроку... там что-то с glass.getUserSurface(nick) она не работает... Фичу я указал... С мутом и разделением на группы тоже можно разобраться... достаточно не сложно... А за ссылочку Спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 10 июля, 2014 Ты хочешь блокировать забаненного юзера, чтобы он вообще не видел чат? Или в аддоне есть возможность показа сообщения только одному игроку. Я бы согласился на то, что просто юзер увидел смс, мол, "Nick_name has been banned" , и больше не мог писать в чат. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 10 июля, 2014 А можно ли при помощи этой штуки организовать связь между двумя компьютерами? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 10 июля, 2014 А можно ли при помощи этой штуки организовать связь между двумя компьютерами?По сути это удаленная служба доступа (если написать расширенный интерфейс) к компьютеру и ко всем его возможностям через глобальный игровой чат, но только в одностороннем порядке. Можно управлять любыми программами и схемами удаленно с любого расстояния с помощью чата майна и надетых прилинкованных очках. Но обратная связь только в виде отображения информации в очках. Можно через чат майна управлять хоть черепахами, хоть своими ядерными реакторами. Сам комп не управляет чатом майна и это печально, хотя и правильно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 10 июля, 2014 Т.е. компьютер может читать чат, но сам писать туда не может? Жаль. А то можно было бы глобальную сеть между мирами организовать. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 10 июля, 2014 Т.е. компьютер может читать чат, но сам писать туда не может?...Абсолютно верно. Схемка именно так работает!П.С. Дмитрий, я поражаюсь Вашей штабной культуре у умению качественно и грамотно оформлять материал. Примечание: штабная культура (воен. термин) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 10 июля, 2014 Обновление! Добавлены команды "ban" и "unban" Вывод команд админа в ощий чат убран. конечно же сохранение забаненых игроков в файл Команда "del msg" не работает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Syabro Автор темы 81 Опубликовано: 11 июля, 2014 Сейчас программа не доступна... надо еще один файл для тестов... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
fenixrus 17 Опубликовано: 16 июля, 2014 Логов крашей нет, станно. Он просто рестартился что ли. На чем работает программа, ОС? на том же на чем и до этого вчера все норм было, ничего не менялось Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах