Версия Minecraft
1.12.2
683
3
21
Мне нужно делать проверку на какой-то предмет если он в руках открывать дверь а если отсутствует не открывать дверь
 
Решение
А подумать, поискать? Да и в чём собственно вопрос, как сделать проверку что в руке ключ, или как открыть саму дверь? Если ключ, то всё просто.
Java:
public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
    ItemStack item = playerIn.getHeldItem(hand);
    if (item == null || item.isEmpty()) return false;
    if (item.getItem() != ТвОй_КлЮч) return false;
    //Двери открываются...
    return true;
}
С дверью всё зависит от токо чья она, если твоя, то прописываешь в этом же методе.
Если ванильная, то в своём ключе, пиши метод Item#onItemUse(), но теперь проверяй, что блок по которому кликнул - это ванильная дверь и...
3,005
192
592
В пкм двери проверяй что за предмет в руке и тогда открывай, если не тот предмет - то ничего.
 
917
22
332
А подумать, поискать? Да и в чём собственно вопрос, как сделать проверку что в руке ключ, или как открыть саму дверь? Если ключ, то всё просто.
Java:
public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
    ItemStack item = playerIn.getHeldItem(hand);
    if (item == null || item.isEmpty()) return false;
    if (item.getItem() != ТвОй_КлЮч) return false;
    //Двери открываются...
    return true;
}
С дверью всё зависит от токо чья она, если твоя, то прописываешь в этом же методе.
Если ванильная, то в своём ключе, пиши метод Item#onItemUse(), но теперь проверяй, что блок по которому кликнул - это ванильная дверь и дальше открывай её.(то-бишь устанавливай блок "открытой" двери.)
 
5,018
47
783
Сверху