96 lines
8.5 KiB
Lua
96 lines
8.5 KiB
Lua
techage.add_to_manual('RU', {
|
||
"1,Дополнения к TA4",
|
||
"2,Сенсорный экран",
|
||
"3,Поддерживаемые элементы и их свойства",
|
||
"3,Пример",
|
||
"2,Матричный экран",
|
||
}, {
|
||
"В настоящее время доступны следующие расширения для TA4:\n"..
|
||
"\n"..
|
||
" - Сенсорный экран\n"..
|
||
"\n",
|
||
"\n"..
|
||
"\n"..
|
||
"Сенсорный экран может использоваться как обычный дисплей TA4.\n"..
|
||
"Кроме того\\, он поддерживает следующие команды\\, которые позволяют создавать форму\\, открываемую щелчком правой кнопкой мыши по сенсорному экрану:\n"..
|
||
"\n"..
|
||
" - add_content: Пытается добавить элемент в форму сенсорного экрана. Принимает определение элемента в качестве полезной нагрузки. При успешном выполнении возвращает ID только что созданного элемента.\n"..
|
||
" - update_content: Пытается изменить уже существующий элемент формы сенсорного экрана. Принимает определение элемента с дополнительным полем id\\, которое можно использовать для выбора элемента\\, который нужно обновить. При успешном выполнении возвращает true.\n"..
|
||
" - remove_content: Пытается удалить существующий элемент из формы сенсорного экрана. Принимает хранилище в качестве полезной нагрузки. Единственным полем в этом хранилище должно быть поле id. При успешном выполнении возвращает true.\n"..
|
||
" - private: Делает сенсорный экран частным. Форму могут отправлять только игроки с доступом к защите.\n"..
|
||
" - public: Делает сенсорный экран общедоступным. Все игроки могут отправлять форму.\n"..
|
||
"\n"..
|
||
"Определение элемента представляет собой структуру данных хранилища. Вы можете установить тип элемента в поле \"type\" этого хранилища.\n"..
|
||
"Вы можете устанавливать свойства элемента в качестве дополнительных полей в этом хранилище.\n"..
|
||
"Всегда предоставляются более или менее разумные значения по умолчанию для этих дополнительных свойств\\,\n"..
|
||
"но настоятельно рекомендуется всегда предоставлять значения самостоятельно\\, поскольку значения по умолчанию не задокументированы и могут измениться.\n"..
|
||
"\n"..
|
||
"При отправке формы в контроллер возвращается хранилище в качестве сообщения.\n"..
|
||
"Поля\\, доступные в обратных вызовах Minetest on_receive_fields\\, устанавливаются в этом хранилище.\n"..
|
||
"Поле \"_sent_by\" содержит имя отправителя.\n"..
|
||
"Вы можете получить доступ к этому хранилищу\\, используя функцию $get_msg(true) контроллера Lua.\n"..
|
||
"Пожалуйста\\, не забудьте о \"true\" в качестве первого параметра\\; в противном случае вы получите доступ только к строковому представлению сообщения.\n"..
|
||
"\n"..
|
||
"Форма отображается с использованием формы версии 3 (включены реальные координаты)\\, поэтому используйте последнюю версию клиента Minetest.\n"..
|
||
"\n"..
|
||
"Когда кто-то открывает сенсорный экран\\, сообщение будет отправлено контроллеру.\n"..
|
||
"Это сообщение содержит хранилище\\, в котором поле \"_touchscreen_opened_by\" устанавливается в соответствующее имя игрока.\n"..
|
||
"\n",
|
||
"\n"..
|
||
"\n"..
|
||
"Обратите внимание: Этот список может быть изменен.\n"..
|
||
"\n"..
|
||
"button: x\\, y\\, w\\, h\\, name\\, label\n"..
|
||
"label: x\\, y\\, label\n"..
|
||
"image: x\\, y\\, w\\, h\\, texture_name\n"..
|
||
"animated_image: x\\, y\\, w\\, h\\, name\\, texture_name\\, frame_count\\, frame_duration\\, frame_start\n"..
|
||
"item_image: x\\, y\\, w\\, h\\, item_name\n"..
|
||
"pwdfield: x\\, y\\, w\\, h\\, name\\, label\n"..
|
||
"field: x\\, y\\, w\\, h\\, name\\, label\\, default\n"..
|
||
"field_close_on_enter: name\\, close_on_enter\n"..
|
||
"textarea: x\\, y\\, w\\, h\\, name\\, label\\, default\n"..
|
||
"image_button: x\\, y\\, w\\, h\\, texture_name\\, name\\, label\n"..
|
||
"item_image_button: x\\, y\\, w\\, h\\, item_name\\, name\\, label\n"..
|
||
"button_exit: x\\, y\\, w\\, h\\, name\\, label\n"..
|
||
"image_button_exit: x\\, y\\, w\\, h\\, texture_name\\, name\\, label\n"..
|
||
"box: x\\, y\\, w\\, h\\, color\n"..
|
||
"checkbox: x\\, y\\, name\\, label\\, selected\n"..
|
||
"\n"..
|
||
"Для получения дополнительной информации о значении этих элементов рекомендуется обратиться к файлу lua_api.txt в документации Minetest.\n"..
|
||
"\n",
|
||
"\n"..
|
||
"\n"..
|
||
"*Init:*\n"..
|
||
"\n"..
|
||
" $events(true)\n$loopcycle(0)\n\nTOUCHSCREEN_NUM = 338\n\ncounter = 1\n\n$send_cmnd(TOUCHSCREEN_NUM\\, \"remove_content\")\n\nres = $send_cmnd(TOUCHSCREEN_NUM\\, \"add_content\"\\, Store(\"type\"\\, \"button\"\\, \"w\"\\, 5\\, \"label\"\\, counter))\nres2 = $send_cmnd(TOUCHSCREEN_NUM\\, \"add_content\"\\, Store(\"type\"\\, \"button\"\\, \"w\"\\, 5\\, \"y\"\\, 2\\, \"label\"\\, counter))\n\n$print(\"ID: \"..res)\n"..
|
||
"\n"..
|
||
"*Loop:*\n"..
|
||
"\n"..
|
||
" local num\\,msg = $get_msg(true)\n\nif num == tostring(TOUCHSCREEN_NUM) and msg.next then\n for k\\,v in msg.next() do\n if k == \"button\" then\n counter = counter + 1\n $print(res)\n $send_cmnd(TOUCHSCREEN_NUM\\, \"update_content\"\\, Store(\"type\"\\, \"button\"\\, \"w\"\\, \"5\"\\, \"label\"\\, counter\\, \"id\"\\, res))\n if counter > 10 then\n $send_cmnd(TOUCHSCREEN_NUM\\, \"remove_content\"\\, Store(\"id\"\\, res2))\n else\n $send_cmnd(TOUCHSCREEN_NUM\\, \"update_content\"\\, Store(\"type\"\\, \"button\"\\, \"w\"\\, \"5\"\\, \"y\"\\, 2\\, \"label\"\\, counter\\, \"id\"\\, res2))\n end\n end\n $print(k..\": \"..v)\n $display(TOUCHSCREEN_NUM\\, 0\\, k)\n $display(TOUCHSCREEN_NUM\\, 0\\, v)\n end\nend\n"..
|
||
"\n",
|
||
"\n"..
|
||
"\n"..
|
||
"Экран Matrix имеет разрешение 16x16 пикселей.\n"..
|
||
"Доступны различные палитры с 64 цветами каждая.\n"..
|
||
"\n"..
|
||
"Для программирования экрана вы можете отправить строку\\, закодированную в формате base64\\, в качестве данных для команды \"pixels\".\n"..
|
||
"Эта строка должна содержать 256 символов. Каждый символ соответствует одному пикселю\\, построчно от верхнего левого угла до нижнего правого угла.\n"..
|
||
"\n"..
|
||
"Рекомендуется использовать программу TA4 Matrix Screen Programmer для удобного создания таких строк.\n"..
|
||
"\n"..
|
||
"Палитру цветов можно изменить с помощью команды \"palette\".\n"..
|
||
"\n",
|
||
}, {
|
||
"",
|
||
"ta4_addons_touchscreen",
|
||
"ta4_addons_touchscreen",
|
||
"ta4_addons_touchscreen",
|
||
"ta4_addons_matrix_screen",
|
||
}, {
|
||
"",
|
||
"",
|
||
"",
|
||
"",
|
||
"",
|
||
})
|