Изменение позиции слотов в инвентаре

timaxa007 написал(а):
Ilyha_Stach написал(а):
И что ты хочешь? Тебе подсказали что делать или ты хочешь что-бы за тебя всё сделали?
[merge_posts_bbcode]Добавлено: 01.02.2015 11:15:42[/merge_posts_bbcode]

Код:
//этот слот для результата крафта
        this.addSlotToContainer(new SlotCrafting(p_i1819_1_.player, this.craftMatrix, this.craftResult, 0, 144, 36));
//Это крафт стлоты
        for (i = 0; i < 2; ++i)
        {
            for (j = 0; j < 2; ++j)
            {
                this.addSlotToContainer(new Slot(this.craftMatrix, j + i * 2, 88 + j * 18, 26 + i * 18));
            }
        }
//Это слоты для брони
        for (i = 0; i < 4; ++i)
        {
            final int k = i;
            this.addSlotToContainer(new Slot(p_i1819_1_, p_i1819_1_.getSizeInventory() - 1 - i, 8, 8 + i * 18)
            {
                private static final String __OBFID = "CL_00001755";
                /**
                 * Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1
                 * in the case of armor slots)
                 */
                public int getSlotStackLimit()
                {
                    return 1;
                }
                /**
                 * Check if the stack is a valid item for this slot. Always true beside for the armor slots.
                 */
                public boolean isItemValid(ItemStack p_75214_1_)
                {
                    if (p_75214_1_ == null) return false;
                    return p_75214_1_.getItem().isValidArmor(p_75214_1_, k, thePlayer);
                }
                /**
                 * Returns the icon index on items.png that is used as background image of the slot.
                 */
                @SideOnly(Side.CLIENT)
                public IIcon getBackgroundIconIndex()
                {
                    return ItemArmor.func_94602_b(k);
                }
            });
        }
//Это слоты инвентаря
        for (i = 0; i < 3; ++i)
        {
            for (j = 0; j < 9; ++j)
            {
                this.addSlotToContainer(new Slot(p_i1819_1_, j + (i + 1) * 9, 8 + j * 18, 84 + i * 18));
            }
        }
//слоты хотбара
        for (i = 0; i < 9; ++i)
        {
            this.addSlotToContainer(new Slot(p_i1819_1_, i, 8 + i * 18, 142));
        }

Ilyha_Stach написал(а):
Координаты я там поменял первым делом, но у меня вылезла проблема с дропом предмета(когда кликаю в первые 2 слота, которые не входили в "рамки" моего нового инвентаря)
Код:
this.addSlotToContainer(new Slot(par1InventoryPlayer, var4, 8 + var4 * 18-40, 140));

Код, который я изменил.
Изменилось положение самого контейнера, как я понял, но изменение позиции для клика скорее всего должно меняться в другом месте, т.к. на старом месте ничего не дропается, даже если промахнуться по контейнерам(вправо, где была позиция до изменения)
 
1. Тут специалистов по Gui и по Container нет (и если есть, то маловероятно, что они помогут в
подобных вопросах
).
Ilyha_Stach написал(а):
Код, который я изменил.
2. Код... Ты его видишь, но мы его не видим. (И если-бы мы видели, то мало вероятно-бы, что кто-то бы ответил.)
 
timaxa007 написал(а):
1. Тут специалистов по Gui и по Container нет (и если есть, то маловероятно, что они помогут в
подобных вопросах
).
Ilyha_Stach написал(а):
Код, который я изменил.
2. Код... Ты его видишь, но мы его не видим. (И если-бы мы видели, то мало вероятно-бы, что кто-то бы ответил.)
ContainerPlayer.java
Slot.java
 
Назад
Сверху