Перейти к содержимому

Поиск по сайту

Результаты поиска по тегам 'Table'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Блоги

  • Робот Байт
  • Fingercomp's Playground
  • 1Ridav' - блог
  • Totoro Cookies
  • Блог cyber01
  • IncluderWorld
  • KelLiN' - блог
  • Крутой блог
  • eutomatic blog
  • Programist135 Soft
  • Сайт в сети OpenNet
  • PieLand
  • Очумелые ручки
  • Блог недоблоггера
  • В мире Майнкрафт
  • LaineBlog
  • Квантовый блог
  • Блог qwertyMAN'а
  • some blog name
  • Дача Игоря
  • Путешествия Xytabich'а
  • Рецепты программирования
  • Шкодим по крупному
  • 123
  • mineOS и её удивительный мир
  • Поляна говнокода Bumer 32

Форумы

  • Программирование
    • Программы
    • База знаний
    • Разработчикам
    • Вопросы
  • Игровой раздел
    • Игровые серверы
    • Моды и плагины
    • Жалобы
    • Ивенты и конкурсы
    • Файлы
  • Общение
    • Задать вопрос
    • Обратная связь
    • Беседка
    • Шкатулка
  • Технический раздел
    • Корзина

Группы продуктов

Нет результатов для отображения.


Искать результаты в...

Искать результаты, которые...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


AIM


MSN


ICQ


Yahoo


Jabber


ВКонтакте


Город


Интересы

Найдено 5 результатов

  1. Добрый день, Я пишу выдавальщик предметов с огромного кол-ва слотов, сейчас программа работает медлеено и я ищу способы для ускорения работы с транспозерами и таблицами сейчас у меня 4 транспозера с четырьмя сундуками на каждом. В каждом сундуке по 117 слотов и в общем 1872 ячейки в системе. при запуске программы, после выполнения поиска и после выдачи предмета выполняется этот код: function chest.getStorageItems() local tpTable = {} local thisItems = {} local allItems = {} for k in component.list("transposer") do table.insert(tpTable,k) end for index, tp in pairs(tpTable) do for i=0,5,1 do if (component.invoke(tp, "getInventoryName", i)) and (i~=5) then thisItems = component.invoke(tp, "getAllStacks", i).getAll() for o,thisItm in pairs(thisItems) do if (thisItm.name~="minecraft:air") then local this = false for g,allItm in pairs(allItems) do if ((this==false) and (allItm.name == thisItm.name) and (allItm.label == thisItm.label)) then this = true allItm.count = allItm.count+thisItm.size end end if this == false then table.insert(allItems, {name = thisItm.name, count = thisItm.size, label = thisItm.label}) end end end end end end return allItems end Сверху идёт провод, а выдача происходит на север. Каждый раз проверять сундуки надо потому что поставка предметов идёт не через систему и во время работы программы нужный предмет может появиться. Это обновление сейчас занимает 2-3 секунды, можно ли как-то ускорить этот процесс?
  2. Мне нужно присвоить переменной grow значение метадаты блока из таблицы geolyzer.analyze(), но не знаю как это сделать. То что должно содержатся в grow выделено зелёным прямоугольником на изображении. Немного переборщил с размером изображения.
  3. Мне нужен самый ресурсосберегающий (в плане процессорного времени и объема энергонезависимой памяти) способ сохранения одномерного целочисленного массива в файл и его последующее чтение для воссоздания исходного массива.
  4. В общем идея такая: игрок посылает запрос на крафт определенного предмета, робот ищет ингредиенты в сундуках и крафтит запрошенный предмет. Давно бьюсь над способом размещения метаданных предмета в таблице, но что-то голова не варит. Есть код, который принимает системное имя предмета и если рецепт есть в списке - находит в сундуках ингредиенты и крафтит по рецепту. http://pastebin.com/E5yZVpUA Надо, чтобы в рецептах можно было указывать метаданные предмета, например вот так: REPICES = { --рецепт1 [{"NAME", "META"}] = { {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"} }, --рецепт2 [{"NAME", "META"}] = { {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"} } } 1-9 {"NAME", "META"} это список ингредиентов. [{"NAME", "META"}] - результат крафта
  5. Для работы крутой черепашки мне потребовалось быстро сериализировать и передавать по сети большие объемы информации. 3д массивы, таблицы, и прочее прочее. Внутренние методы СС Textutils.serialize не подходили, из за медленного оператора ".." , который добавлял в итоговую строку символы. Поискав готовые решения на сайте lua-users, я нашел подходящий код для сохранения таблиц в файл, и переписал его под работу со строкой. http://pastebin.com/AYB7u25g Код: Userdata, Функции и метотаблицы не сохраняются Сохраняются только простые значения как таблицы, строки, числа а так же true\false Замечу, что в моем коде для сбора строки используется таблица и метод table.concat(), который увеличивает скорость работы в разы. Код можно использовать как в CС так и в OС. Он добавляет новые методы в глобальную таблицу table и вызывается так: Результаты для двухмерного массива с 1 000 000 полей и замеры времени выполнения: //CC textutils serialize(): 45.94 unserialize(): 1.73 //OC serialization serialization.serialize(): 40.00 serialization.unserialize(): 0.87 //Krutoy table.tostring: table.toString(): 1.80 table.fromString(): 1.19 Пруф для меньшего количества полей: http://ideone.com/ICpS0L
×
×
  • Создать...