@ProLua

Страница 211 из 307
Tverd
08.12.2017
12:20:52
просто - удален...

Aleksey
08.12.2017
12:21:28
Класс?

класс удален?

Philipp
08.12.2017
12:23:43
Объект

Google
Tverd
08.12.2017
12:23:51
ну всякое бывает ))) в короне бывает что пустая таблица приходит, ибо удален объект, а ссылка осталась... можно самому удалить поле. В общем проверь что приходит-то. Ну да, объект....

Aleksey
08.12.2017
12:25:05
ну в этой же функции я делаю

if aData and bData then

т.е. вроде nil быть не должно

Philipp
08.12.2017
12:26:48
Ну можешь сделать еще if aData.contact then

Tverd
08.12.2017
12:26:54
сначала идет if a:isDestroyed() or b:isDestroyed() then return end if a:getBody():isDestroyed() or b:getBody():isDestroyed() then return end

Philipp
08.12.2017
12:27:14
Кстати, да

Tverd
08.12.2017
12:27:29
вот а или b nil - то что будет?

Aleksey
08.12.2017
12:27:55
Ну можешь сделать еще if aData.contact then
так делал, падать перестает но ситуацию не спасает

Tverd
08.12.2017
12:28:03
в общем что бы понять что-то - напиши ошибку и в какой строке

Aleksey
08.12.2017
12:28:22
т.к. там логика игры должна вызываться

вот а или b nil - то что будет?
не дойдет до той строки

Tverd
08.12.2017
12:28:58
так где ошибка-то?

Google
Aleksey
08.12.2017
12:29:08
ошибка attempt to call method 'concat' a nil value

строка

aData:contact(bData)

пардон ошибка attempt to call method 'contact' a nil value

Tverd
08.12.2017
12:34:44
да, нет этого метода у aData

теперь самое неприятное, понять почему его там нет )

Aleksey
08.12.2017
12:35:06
вот я как раз эти и опечалился :(

Tverd
08.12.2017
12:35:19
кто удалил, где и зачем

Aleksey
08.12.2017
12:35:19
он в одном случае есть

скорее всего

Tverd
08.12.2017
12:36:43
Ну тут я уже не помогу... Придется искать самому

Aleksey
08.12.2017
12:37:48
ладно буду искать

Ну тут я уже не помогу... Придется искать самому
Блиин прошу прощения, зря голову морочил - это обычный миспеллинг дубликация кода зло

Tverd
08.12.2017
12:42:44
вот! бывает ))))

Ilya
08.12.2017
16:14:07
Я не въезжаю в первую функцию
nkf, видимо, делает URL-кодирование, только почему-то вместо % там =, а также разбивает на строки, оставляя = в конце. sed 's/=$//' удаляет = в конце. tr '=' '%' заменяет все знаки равенства на знак процента. paste ... снова объединяет строки в одну. И последний sed заменяет percent-encoded символы в те, которые, видимо, разрешены в URL.

Philipp
08.12.2017
16:16:44
Хм, понятно, спасибо

Ilya
08.12.2017
16:17:20
А зачем тебе это? Да еще в виде шелл-скрипта?

Philipp
08.12.2017
16:19:01
Затем, что где-то в этом коде теряется символ переноса строки

Ilya
08.12.2017
16:21:23
наверное на этапе paste

Можно использовать https://luarocks.org/modules/gonapps/gonapps-url-encoder вместо этого (или взять оттуда код и допилить до нужного уровня - там вроде все просто).

Google
Philipp
08.12.2017
16:39:41
Та не моя приложуха. Нужно шелл-клиент для твиттера, который я не могу найти

Чай
08.12.2017
16:42:42
Philipp
08.12.2017
16:56:31
Можно вставить туда вызов этого Lua-энкодера.
Ладно, уже оффтопим слишком сильно

В ЛС перейду

Group Butler [beta]
09.12.2017
12:55:04
Добро пожаловать в чат pro.lua, Алексей! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Алексей
09.12.2017
13:18:55
добрый день

Чай
10.12.2017
08:38:14
Добрый день.

/me попробовал использовать IDEA с EmmyLua и нашёл её весьма удобной для навигации по запутанным исходникам. Например, может находить глобальные переменные, объявленные где-то там, неизвестно где, да ещё и подсказку по аргументам в любом месте проекта дать.

brestows
10.12.2017
12:07:03
Привет, народ есть код: local query ="UPDATE table SET status=1" local res=assert(con:execute(query)) res:close()

Получаю ошибку

FailsBot
10.12.2017
12:07:26
Чай попробовал использовать IDEA с EmmyLua и нашёл её весьма удобной для навигации по запутанным исходникам. Например, может находить глобальные переменные, объявленные где-то там, неизвестно где, да ещё и подсказку по аргументам в любом месте проекта дать.

brestows
10.12.2017
12:07:36
Attempt to index local res

Snusmumriken
10.12.2017
12:08:45
А con:execute должна возвращать хендлер который можно закрыть?

brestows
10.12.2017
12:09:17
А разве нет?

Snusmumriken
10.12.2017
12:09:24
А разве да? Это явно не стандартная библиотека => никто не знает о чём ты. Читай референсы по тому что ты используешь.

brestows
10.12.2017
12:11:10
Luasql

Snusmumriken
10.12.2017
12:11:34
Ну вот я, например, этим никогда не пользовался. Читай референс.

brestows
10.12.2017
12:12:39
Да там как бы читать особо нечего

Snusmumriken
10.12.2017
12:13:56


А, блин, как раз вижу )) Ну тут может вернуться курсор.

Google
Snusmumriken
10.12.2017
12:15:05
А ты уверен что это та либа? : ) А ещё, смотри что оно может возвращать кроме курсора: Количество колонок, подвергшихся влиянию выполненной команды. Причём возможно оно возвращает не курсор а nil/false. Делай проверки.

Карочи, проверяй всю фигню. Ты бы лучше попробовал научиться разбираться с подобным самостоятельно. Вот как бы ты стал решать такую проблему, если бы у тебя не было этого чата? Распиши алгоритм своих действий.

Эй, @brestows, ты где?

brestows
10.12.2017
12:25:55
Я уже решил все :)

Snusmumriken
10.12.2017
12:31:21
Я уже решил все :)
Ну восхитительно : ) А как ты решил? Ну пожалуйста, распиши алгоритм работы с чёрным ящиком, коим является пользование любой библиотекой.

fgntfg
10.12.2017
12:32:42
Снус в режиме учителя

Snusmumriken
10.12.2017
12:33:23
Снус в режиме придурка, который хочет чтобы другие люди шевелили мозгами и задавали те вопросы, с которыми ДЕЙСТВИТЕЛЬНО не могут справиться : )

Roman
10.12.2017
12:33:54
а вот скажите, что с корутинами в луа?

Snusmumriken
10.12.2017
12:34:12
Норм всё. Хочешь корутинов - делай корутины. Специальный тип данных под них - присутствует. Запускай - не хочу. Правда, это единственная часть ванильной луа, которую я ковырял меньше получаса и плохо знаю, потому что лично у меня нет нужды в них: имхо, это очень много goto в удобной оболочке, без которых легко можно обойтись, ничего не потеряв.

fgntfg
10.12.2017
12:36:43
Снус, а ты вебсокеты на Lua не ковырял?

Snusmumriken
10.12.2017
12:36:53
Вебсокеты - в нгинксе? Или просто луасокеты? Луасокеты - да. Очень много. Каждый день ковыряю, это мой хлеб и частично винишко.

fgntfg
10.12.2017
12:37:17
Нет, реализацию websocket server на lua

Snusmumriken
10.12.2017
12:37:40
Не ковырял. Кинь линк на сурц.

fgntfg
10.12.2017
12:38:06
Их нет у меня.

Я ищу просто как с меньшим количеством костылей сделать асинхронный websocket чтоб слать на/с клиенты инфу

Пока побеждает python

Snusmumriken
10.12.2017
12:41:33
Ммм. Думаю он победит уже тем, что там уже всё есть. На луях придётся сначала запилить асинхронный сокет, а потом добавить туда "веб"-протокол. В общем-то, ничего сложного, работы на пол часа-час. С lanes будет ещё и бешено быстрым/труЪ-асинхронным.

Есть вот эта штука: https://github.com/lipp/lua-websockets Но там куча ненужных внешних зависимостей, ирл достаточно было бы сделать две зависимости на почти стандартные штуки: lanes и socket, собственно.

fgntfg
10.12.2017
12:43:29
Ну вот да. На самом деле взять коробку и развернуть её - не проблема. Проблемы начинаются когда коробку надо перепилить, поженить с базой и вот это вот всё.

Google
Snusmumriken
10.12.2017
12:48:42
Тогда сам смотри :P

Roman
10.12.2017
12:57:36
Тогда сам смотри :P
есть такая штука как luvit

Snusmumriken
10.12.2017
12:58:15
Ну дык. И она использует корутины от libuv, есть такое. Но тем не менее, смотри доки. Тут мало кто даст тебе более подробную информацию чем доки. Вот, кстати, и они: https://github.com/luvit/luv/blob/master/docs.md

Snusmumriken
10.12.2017
14:58:19
Это тебе не любой чат, тут есть я.

Azoyan
11.12.2017
18:27:57
всем привет! Задача такая: играет фоновая музыка, хотелось бы, чтобы звук подбора монетки гармонировал с фоновой мелодией, для этого я выписал хронометраж трека и какой звук воспроизвести на текущей секунде. Как это сделать? На С++ я бы сделал это так: https://ideone.com/qxSoM6

Vadim
12.12.2017
04:23:13
Я тебя наверное уже достаточно достал. Но если будет время попроси "Админа @pro.lua" меня разбанить. Буду хоть в режиме read only сидеть

Snusmumriken
12.12.2017
04:30:29
Лол, он ещё тут : ) Ну лады, пущай читает.

Tverd
14.12.2017
07:10:55
Всем привет! Кто-нить писал что нить на ecs? Как и где обрабатывали события от движка? Например клацнули мышью на спрайте или по сети пришел пакет?

Snusmumriken
14.12.2017
07:35:42
Там, обычно, хендлеры-колбеки. ЕСЦ - концепция, а не конкретная технология.

Elias
14.12.2017
08:06:56
И события можно обрабатывать в системах часто. Или в машинах состояний. Типа если у тебя выстрел стоит на клик, то на пушка подписывается на ивент и стреляет в GunIdleState. Тут ECS мало влияет на всё

Tverd
14.12.2017
08:22:51
Ага, в общем система отлавливает события, гуд, спасиб

нужно было развеять сомнения )))

Страница 211 из 307