Здравствуйте, гость ( Вход | Регистрация )

11 страниц V  1 2 3 > »   
Ответить в эту темуОткрыть новую тему
> Lua
cirus
сообщение 11.3.2017, 21:37
Сообщение #1


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



1. Какая-то справка планируется?
2. Как присваивать значения массиву?
3. Функции lua я так понял тоже доступны?
Код
--lua
a,b = math.sqrt(10),math.sqrt(11)
c = a + b
log (c)

5. Как проверить цвет через if или findcolor?


Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 11.3.2017, 22:16
Сообщение #2


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



справок по луа в инете хоть ешь...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 11.3.2017, 22:17
Сообщение #3


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
1. Какая-то справка планируется?

Вообще надо, но это самая большая беда. Т.е. по сути нужно делать зеркало вики.
Цитата
2. Как присваивать значения массиву?

arr[1] = 1
arr[1][1] = 1
arr[1][1][1] = 1
В луа массивы могут быть не прямоугольными. Ключи могут быть не числовыми, а текстовыми. Пока все ключи числовые - это массив, как только появляются текстовые, то получается таблица. Так же их можно использовать, как деревья.
3) да.
4) хз как так..
5) Через if не уверен в возможности. По финдколору нужно у кнайта уточнить. Что-то говорили по этому поводу, не помню.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 11.3.2017, 22:49
Сообщение #4


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Цитата
справок по луа в инете хоть ешь...

Для тех кто только скачал пилот они не очень-то помогут разобраться в синтаксисе. Особенно для тех кто не знает языков программирования.
Цитата
Вообще надо, но это самая большая беда. Т.е. по сути нужно делать зеркало вики.

Напиши хотя бы страницу введение в синтаксис lua. Остальное по понемногу допишется, когда сам разберусь что к чему (IMG:style_emoticons/default/smile.gif)
Цитата
arr[1] = 1

Не работает так.
Можно так:
Код
--lua
a = {10,20,30,40}
log (a[1])
log (a[2])
log (a[3])
log (a[4])

Но это одномерный и присвоение пачкой.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 11.3.2017, 23:21
Сообщение #5


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



Цитата(cirus @ 11.3.2017, 22:49) *

Для тех кто только скачал пилот они не очень-то помогут разобраться в синтаксисе. Особенно для тех кто не знает языков программирования.



По моему, даже вики по пилотскому языку не сильно помогает новичкам. Хотя пилот упрощен донельзя(на самом деле даже наоборот, имхо). Если человек хочет разобраться - он и на с++ напишет, не говоря уже о луа. А тем ,кому нужен только результат, то им хоть 16 томов про объявление переменных напиши - пофиг. Луа это единый язык. Он одинаков во всех проектах. Достаточно указать как дергать функции пилота, а остальное пусть сами познают по учебникам, коих, как уже написал, полно.

Многомерность массива задается фигурными скобочками


Код
arr = {} //одномерный
arr = {{}} //2мер
arr = {{{}}} //3мер
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 11.3.2017, 23:47
Сообщение #6


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Кому-то поможет справка и примеры, кому-то нет. Не стоит обобщать.
Цитата
Многомерность массива задается фигурными скобочками

Код
set %a [1 1] 100
set %a [1 2] 200
set %a [2 1] 300

Как это в Lua будет выглядеть?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 12.3.2017, 0:14
Сообщение #7


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



a={{}}
a[1][1] = 100
....


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 12.3.2017, 0:44
Сообщение #8


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



А чем поможет справка ИМЕННО НА ВИКИ ПИЛОТА ? Как она доступней расскажет о луа ? В чем ее отличие ОТ ДРУГИХ СПРАВОК ? Вики пилота была нужна лишь из-за того,что язык узконаправленный и инфы про него нет, но луа...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 12.3.2017, 1:41
Сообщение #9


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



можно сделать какое-то краткое базовое введение, но смысла особо в большой справке рукотворной я не вижу. Проще скопипастить. Гораздо важнее существующие скрипты на пилоте, которые выложены на вике, переписать на луа.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 12.3.2017, 1:55
Сообщение #10


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Потому что в справках полно лишнего. Того что многим не понадобится, сначала так уж точно.
Код
В Lua всего 8 типов данных:
* nil (неопределенный)
* boolean (логический)
* number (числовой)
* string (строковый)
* function (функция)
* userdata (пользовательские данные)
* thread (поток)
* table (таблица)

Для большинства такая инфа вообще ни о чем не скажет. Я бы даже сказал отпугнёт. Это всё равно что первокласснику дать учебник по математике за 9 класс. Заглянул, решил что это слишком сложно и не стал учить математику вообще.
Для начала нужна самая суть и простейшие примеры.
Да, в справках примеры тоже есть: print("Hello World"). То, что в пилоте print нужно заменить на log в справках не написано.
Цитата
можно сделать какое-то краткое базовое введение, но смысла особо в большой справке рукотворной я не вижу

Согласен. Я сразу и написал Введение в синтаксис lua, а не полноценная справка.
Цитата
Гораздо важнее существующие скрипты на пилоте, которые выложены на вике, переписать на луа.

Переписывать явно не сейчас, а когда все функции будут полноценно работать.
Либо дописать примеры для lua, либо сделать отдельные страницы, чтобы потом подменить старые.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 12.3.2017, 7:43
Сообщение #11


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Переписывать явно не сейчас, а когда все функции будут полноценно работать.

Это лучший способ найти все баги =)


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 12.3.2017, 12:28
Сообщение #12


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
--lua
log (color (553, 365))
if color (553, 365) == 6566912 then
    log ("Цвет найден")
else
    log ("Цвет не найден")
end

1. Вроде как, вполне понятная конструкция. И цвет определяет правильно, а в логе Цвет не найден.
2. Как теперь работают команды set\get?
get clipboard/set clipboard
get windowpos/set windowpos
и т. д.
3. Как вывести hint с параметрами?
4. Как работают save/load_array?







Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 12.3.2017, 12:43
Сообщение #13


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



2)никак
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 12.3.2017, 13:05
Сообщение #14


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
2)никак

Работают, но через заглушки. Что-то вроде
set (var, func)
точный вид надо в логи с кнайтом поднимать. сейчас нет возможности.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 12.3.2017, 20:50
Сообщение #15


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



Так а зачем бред городить, когда можно :

Код
var = "var"
func()


set же должен остаться в прошлой жизни.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.3.2017, 0:35
Сообщение #16


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Так а зачем бред городить, когда можно :

Это сделано не более чем для временной совместимости, чтобы сгладить углы. Не все можно сразу предусмотреть, а подобный подход позволит убрать некоторые возможные проблемы.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 13.3.2017, 13:19
Сообщение #17


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Код
--lua
if tonumber(color (273, 753)) == 16754189 then
    log ("Цвет найден")
else
    log ("Цвет не найден")
end

С этим разобрался, работает. Функции пилота определяются как sting, т. е. нужно преобразовывать в number.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 13.3.2017, 14:55
Сообщение #18


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26540
Пользователь №: 16.971
Возраст: 29



Я так понимаю, теперь в 1 строке можно писать несколько команд, через ';'
Код
--lua
log ("clear"); log ("mode compact"); log ("open 100 100 400 250")
a,b=1,2
if a == b then log ("a равно b") else log ("a не равно b") end; log ("Конец скрипта")

Хотя и без ';' работает.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 13.3.2017, 15:14
Сообщение #19


********

Master
Сообщений: 1.394
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 20893
Пользователь №: 16.156



или

Код
if color (273, 753) == "16754189" then
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.3.2017, 15:19
Сообщение #20


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



имхо косяк - не должно оно быть стрингом.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

11 страниц V  1 2 3 > » 
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 19:55
Designed by Nickostyle