[Инвент] Как подоить корову в стакан?

Версия Minecraft
1.7.10

Led

291
3
0
Прошу прощение за большое количество вопросов.
Но сейчас у меня возник очень проблемный вопрос.
Как подоить ванильную корову в мой стакан?
(Заменить мой стакан на стакан с молоком, при взаимодействии с ванильной коровой).
Я полагаю, это инвент. Но я не смог понять, какой.
Заранее благодарен.

Есть подозрение, что это вот это:
Код:
EntityInteractEvent(extends PlayerEvent, LivingEvent, EntityEvent)
 
Решение
Код:
@SubscribeEvent
public void entityInteractEvent(EntityInteractEvent event) {
	ItemStack current_item = event.entityPlayer.getCurrentEquippedItem();
	if (current_item != null && current_item.getItem() == Items.stick) {
		--current_item.stackSize;
		if (current_item.stackSize <= 0)
			event.entityPlayer.inventory.setInventorySlotContents(event.entityPlayer.inventory.currentItem, null);
		event.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.milk_bucket));
		event.setCanceled(true);
	}
}
Items.stick - это твой пустой стакан, если этот предмет будет с метадатой (не на повреждение), то ещё дополнительное условие на метадату "&& current_item.getItemDamage() == 0"
new...
Код:
@SubscribeEvent
public void entityInteractEvent(EntityInteractEvent event) {
	ItemStack current_item = event.entityPlayer.getCurrentEquippedItem();
	if (current_item != null && current_item.getItem() == Items.stick) {
		--current_item.stackSize;
		if (current_item.stackSize <= 0)
			event.entityPlayer.inventory.setInventorySlotContents(event.entityPlayer.inventory.currentItem, null);
		event.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.milk_bucket));
		event.setCanceled(true);
	}
}
Items.stick - это твой пустой стакан, если этот предмет будет с метадатой (не на повреждение), то ещё дополнительное условие на метадату "&& current_item.getItemDamage() == 0"
new ItemStack(Items.milk_bucket) - твой заполненный стакан молоком.
 
Led, пожалуйста.
RonyC, я думаю что - да. Использовать к примеру IExtendedEntityProperties хранить в нём значение, а с помощью EntityInteractEvent отменять (event.setCanceled(true);), если было много раз подоена корова или другие действия. (На счёт ножниц я не знаю будут работать или нет.)
 
Led написал(а):
Как подоить ванильную корову в мой стакан?
...
А если я хочу доить игроков?
DHZgolT.png
 
Назад
Сверху