Fix WordServer.canCreatureTypeSpawnHere not using Forge Events.
Followup of #2496
This commit is contained in:
parent
de1c270644
commit
17e960c158
2 changed files with 13 additions and 2 deletions
|
@ -60,7 +60,7 @@
|
||||||
this.field_72984_F.func_76319_b();
|
this.field_72984_F.func_76319_b();
|
||||||
this.func_147488_Z();
|
this.func_147488_Z();
|
||||||
}
|
}
|
||||||
@@ -217,6 +237,7 @@
|
@@ -217,12 +237,14 @@
|
||||||
public BiomeGenBase.SpawnListEntry func_175734_a(EnumCreatureType p_175734_1_, BlockPos p_175734_2_)
|
public BiomeGenBase.SpawnListEntry func_175734_a(EnumCreatureType p_175734_1_, BlockPos p_175734_2_)
|
||||||
{
|
{
|
||||||
List<BiomeGenBase.SpawnListEntry> list = this.func_72863_F().func_177458_a(p_175734_1_, p_175734_2_);
|
List<BiomeGenBase.SpawnListEntry> list = this.func_72863_F().func_177458_a(p_175734_1_, p_175734_2_);
|
||||||
|
@ -68,7 +68,14 @@
|
||||||
return list != null && !list.isEmpty() ? (BiomeGenBase.SpawnListEntry)WeightedRandom.func_76271_a(this.field_73012_v, list) : null;
|
return list != null && !list.isEmpty() ? (BiomeGenBase.SpawnListEntry)WeightedRandom.func_76271_a(this.field_73012_v, list) : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -268,10 +289,7 @@
|
public boolean func_175732_a(EnumCreatureType p_175732_1_, BiomeGenBase.SpawnListEntry p_175732_2_, BlockPos p_175732_3_)
|
||||||
|
{
|
||||||
|
List<BiomeGenBase.SpawnListEntry> list = this.func_72863_F().func_177458_a(p_175732_1_, p_175732_3_);
|
||||||
|
+ list = net.minecraftforge.event.ForgeEventFactory.getPotentialSpawns(this, p_175732_1_, p_175732_3_, list);
|
||||||
|
return list != null && !list.isEmpty() ? list.contains(p_175732_2_) : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -268,10 +290,7 @@
|
||||||
|
|
||||||
private void func_73051_P()
|
private void func_73051_P()
|
||||||
{
|
{
|
||||||
|
|
|
@ -87,6 +87,10 @@ public class WorldEvent extends Event
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called by WorldServer to gather a list of all possible entities that can spawn at the specified location.
|
* Called by WorldServer to gather a list of all possible entities that can spawn at the specified location.
|
||||||
|
* If an entry is added to the list, it needs to be a globally unique instance.
|
||||||
|
* The event is called in WorldServer#getSpawnListEntryForTypeAt(EnumCreatureType, BlockPos) as well as
|
||||||
|
* WorldServer#canCreatureTypeSpawnHere(EnumCreatureType creatureType, BiomeGenBase.SpawnListEntry spawnListEntry, BlockPos pos)
|
||||||
|
* where the latter checks for identity, meaning both events must add the same instance.
|
||||||
* Canceling the event will result in a empty list, meaning no entity will be spawned.
|
* Canceling the event will result in a empty list, meaning no entity will be spawned.
|
||||||
*/
|
*/
|
||||||
@Cancelable
|
@Cancelable
|
||||||
|
|
Loading…
Reference in a new issue