Krab уже написал какой код используется на 1.12.2(то есть какой используется в PrimalCore, мне уже не надо декомпилировать. За совет спасибо, учту!), а сейчас мне нужен похожий код для 1.7.10Дам совет если кода не в общем доступе ищи у друзей или знакомых на гитлабе, либо декомпилируй, лично для этого я открываю мод через 7zip и открываю с помощью IDEA
PlayerInteractEvent.Action.LEFT_CLICK_BLOCK
public void onClick(PlayerInteractEvent e) {
ItemStack flint = e.entityPlayer.getHeldItem();
Block block = e.world.getBlock(e.x, e.y, e.z);
}
if(block == Blocks.stone)
{
EntityItem item = new EntityItem(e.world, e.x, e.y, e.z, YOUITEMSTACK);
e.world.spawnEntityInWorld(item);
}
@SubscribeEvent
public void onClick(PlayerInteractEvent e) {
ItemStack flint = e.entityPlayer.getHeldItem();
Block block = e.world.getBlock(e.x, e.y, e.z);
if(block == Blocks.stone)
{
EntityItem item = new EntityItem(e.world, e.x, e.y, e.z, flint);
e.world.spawnEntityInWorld(MyMod.SharpedFlint);
}
}
@SubscribeEvent
public void onClick(PlayerInteractEvent event5) {
ItemStack SharpedFlint = event5.entityPlayer.getHeldItem();
Block block = event5.world.getBlock(event5.x, event5.y, event5.z);
if(block == Blocks.stone)
{
EntityItem item = new EntityItem(event5.world, event5.x + 0.5, event5.y + 0.5, event5.z + 0.5, new ItemStack(MyMod.SharpedFlint));
event5.world.spawnEntityInWorld(item);
}
}
SharpedFlint
(а еще там может быть что угодно, даже null)Даже пкм вроде работает! Ууу..чем угодно по камню
Это я уже вчера выяснил, что этот код не делает то, что я задумал. Уже исправлено и доделано! Спасибо огромное Timaxa, что очень сильно помог мне с кодом!То-есть я могу теперь делать заточенный кремний клацая чем угодно по камню, даже пустой рукой? Допиши проверку, ты получил, но нигде не используешьSharpedFlint
(а еще там может быть что угодно, даже null)
@SubscribeEvent
public void onClick(PlayerInteractEvent event) {
if (event.action != PlayerInteractEvent.Action.LEFT_CLICK_BLOCK) return;
ItemStack heldItem = event.entityPlayer.getHeldItem();
if (heldItem == null) return;
Block block = event.world.getBlock(event.x, event.y, event.z);
if (block == Blocks.stone) {
if (heldItem.getItem() == Items.flint) {
EntityItem item = new EntityItem(event.world, event.x + 0.5, event.y + 0.5, event.z + 0.5, new ItemStack(MyMod.SharpedFlint));
if (!event.world.isRemote) {
event.world.spawnEntityInWorld(item);
event.world.spawnParticle("smoke", event.x + 0.5, event.y + 0.5, event.z + 0.5, 0.0D, 0.0D, 0.0D);
if (!event.entityPlayer.capabilities.isCreativeMode) {
--heldItem.stackSize;
if (heldItem.stackSize <= 0)
event.entityPlayer.inventory.setInventorySlotContents(event.entityPlayer.inventory.currentItem, null);
else
event.entityPlayer.inventory.setInventorySlotContents(event.entityPlayer.inventory.currentItem, heldItem);
}
}
}
}
}