- 65
- 1
- 2
Item:
@EventHandler
public void onBlockBreak(BlockBreakEvent event) {
Block block = event.getBlock();
Player player = event.getPlayer();
if (block.getType() == Material.SPAWNER && isGoldenPickaxe(player)) {
ItemStack spawnerItem = getSpawnerItem(block);
if (spawnerItem != null) {
event.setDropItems(false); // Prevent the spawner from dropping normally
player.getInventory().addItem(spawnerItem); // Add spawner to player's inventory
block.setType(Material.AIR); // Remove the spawner block
}
}
}
@EventHandler
public void BlockPlace(BlockPlaceEvent event) {
Block block = event.getBlock();
if (block.getType() == Material.SPAWNER) {
ItemStack spawnerItem = getSpawnerItem(block);
event.getItemInHand().setItemMeta(spawnerItem.getItemMeta());
System.out.println(spawnerItem);
}
}
public ItemStack getSpawnerItem(Block spawnerBlock) {
if (spawnerBlock.getType() != Material.SPAWNER) return null;
CreatureSpawner spawnerBlockState = (CreatureSpawner) spawnerBlock.getState();
System.out.println(spawnerBlockState);
ItemStack spawnerItem = new ItemStack(Material.SPAWNER);
BlockStateMeta spawnerMeta = (BlockStateMeta) spawnerItem.getItemMeta();
CreatureSpawner spawnerState = (CreatureSpawner) spawnerMeta.getBlockState();
spawnerState.setSpawnedType(spawnerBlockState.getSpawnedType());
spawnerMeta.setBlockState(spawnerState);
spawnerItem.setItemMeta(spawnerMeta);
System.out.println(spawnerItem);
System.out.println(spawnerMeta);
System.out.println(spawnerState);
System.out.println(spawnerBlockState.getSpawnedType());
return spawnerItem;
}
private boolean isGoldenPickaxe(Player player) {
ItemStack itemInHand = player.getInventory().getItemInMainHand();
return itemInHand != null && itemInHand.getType() == Material.GOLDEN_PICKAXE;
}
[16:53:12 INFO]: ItemStack{SPAWNER x 1, TILE_ENTITY_META:{meta-type=TILE_ENTITY, internal=H4sIAAAAAAAAAHWQu47CMBBFLwYisMRLQM93UPIoQQhW2hJNwhAsggOOEQlfuJ+1dlxQ4WZkzfWZM5aARH+R5cl1ra2y1Q+lAr2N0oc7vfSKM6rwJzDaULllMnFVxxQXiCS6IUSWOhDqhMFNaU4Mne08zujNaKLxhjuulr56NJUfdHMmIOvrMn9qi5bAeM+PpzJ82rk+mz3plDEM/OmHf8vjY+EfsuliUCN2uWUnR1kh3aiGRBRW+uoW/bJKL9aHvWEVDINPmOt82uEPJsA/BaHQ3iwBAAA=, blockMaterial=SPAWNER}}
[16:53:12 INFO]: TILE_ENTITY_META:{meta-type=TILE_ENTITY, internal=H4sIAAAAAAAAAHWPwW7CMBBEB4dGxFILCHrvd/QI9EgVUSSOaJNsU6vBoY5Rk3xhP6t2LMSJvax2NfM0IwGJp1VV599v2irb7amUSD7O9Ks3ZGkCoQpMT0pzbujTvmYV9QyB+ZbadyaTdYNPcYNY4HGrdPByRR3+Iox6uAmY5xvmVGfHxgvZOE3nNW63fgvIAbEjXTLGHkrtDRq9CCx2/HNRhovUPdgE5exqXNcXbTFOMB3OtLbsIlLVSEcfRYgPrMov6w+JONS+09OFeQhVlsA/gCFlriwBAAA=, blockMaterial=SPAWNER}
[16:53:12 INFO]: org.bukkit.craftbukkit.v1_16_R3.block.CraftCreatureSpawner@5023fd70
[16:53:12 INFO]: BLAZE
[16:53:17 INFO]: org.bukkit.craftbukkit.v1_16_R3.block.CraftCreatureSpawner@127662b9
[16:53:17 INFO]: ItemStack{SPAWNER x 1, TILE_ENTITY_META:{meta-type=TILE_ENTITY, internal=H4sIAAAAAAAAAHWPTQ8BMRCGX8WGJr6Cu9/h6ONIBImjDMZqrC7dil2/0M/Sbg9Oepk0884zz0hAoj1J0uN1rq2yxZZigdZC6c2dXnrGCRX4CPQWlC+ZzKEoY4ozRBLNECJLDQh1QuumNB8Nne34rmJUUXnDPVdzXz2Y8h+4OhKQ5XeaPrVFTaC/5sdTGT6tXJ/NmnTM6Ab68Ee/pYd95gfZNNEpEavUslOjJJNuVUUiCgf9MYt2rOKL9VHvVwS/YBO2Opt6uH8AfAEBLYL9KAEAAA==, blockMaterial=SPAWNER}}
[16:53:17 INFO]: TILE_ENTITY_META:{meta-type=TILE_ENTITY, internal=H4sIAAAAAAAAAG2PwW7CMBBEByeNiqXQIsq939FjW45UKFTiiBZYUquJkzpGTfhCPgs7FsqFvax2NfM0IwGJyXtR7X8X2irbfVMuMV7X9K8/ydIjhDogLZXmvaGjfatVDoHpktovJrPrepfiBolAulQ6OLmgDpcIozPcBMh8gJTVbtt4IRun6bzG7dZvAdkjMtI5I/ZQagdo9Cowy/jvpAwfVu7BJiifb8aP6qQt4jGe+nNVWXYRqWiko48iJBtW+Y/1h0QSSt9t6aI8hCIvwBXOFZM+KAEAAA==, blockMaterial=SPAWNER}
[16:53:17 INFO]: org.bukkit.craftbukkit.v1_16_R3.block.CraftCreatureSpawner@5023fd70
[16:53:17 INFO]: PIG
[16:53:17 INFO]: ItemStack{SPAWNER x 1, TILE_ENTITY_META:{meta-type=TILE_ENTITY, internal=H4sIAAAAAAAAAHWPTQ8BMRCGX8WGJr6Cu9/h6ONIBImjDMZqrC7dil2/0M/Sbg9Oepk0884zz0hAoj1J0uN1rq2yxZZigdZC6c2dXnrGCRX4CPQWlC+ZzKEoY4ozRBLNECJLDQh1QuumNB8Nne34rmJUUXnDPVdzXz2Y8h+4OhKQ5XeaPrVFTaC/5sdTGT6tXJ/NmnTM6Ab68Ee/pYd95gfZNNEpEavUslOjJJNuVUUiCgf9MYt2rOKL9VHvVwS/YBO2Opt6uH8AfAEBLYL9KAEAAA==, blockMaterial=SPAWNER}}
Когда я ломаю спавнер там написано что он с блейзом но когда ставлю там снова свиня