Hello, World! 🎄
Это как?
Михаил
?
ну проверь
Hello, World! 🎄
Тут дело в том, чтобы пользователь понимал, что за тип у переменной должен быть
Михаил
это не полноценное указание типа а всего лишь подсказка
Михаил
кто кодит на луа вы мне щас нужны нужно мнение о поведении require
Михаил
я хочу сделать чтобы require искал файлы луашные относительно того файла, который запускается
Михаил
а не относительно CWD
Михаил
кому-то вообще может понадобиться чтобы эти файлы искались относительно cwd? в каких случях?
UtoECat
кому-то вообще может понадобиться чтобы эти файлы искались относительно cwd? в каких случях?
Мне кажется потому что так тупо предсказуемее. Потому что cwd один и задаётся независимо от того, какой файл первым был запущен. А в случае поиска относительно первого запущенного файла начинаются проблемы. Как минимум может быть несколько таких файлов. А если уходить в дебри, когда require ищет относительно пути requireищегося файла - помимо кейса с require в loadstring - там своя куча проблем и неудобств открывается. И попытки разрешить эти проблемы увеличили бы реализацию require в разы, как и сложность системы модулей в луа в целом.
UtoECat
я хочу сделать чтобы require искал файлы луашные относительно того файла, который запускается
Относительно пути инетрпретатора иногда делают. Когда у тебя луа интегрирована в приложение, тогда это может и работает ещё нормально. На винде это пара правок в package.path/package.cpath
Михаил
Мне кажется потому что так тупо предсказуемее. Потому что cwd один и задаётся независимо от того, какой файл первым был запущен. А в случае поиска относительно первого запущенного файла начинаются проблемы. Как минимум может быть несколько таких файлов. А если уходить в дебри, когда require ищет относительно пути requireищегося файла - помимо кейса с require в loadstring - там своя куча проблем и неудобств открывается. И попытки разрешить эти проблемы увеличили бы реализацию require в разы, как и сложность системы модулей в луа в целом.
я не про первый зареквайренный файл. или даже первый выполненный в общем случае. нет. вот ты запускаешь допустим lua ../proj/file1.lua что я хочу сделать - определить абсолютный путь до этого файла и его добавить в package.path, заменив им предыдущий отн. cwd таким образом, даже если cwd будет меняться, путь будет находиться именно относительно того файла который первый аргумент.
Михаил
первый аргумент никогда не меняется
Михаил
это самое логичное что можно сделать - интерпретатор где угодно, а либы ты всегда ложишь относительно того самого главного файла file1.lua
Михаил
так же компилируется си и работают #include "path"
Михаил
почему в луа квд и привязка єтой квд к папке в которой проект - мне неясно
Михаил
реально, мне надо будет много поменять в этих require import
Михаил
дааааа все пути прямо нужно будет менять
Михаил
я понял, спс за ответ
Михаил
который будет искать так же как #include "file" в Си?
Михаил
и можно будет парсить компайл-тайм информацию :3
Михаил
типы, приоритеты операторов и прочее
Михаил
это реально путь к хорошему языку
UtoECat
тогда как тебе идея: в этот именно яп который я создал - добавить ключевое слово import
🤷‍♂ не знаю Разве с этим lsp и без import не справляется?
Михаил
🤷‍♂ не знаю Разве с этим lsp и без import не справляется?
всяким lsp нужно юзать бинарь луы с нужными package.path чтобы справляться. import как в жаве дает гораздо более предсказуемые выхлопы lsp
Luсky
подскажите плиз, где и что можно почитать про байтоёбство в lua?
Luсky
Задача - сделать быстрый рендер панорам. Там самая дорогая операция - копирование пикселя в текстуру.
Luсky
Вот я и подумал, что сильно дешевле будет залить в сырые байты и ими вертеть.
Luсky
А потом один раз копировать.
Михаил
есть отдельно luaffi если не луажит
0xSU
Дамы и господа, сел такой писать интерпретатор Brainfuck и "случайно" написал что-то вроде транспайлера basic-подобного языка в lua :) https://github.com/uriid1/easy-basic
Domka
Привет
Hello, World! 🎄
Привет
Привет
Hello, World! 🎄
Как ты?
Domka
Замечательно, жду когда экзамены сдам по работе
Domka
Поступил в уник на профиль инфа и вычислительная техника, вот жду пока группа пополниться
Lucky
Лишнее
Всеволод
Лишнее
Я думал это снуз канал для мемов
Lucky
Я думал это снуз канал для мемов
Там мемный яп. Как раз для текстовых адвенчур.
Snusmumriken
Ну вообще по факту
Hello, World! 🎄
Симуляции, графическая библиотека, библиотека для UI под Love2d, язык программирования., всё это я давно и недавно делал - Не это не надо. Скрипт который я написал месяц назад для авто фарминга поинтов для игры внутри телеграмма - Да.
Hello, World! 🎄
Просто сравните количество звездочек под репозиториями
Hello, World! 🎄
Зато у меня на github количество подписчиков за последний месяц в два раза прибавилось, до этого 3-4 подписчика были за несколько лет
Domka
Привет привет
Domka
Как у вас дела?
Михаил
Михаил
как-то так
Domka
У меня тут делема, никогда такой штукой не занимался, однако говнокодить сильно не хочу
Domka
Короче делаю платформер как показательную штукенцию и хочу ее прям вылезанную образцово сделать
Domka
Хочу сделать реализацию " ? блоков " чтобы они подпрыгивали когда по ним бьют кулаком снизу
Михаил
3д движок точно не хочешь?
Domka
Нет
Михаил
че так
Domka
А обязательно 3д?
Михаил
нууууууууууууууууу мне вот не хватает объема
Domka
Ну представь что это 3д, с одним слоем, и с одной точки поворота камеры
Domka
Смотри осторожнее, а то юристы нинтендо прибегут)))))
Да и хер с ними :^) Там на тике уже есть куча подделок
Domka
Где я собсна и делаю
Domka
Короче есть идеи как заставить тайл подпрыгивать?
Domka
У меня просто идея добавить пару таблиц с таймером, и при соприкосновении игрока с определенным блоком запуститься таймер и будет сменять тайлы по анимации: Но это нужно чекать чо у игрока над головой в какие то моменты, а так же смотреть как они еще себя вести будут, тоесть для других объектов на карте тоже проверки добавлять
Domka
Ивент запуска анимации на коллизию от марио снизу
Походу я уже ответил на свой вопрос сам
Domka
Я прост хуй знает, может можно было как то еще проще сделать💀
Snusmumriken
Я кароч накатал вот такую фигню, и могу пихать функцию с таймерами и выполнениями действий по ним туда например
Snusmumriken
Корутины корутинчики. Подозрительно тормознутые, хмм. Хотя print'ы много времени сжирают.
Domka
Пепес async await многозадачность добавляют. . . Еще ваще в эти дебри не лез ни разу
Snusmumriken
Легчайшая ерунда когда разберёшься.
Snusmumriken
Возможность НЕ городить переусложнённые конечные автоматы, и писать асинхронный код как будто он обычный и синхронный.