Tinkers Construct и стол для вырезки схем

Версия Minecraft
1.7.10
Доброй ночи, уважаемые формучани. Может кто-то сталкивался с этим модом и проблемой c этим столом.
Суть в том, что в этом столе: столе для вырезки схем, можно достаточно легко скрафтить, так сказать, бесплатно, любую схему.

Если у вас есть решение данной проблемы, то пожалуйста, подскажите в какую сторону рыть или смотреть, а то обыскал многое, нашел много чего, но исправления к удаче не привели(

 
3,005
192
592
Сорри, но фиксить проблему за бесплатно на этом форуме никто не будет.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Ищи класс контейнера этой гуишки. Там есть метод slotClick, в нем нужно еще раз делать то что и при нажатии на кнопку паттерна(то есть в слот результата запихивать другой паттерн относительно того что в первом слоте лежит(куда ты потом кладешь землю)).
 
Спасибо. В классе SlotPattern я сделал так:

Java:
    @Override
    public boolean isItemValid (ItemStack stack)
    {
        if(stack == null || !(stack.getItem() instanceof IPattern))
            return false;


        return !(stack.getItem() instanceof IPattern);
    }
}
Но, работает это очень и очень странно. Попробую решить дальше как-нибудь еще, а это оставлю тем, кому нужно будет
 

Icosider

Kotliner
Администратор
3,601
99
664
Эм, фигню ж написал. Просто: return stack.getItem() instanceof IPattern и всё, соответственно землю поставить не сможешь, а вот паттерн можно. И фикс должен быть с двух сторон, чтобы визуала не было, можно конечно и только на сервере оставить...
 
1,057
50
234
В контейнере поставь ограничение.
 
Последнее редактирование:
Исправил. Просто запретил класть другие предметы туда, на идею подтолкнул BlesseNtumble, спасибо.

В общем, так, класс SlotPattern:

Код:
    @Override
    public boolean isItemValid (ItemStack stack) {
        if (stack.getItem() == TinkerTools.blankPattern) {
            return true;
        } else { return false; }
    }

Класс: PatternShaperContainer

Код:
Заменяем
        this.addSlotToContainer(new Slot(shaper, 0, 48, 35));
На
        this.addSlotToContainer(new SlotPattern(shaper, 0, 48, 35));
 
Сверху