SPIGOT-2784: Fix Withers not being built

This commit is contained in:
md_5 2016-11-18 09:20:14 +11:00
parent b2f82f0f7f
commit a0269d8e72

View File

@ -173,14 +173,14 @@
+
+ // Special case juke boxes as they update their tile entity. Copied from ItemRecord.
+ // PAIL: checkme on updates.
+ if (this.getItem() instanceof ItemRecord) {
+ if (this.item instanceof ItemRecord) {
+ ((BlockJukeBox) Blocks.JUKEBOX).a(world, blockposition, world.getType(blockposition), this);
+ world.a((EntityHuman) null, 1010, blockposition, Item.getId(this.item));
+ this.subtract(1);
+ entityhuman.b(StatisticList.Z);
+ }
+
+ if (this.getItem() == Items.SKULL) { // Special case skulls to allow wither spawns to be cancelled
+ if (this.item == Items.SKULL) { // Special case skulls to allow wither spawns to be cancelled
+ BlockPosition bp = blockposition;
+ if (!world.getType(blockposition).getBlock().a(world, blockposition)) {
+ if (!world.getType(blockposition).getMaterial().isBuildable()) {
@ -198,8 +198,8 @@
+ }
+
+ // SPIGOT-1288 - play sound stripped from ItemBlock
+ if (this.getItem() instanceof ItemBlock) {
+ SoundEffectType soundeffecttype = ((ItemBlock) this.getItem()).getBlock().getStepSound();
+ if (this.item instanceof ItemBlock) {
+ SoundEffectType soundeffecttype = ((ItemBlock) this.item).getBlock().getStepSound();
+ world.a(entityhuman, blockposition, soundeffecttype.e(), SoundCategory.BLOCKS, (soundeffecttype.a() + 1.0F) / 2.0F, soundeffecttype.b() * 0.8F);
+ }
+