Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-18 12:30:06 +01:00
[Bleeding] Add many missing SpawnReasons.
Adds BUKKIT-5370, BUKKIT-5377, BUKKIT-5378, BUKKIT-5379, BUKKIT-5380, BUKKIT-5381, BUKKIT-5382. Adds reasons for zombies infecting villagers and zombie villagers being cured. Readds reason for a skeleton being spawned as a spider jockey. Adds reason to distinguish ocelot babies from the parent they spawned with. Adds reasons for chunk generation causing the ender dragon, villagers, and witches to spawn. And finally, adds a reason for spawning a chicken mount for a baby zombie.
Dieser Commit ist enthalten in:
Ursprung
b6831792ec
Commit
729df1a734
@ -22,7 +22,7 @@ public class BiomeTheEndDecorator extends BiomeDecorator {
|
|||||||
EntityEnderDragon entityenderdragon = new EntityEnderDragon(this.a);
|
EntityEnderDragon entityenderdragon = new EntityEnderDragon(this.a);
|
||||||
|
|
||||||
entityenderdragon.setPositionRotation(0.0D, 128.0D, 0.0D, this.b.nextFloat() * 360.0F, 0.0F);
|
entityenderdragon.setPositionRotation(0.0D, 128.0D, 0.0D, this.b.nextFloat() * 360.0F, 0.0F);
|
||||||
this.a.addEntity(entityenderdragon);
|
this.a.addEntity(entityenderdragon, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.CHUNK_GEN); // CraftBukkit - add SpawnReason
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,8 @@ import java.util.Random;
|
|||||||
|
|
||||||
import net.minecraft.util.org.apache.commons.lang3.tuple.ImmutablePair;
|
import net.minecraft.util.org.apache.commons.lang3.tuple.ImmutablePair;
|
||||||
|
|
||||||
|
import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason; // CraftBukkit
|
||||||
|
|
||||||
public class BlockMonsterEggs extends Block {
|
public class BlockMonsterEggs extends Block {
|
||||||
|
|
||||||
public static final String[] a = new String[] { "stone", "cobble", "brick", "mossybrick", "crackedbrick", "chiseledbrick"};
|
public static final String[] a = new String[] { "stone", "cobble", "brick", "mossybrick", "crackedbrick", "chiseledbrick"};
|
||||||
@ -19,7 +21,7 @@ public class BlockMonsterEggs extends Block {
|
|||||||
EntitySilverfish entitysilverfish = new EntitySilverfish(world);
|
EntitySilverfish entitysilverfish = new EntitySilverfish(world);
|
||||||
|
|
||||||
entitysilverfish.setPositionRotation((double) i + 0.5D, (double) j, (double) k + 0.5D, 0.0F, 0.0F);
|
entitysilverfish.setPositionRotation((double) i + 0.5D, (double) j, (double) k + 0.5D, 0.0F, 0.0F);
|
||||||
world.addEntity(entitysilverfish);
|
world.addEntity(entitysilverfish, SpawnReason.SILVERFISH_BLOCK); // CraftBukkit - add SpawnReason
|
||||||
entitysilverfish.s();
|
entitysilverfish.s();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -108,7 +110,7 @@ public class BlockMonsterEggs extends Block {
|
|||||||
EntitySilverfish entitysilverfish = new EntitySilverfish(world);
|
EntitySilverfish entitysilverfish = new EntitySilverfish(world);
|
||||||
|
|
||||||
entitysilverfish.setPositionRotation((double) i + 0.5D, (double) j, (double) k + 0.5D, 0.0F, 0.0F);
|
entitysilverfish.setPositionRotation((double) i + 0.5D, (double) j, (double) k + 0.5D, 0.0F, 0.0F);
|
||||||
world.addEntity(entitysilverfish);
|
world.addEntity(entitysilverfish, SpawnReason.SILVERFISH_BLOCK); // CraftBukkit - add SpawnReason
|
||||||
entitysilverfish.s();
|
entitysilverfish.s();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -221,7 +221,7 @@ public class EntityOcelot extends EntityTameableAnimal {
|
|||||||
|
|
||||||
entityocelot.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
entityocelot.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
||||||
entityocelot.setAge(-24000);
|
entityocelot.setAge(-24000);
|
||||||
this.world.addEntity(entityocelot);
|
this.world.addEntity(entityocelot, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.OCELOT_BABY); // CraftBukkit - add SpawnReason
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,7 +156,7 @@ public class EntitySpider extends EntityMonster {
|
|||||||
|
|
||||||
entityskeleton.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
entityskeleton.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
||||||
entityskeleton.a((GroupDataEntity) null);
|
entityskeleton.a((GroupDataEntity) null);
|
||||||
this.world.addEntity(entityskeleton);
|
this.world.addEntity(entityskeleton, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.JOCKEY); // CraftBukkit - add SpawnReason
|
||||||
entityskeleton.mount(this);
|
entityskeleton.mount(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@ import java.util.UUID;
|
|||||||
|
|
||||||
//CraftBukkit start
|
//CraftBukkit start
|
||||||
import org.bukkit.craftbukkit.entity.CraftLivingEntity;
|
import org.bukkit.craftbukkit.entity.CraftLivingEntity;
|
||||||
|
import org.bukkit.event.entity.CreatureSpawnEvent;
|
||||||
import org.bukkit.event.entity.EntityCombustByEntityEvent;
|
import org.bukkit.event.entity.EntityCombustByEntityEvent;
|
||||||
import org.bukkit.event.entity.EntityCombustEvent;
|
import org.bukkit.event.entity.EntityCombustEvent;
|
||||||
//CraftBukkit end
|
//CraftBukkit end
|
||||||
@ -186,7 +187,7 @@ public class EntityZombie extends EntityMonster {
|
|||||||
if (World.a((IBlockAccess) this.world, i1, j1 - 1, k1) && this.world.getLightLevel(i1, j1, k1) < 10) {
|
if (World.a((IBlockAccess) this.world, i1, j1 - 1, k1) && this.world.getLightLevel(i1, j1, k1) < 10) {
|
||||||
entityzombie.setPosition((double) i1, (double) j1, (double) k1);
|
entityzombie.setPosition((double) i1, (double) j1, (double) k1);
|
||||||
if (this.world.b(entityzombie.boundingBox) && this.world.getCubes(entityzombie, entityzombie.boundingBox).isEmpty() && !this.world.containsLiquid(entityzombie.boundingBox)) {
|
if (this.world.b(entityzombie.boundingBox) && this.world.getCubes(entityzombie, entityzombie.boundingBox).isEmpty() && !this.world.containsLiquid(entityzombie.boundingBox)) {
|
||||||
this.world.addEntity(entityzombie, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.REINFORCEMENTS); // CraftBukkit
|
this.world.addEntity(entityzombie, CreatureSpawnEvent.SpawnReason.REINFORCEMENTS); // CraftBukkit
|
||||||
entityzombie.setGoalTarget(entityliving);
|
entityzombie.setGoalTarget(entityliving);
|
||||||
entityzombie.a((GroupDataEntity) null);
|
entityzombie.a((GroupDataEntity) null);
|
||||||
this.getAttributeInstance(bp).a(new AttributeModifier("Zombie reinforcement caller charge", -0.05000000074505806D, 0));
|
this.getAttributeInstance(bp).a(new AttributeModifier("Zombie reinforcement caller charge", -0.05000000074505806D, 0));
|
||||||
@ -341,7 +342,7 @@ public class EntityZombie extends EntityMonster {
|
|||||||
entityzombie.setBaby(true);
|
entityzombie.setBaby(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.world.addEntity(entityzombie);
|
this.world.addEntity(entityzombie, CreatureSpawnEvent.SpawnReason.INFECTION); // CraftBukkit - add SpawnReason
|
||||||
this.world.a((EntityHuman) null, 1016, (int) this.locX, (int) this.locY, (int) this.locZ, 0);
|
this.world.a((EntityHuman) null, 1016, (int) this.locX, (int) this.locY, (int) this.locZ, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -379,7 +380,7 @@ public class EntityZombie extends EntityMonster {
|
|||||||
entitychicken1.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
entitychicken1.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, 0.0F);
|
||||||
entitychicken1.a((GroupDataEntity) null);
|
entitychicken1.a((GroupDataEntity) null);
|
||||||
entitychicken1.i(true);
|
entitychicken1.i(true);
|
||||||
this.world.addEntity(entitychicken1);
|
this.world.addEntity(entitychicken1, CreatureSpawnEvent.SpawnReason.MOUNT);
|
||||||
this.mount(entitychicken1);
|
this.mount(entitychicken1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -462,7 +463,7 @@ public class EntityZombie extends EntityMonster {
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.world.kill(this);
|
this.world.kill(this);
|
||||||
this.world.addEntity(entityvillager);
|
this.world.addEntity(entityvillager, CreatureSpawnEvent.SpawnReason.CURED); // CraftBukkit - add SpawnReason
|
||||||
entityvillager.addEffect(new MobEffect(MobEffectList.CONFUSION.id, 200, 0));
|
entityvillager.addEffect(new MobEffect(MobEffectList.CONFUSION.id, 200, 0));
|
||||||
this.world.a((EntityHuman) null, 1017, (int) this.locX, (int) this.locY, (int) this.locZ, 0);
|
this.world.a((EntityHuman) null, 1017, (int) this.locX, (int) this.locY, (int) this.locZ, 0);
|
||||||
}
|
}
|
||||||
|
@ -107,7 +107,7 @@ abstract class WorldGenVillagePiece extends StructurePiece {
|
|||||||
EntityVillager entityvillager = new EntityVillager(world, this.b(i1));
|
EntityVillager entityvillager = new EntityVillager(world, this.b(i1));
|
||||||
|
|
||||||
entityvillager.setPositionRotation((double) j1 + 0.5D, (double) k1, (double) l1 + 0.5D, 0.0F, 0.0F);
|
entityvillager.setPositionRotation((double) j1 + 0.5D, (double) k1, (double) l1 + 0.5D, 0.0F, 0.0F);
|
||||||
world.addEntity(entityvillager);
|
world.addEntity(entityvillager, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.CHUNK_GEN); // CraftBukkit - add SpawnReason
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -77,7 +77,7 @@ public class WorldGenWitchHut extends WorldGenScatteredPiece {
|
|||||||
|
|
||||||
entitywitch.setPositionRotation((double) i1 + 0.5D, (double) j1, (double) k1 + 0.5D, 0.0F, 0.0F);
|
entitywitch.setPositionRotation((double) i1 + 0.5D, (double) j1, (double) k1 + 0.5D, 0.0F, 0.0F);
|
||||||
entitywitch.a((GroupDataEntity) null);
|
entitywitch.a((GroupDataEntity) null);
|
||||||
world.addEntity(entitywitch);
|
world.addEntity(entitywitch, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.CHUNK_GEN); // CraftBukkit - add SpawnReason
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren