Teen_Romance
Пользователи-
Публикации
72 -
Зарегистрирован
-
Посещение
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Teen_Romance
-
пиши requestCrafting() и передавай туда таблицу с данными о нужном тебе предмете id,dmg и что то там еще
-
А вот второй метод request возвращает объект у которого есть метод isDone который говорит готов ли предмет и в моем случае он говорит, что не готово и причину(нет ресурсов), но каких именно, не говорит
-
getItemStack возвращает таблу с инфой о предмете, но без инфы о том какие ресурсы нужны для крафта
-
Доброго времени суток. У AE2 есть метод/ы для для крафта вещей, типrequestCrafting()Засим вопрос, есть ли какой то метод/ способ, как можно достать/узнать рецепт крафта? То-есть когда руками запрашиваешь крафт через ae2, в терминале тебе показывает какие ресы нужны и их кол-во. Вот эту инфу как то программно достать можно или нужно ручками все писать? Спасибо UPD Вот нашел метод getCraftables(), но он возвращает только список предметов которые можно сделать, без информации какие предметы требуются для создания и их колличество
-
@Fingercomp Спасибо
-
@Fingercomp проблема в том, что каждый раз когда я буду запускать программу, я буду записывать только 1 таблицу в файл. Как мне все их поместить в 1 таблицу в файл в который я записываю ?
-
@Asior Я загружаю таблицу 1 раз за 1 цикл программы и работаю с ней. Насколько я понял, ваш метод подходит если мне нужно несколько разных таблиц в 1 программе? Или в моем случае это тоже будет выгодно? Если не сложно, можно какой то простенький пример вашего метода?
-
Что такое "*a" и как оно рассчитывается? И подскажите пожалуйста, как мне из 20 таблиц определить нужную мне? Я писал выше, что насколько я понял, мне нужно знать промежуток байтов в которых записана таблица? Или как?
-
@Fingercomp В таблице может быть больше или меньше таблиц, в зависимости от создаваемого предмета. У меня вроде получилось записать таблицу в файл: Но теперь не знаю как сделать ее обратно таблицей при считывании из файла. + Сразу возникла проблема. У меня в файле будет допустим 20+ таблиц. И когда я захочу обратится к конкретной, нужной мне таблице, как это сделать? В file:write() нужно указывать количество байт для считывания. Как мне узнать в каком промежутке байт находится нужная мне таблица?
-
Мне нужно, чтобы моя программа записывала результат своей работы(таблицу) в отдельный файл. И уже основная программа брала нужную таблицу из этого файла и работала с ней. Как это лучше реализовать? file:write() принимает только string, к тому же он, насколько я понял, переписывает файл всегда заново.
-
table_1 = { length = 88 } table_2 = table_1 table_2[length] = 99 print( table_2["length"] ) -- выводится значение 99 print( table_1["length"] ) -- выводится значение 99 Можно ли избежать это как-то? Или нужно каждый раз заново инициализировать изначальную таблицу?
-
Минуты 2 сидел вчитывался и не мог понять фишку, а потом каааак понял 🤣 На самом деле гениально, просто звучит сложно. Если элемента по такому ключу в таблице не будет то выражение просто будет равно nil ) Сложно как то еще применить но я подумаю) Спасибо большое еще раз
-
А где она сравнивает id с таблицей? "if stack and pe4[stack.id]" Разве для того чтобы ветвь if выполнилась выражения должны быть равны между собой? Разве не просто проверяется их пустота? Тип если stack не пустой и pe4[stack.id] не пуста тогда что то делается. Правая часть условия всегда будет истинна, но где они сравниваются? И вы имеет ввиду вообще без цикла или только с 1 фором? По ячейкам сундука ведь мне все равно нужно проходить.
-
Я не понимаю в чем фишка этого варианта. Грубо говоря stack это таблица с кучей инфы от проверки жидкость ли это до dmg. А что у меня получится если я напишу pe4[stack.id] - я не понимаю. Типо ключем таблицы будет допустим "minecraft:cobblestone" и что дальше? И что вообще делает if stack and pe4[stack.id] then. Если в таблице stack(то есть в ячейке сундука) что то есть, и в таблице с ключем stack.id(имеется в виду что ключем будет тоже "miecraft:cobblestone" как я понял) что то есть, тогда что то там. Вообщем как то сложновато (
-
Проснулся и после прочтения всего что вы тут писали понял: ошибка из за того что первым фором (for i=1,10) я прохожу по таблице с рецептом (таблица pe4 ) в которой всего 2 ключа(или 2 таблицы внутри, не знаю как правильно сказать). А вторым фором(for j=1,10) я прохожу по ячейкам кристального сундука, для сравнения рецепта (pe4) и наличия ресурсов в сундуке. А из за того что первый for 10 раз идет по таблице в которой всего 2 элемента я получал ошибку(Так глупо что аж ... ). Я просто давно не работал с OC и сейчас маленькими кусочками вспоминаю что и как работает. На скринах это просто куски программы ничего по сути пока что не делающей. 2 цикла for я использую чтобы первый проходил по таблице с рецептом, а второй по ячейкам сундука(Ведь нужные ресурсы могут быть не только в первых 2,3,4,10 слотах). 10 я в цикле указал просто так, для теста, я понимаю что в сундуке около 100 ячеек. Не знаю насколько это рационально использовать 2 фора, но как я говорил выше, я просто пробую что и как работает) Возможно с этим у меня в будущем возникнут проблемы, но я пока что просто проверяю что и как работает. Попробую пока что использовать для проверки ресурсов в сундуке и сравнения с рецептом, то что у меня на скринах. А вообще я хочу написать программу для автокарфата вещей на варпе. Типо на компе выбираешь дробитель из IC2, тебе показывает какие и сколько ресурсов нужно, ты кладешь их в сундук и для тебя делается дробитель. Хочется еще сделать граф оформление(чтобы по экрану можно было клацать) поэтому у меня в скором времени появятся вопросы с event и GUI А то на вики чет вообще ничего не понятно. Спасибо всем кто помогал
-
Ни у кого большое не осталось идей как пофиксить это? Проблема где то в логике, но я не могу понять где (
-
@Asior crystal - это имя компонента Кристального сундука. Больше 200 кб скрин я почему то не могу загрузить, поэтому вот скрин установки.
-
@ECS Вот код : Вот ошибка: Насколько я понимаю, указывает ошибку на 10 строку, а значит if stack then все равно не работает
-
OpenComputers-MC1.7.10-1.6.2.12-universal - так называется файл в папке mods. вот так выглядит ошибка
-
Проблема именно в том что программа не может индекс дать пустому слоту в 7 строке
-
@eu_tomat Возможно я не так понял, но я сделал вот так: И теперь ошибка в том что не может дать индекс полю если пустой слот и не выполняет вообще ничего: ну и собственно если поменять y=cry.getStackInSlot(j).id то получаю ту же ошибку
-
Хотел сделать так, чтобы если ячейка сундука пустая, то проверка не выполнялась, но все равно ругается почему то программа Типа если y(nil) тогда не выполнять следующий иф. Как пофиксить?
-
Спасибо большое
-
Киньте ссылок где можно почитать про графику в OC. Типо всякие drawBox и так далее. И про ивенты. А то я честно не знаю даже как загуглить. По ивентам нашел вот это, но хотелось бы как то более в развернутом виде почитать. Спасибо заранее.
