类 MobSpawnEvent.SpawnPlacementCheck
java.lang.Object
net.minecraftforge.eventbus.api.Event
net.minecraftforge.event.entity.living.MobSpawnEvent.SpawnPlacementCheck
- 封闭类:
MobSpawnEvent
public static class MobSpawnEvent.SpawnPlacementCheck
extends net.minecraftforge.eventbus.api.Event
This event is fired when Spawn Placements (aka Spawn Rules) are checked, before a mob attempts to spawn.
Spawn Placement checks include light levels, slime chunks, grass blocks for animals, and others in the same vein.
The purpose of this event is to permit runtime changes to any or all spawn placement logic without having to wrap the placement for each entity.
Spawn Placement checks include light levels, slime chunks, grass blocks for animals, and others in the same vein.
The purpose of this event is to permit runtime changes to any or all spawn placement logic without having to wrap the placement for each entity.
This event has a result.
To change the result of this event, use Event.setResult(net.minecraftforge.eventbus.api.Event.Result)
. Results are interpreted in the following manner:
- Allow - The check will succeed, and the spawn process will continue.
- Default - The value of the vanilla check will be used to determine success.
- Deny - The check will fail, and the spawn process will abort.
This event is not fired for mob spawners which utilize
, as they do not check spawn placements.引用无效
CustomSpawnRules
- 另请参阅:
- API Note:
- If your modifications are for a single entity, and do not vary at runtime, use
SpawnPlacementRegisterEvent
.
-
嵌套类概要
从类继承的嵌套类/接口 net.minecraftforge.eventbus.api.Event
net.minecraftforge.eventbus.api.Event.HasResult, net.minecraftforge.eventbus.api.Event.Result
-
字段概要
字段修饰符和类型字段说明private final boolean
private final EntityType
<?> private final ServerLevelAccessor
private final BlockPos
private final RandomSource
private final EntitySpawnReason
-
构造器概要
构造器构造器说明SpawnPlacementCheck
(EntityType<?> entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random, boolean defaultResult) Internal. -
方法概要
修饰符和类型方法说明boolean
The default vanilla result is useful if an additional check wants to forceEvent.Result.ALLOW
only if the vanilla check would succeed.EntityType
<?> getLevel()
getPos()
In all vanilla cases, this is equal toLevelAccessor.getRandom()
.Retrieves the type of mob spawn that is happening.从类继承的方法 net.minecraftforge.eventbus.api.Event
getListenerList, getPhase, getResult, hasResult, isCancelable, isCanceled, setCanceled, setPhase, setResult
-
字段详细资料
-
entityType
-
level
-
spawnReason
-
pos
-
random
-
defaultResult
private final boolean defaultResult
-
-
构造器详细资料
-
SpawnPlacementCheck
@Internal public SpawnPlacementCheck(EntityType<?> entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random, boolean defaultResult) Internal.
-
-
方法详细资料
-
getEntityType
- 返回:
- The type of entity that checks are being performed for.
-
getLevel
- 返回:
- The level relating to the mob spawn action
-
getSpawnReason
Retrieves the type of mob spawn that is happening.- 返回:
- The mob spawn type.
- 另请参阅:
-
getPos
- 返回:
- The position where checks are being evaluated.
-
getRandom
In all vanilla cases, this is equal toLevelAccessor.getRandom()
.- 返回:
- The random source being used.
-
getDefaultResult
public boolean getDefaultResult()The default vanilla result is useful if an additional check wants to forceEvent.Result.ALLOW
only if the vanilla check would succeed.- 返回:
- The result of the vanilla spawn placement check.
-