SergOmarov
-
Публикации
386 -
Зарегистрирован
-
Посещение
-
Победитель дней
1
Сообщения, опубликованные пользователем SergOmarov
-
-
Это проблема нубов, которые как всегда не разберутся в геймплее и свалят.Как часто ты видишь таких нубов? Я редко, хотя последнее время играл на подобной сборке.
-
По моему, это лишь усложнит геймплей в сторону грега.Упростит. Благодаря этому игроки будут знать, где что искать.
-
Это наш кастомный мод, разработанный НЕО по спец. заказу КАА можно сделать так, чтобы определенные руды соответствовали определенным биомам? Как изумрудная.
-
И еще небольшой вопрос: какой файл работает при работе в самой OpenOS, в плане при перемещении по папкам и т.д.?Меняет расположение. Хранятся они физически в виде обычных файлов, в обычных папках, в <world>/opencomputers/<disk address>/.
-
кто не хочет видеть магику, не мешали ноды и другоеА ты их и не увидишь, если специальные очки не натянешь...
Пожелание по части клиентской сборки:
добавьте какую-то модификацию, вносящую худ прочности брони и текущего инструмента. -
Перед написанием кода было бы полезно потестить функции либы в интерпритаторе:
lua>=forms.run --function:<Address>
А если заюзать мою help-функцию, и написать описание:
lua>=forms.run --function(form:Form):void
Ведь это легче, чем читать доки!
-
Вот смотрите: например, библиотека forms содержит много конструкторов, методов, и если не часто ею пользуешься - что-то забываешь аргументы, и приходится лезть на форум. Вот для таких библиотек эту штуку я и написал.
P.S. qwertyMAN, в твоем примере описании функции в виде комментария, который из интерпритатора невиден
-
Есть у нас какая-то либа, мы хотим, чтобы из интерпритатора lua можно было увидеть описание функции.
Можно воспользоваться моей библиотекой, состоящей из единственной функции.
Пример использования:
local somelib={} somelib.somefunction=function(a) print(a) end local help=require("help.lua") return help("<имя файла, содержащего таблицу описаний>",somelib)--Возвращается либа с описаниямиА в файл описаний:
return {somefunction="Это описание somefunction"}При тесте:
lua>somelib=require("somelib")
lua>=somelib.somefunction--Это описание somefunction
lua>somelib.somefunction("Test")--Test
Исходники:
-
3
-
-
что-то до боли знакомое и существующее...Я правильно понял, он чей-то код взял? Но тогда это, наверное, открытый проект, и из него можно брать...
-
Ыер... Топикстартер, ты разве нуб? В программировании, имею в виду. Если нет, то кыш из этого раздела, пиши нормальную фигню вместо ЭТОГО.Ой, всеК слову... Слушатели событий и таймеры позволяют творить чудеса без излишнего геммороя с coroutine.Постараюсь высыпаться)
-
Могу даже поделиться.Буду рад, не ожидал от тебя после тех ссор)
Зачем выкладывать 5 строчек на форум? Да еще и бесполезныхКакой-то человек в чате просил такое, вот я и выложил, да и это раздел новичков сюда можно помещать мелкие программки
Этот код не работает. Функция io.read() без аргументов возвращает строку. Нужно использовать io.read("*n"), тогда будет возвращаться число.Пардон, забыл про tonumber, и аргументы...
local timeStop=tonumber(io.read())
О нужности и важности этого творения я уж промолчу, выше уже говорили об этом.Варка пива, там таймер нужен.
тот же edit с подсветкой синтаксиса начинаешь писать 5 строк на форумЛучше выложить хокку, которое хоть чем-то полезно, чем edit с одной лишь подсветкой, когда все кодят в нормальных внешних редакторах.
-
Отсчитывает время, не знаю, что еще написать... В секундах.
local timeStop=io.read() local count=io.read() for i=1,count do os.sleep(timeStop) --дальше ваш код, что нужно сделать, редстоун подать, пиво снять... end
-
Вынес функционал фотошопа в либу?
-
да, лучше так.
-
Т.е. надо надо контролировать, является ли запрашиваемая библиотека действительно библиотекой.Я понимаю, что мой код не очень читаем, но можно было поинтересоваться/, как это реализовано у меня: итерируются имена файлов из /lib/, добавляются в массив, потом эти вхождения ищутся в тексте программы(в вашем случае проверять при каждом обращении к свойствам глобала, но лучше просто засунуть в pcall)
через fs.list() получить список файлов в папке с либами и через цикл создавать метаметоды, как указал swg2you выше - это будет куда удобнее.Не дочитал) Но pcall все равно в приоритете.
-
Обновил среду и инсталлер, теперь есть поддержка инструкции with(some)do someMethod() end --some.someMethod()
-
Переделал под вид api(Нео, я тебе отправил письмо с вопросом по этой проблеме, но не дождался): http://pastebin.com/cbED8cbK
-
И зачем было переводить текст лицензии (название)Вдруг кто-то англ не знает)
LicenzexD, исправил)
-
Кстати,а если я напишу c=require('component') --код идёт дальше То среда дополнительно сделает component = require('component') Так ведь?В последней версии впилил проверку, есть ли требование этой библиотеки, написанное самим пользователем. Доделаю еще пару фич и залью.
Отлично! Дело за малым. Накидать код который будет цеплять на _G метаметод подгрузки запрашиваемой библиотеки, и запихнуть его в автозагрузку. И с require() можно прощаться.Прочитал и посты ниже, очень интересная идея, но с одним недостатком: имхо это не очень эффективно, ведь обращение к local-переменной осуществляется быстрее и было бы лучше создать такую переменную на стадии инициализации(как в моей среде), а не юзать поле таблицы _G
Теперь неиспользуемые модули будут выгружаться автоматически, когда сборщик мусора до них доберётся.Это хорошая идея, ты не против, если я ее добавлю в патчер-установщик?
Нельзя было сделать работоспособную ссылку, чтобы из браузер просто нажать и посмотреть код?Пожелания учитываются)
-
Это ты еще не понял: если выполняемая программа не имеет вхождений "lol", то она и не будет загружена. А если ты ее явно загрузишь, то она займет столько же памяти, сколько бы заняла при загрузки ее средой.
-
Но они подгружали совсем немного библиотек. А теперь представь если это немного превратиться в много?Грузиться будут только те, что используются в программе, вызываемой через среде.
-
А по твоему package.loaded - это переменная которая хранится не в оперативной памяти, а в облаке из радужных какашек и пони, в котором бесконечное количество прострнанства? Если ты загружаешь все либы, они по твоему не займут никакого места? Фигушки. Они хоть и будут сидеть в package.loaded, но оперативку выжирать все равно будут.Софист ты, Леша) Хоть ты сам напишешь require, хоть среда за тебя это сделат, какая разница? Но во втором случае тебе не нужно думать о require)
-
Пардон, package.loaded, перепутал немного)
-
Если и делаешь, то добавь выключатель, не каждым глазам удобно смотреть на код типаМожно и писать local, он его просто проигнорит.
А require по твоему маг, он загружает либы, не в оперативную память, а в магическое хранилище розовых пони какающих конфетамиИменно так и происходит: package.preload - это хранилище)
Что это даёт, и какая польза от этой программы?Меньше и легче код писать.

Рубикон 1.0 (Операция "Торнадо")
в Корзина
Опубликовано:
Если игрок не знает публичные моды - это его проблема, пусть идет, читает вики.
Но если моды написаны для конкретного сервера, они задевают важные аспекты игры, нет нормальной документации, то разумеется появятся "нубы", которым неинтересно будет тут играть.
Суть далеко не в донате и школо-серверах.
P.S. И не со школо-админским сервером я IT сравнивал=)