Interface ArchetypeVolume
-
- All Superinterfaces:
BiomeVolume
,BiomeVolume.Modifiable<ArchetypeVolume>
,BiomeVolume.Streamable<ArchetypeVolume>
,BlockEntityArchetypeVolume
,BlockEntityArchetypeVolume.Modifiable<ArchetypeVolume>
,BlockEntityArchetypeVolume.Streamable<ArchetypeVolume>
,BlockVolume
,BlockVolume.Modifiable<ArchetypeVolume>
,BlockVolume.Streamable<ArchetypeVolume>
,EntityArchetypeVolume
,EntityArchetypeVolume.Modifiable<ArchetypeVolume>
,EntityArchetypeVolume.Streamable<ArchetypeVolume>
,MutableVolume
,Volume
- All Known Subinterfaces:
Schematic
public interface ArchetypeVolume extends BlockVolume.Modifiable<ArchetypeVolume>, BlockEntityArchetypeVolume.Modifiable<ArchetypeVolume>, EntityArchetypeVolume.Modifiable<ArchetypeVolume>, BiomeVolume.Modifiable<ArchetypeVolume>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.spongepowered.api.world.volume.biome.BiomeVolume
BiomeVolume.Immutable, BiomeVolume.Modifiable<M extends BiomeVolume.Modifiable<M>>, BiomeVolume.Mutable, BiomeVolume.Streamable<B extends BiomeVolume.Streamable<B>>, BiomeVolume.Unmodifiable<U extends BiomeVolume.Unmodifiable<U>>
-
Nested classes/interfaces inherited from interface org.spongepowered.api.world.volume.archetype.block.entity.BlockEntityArchetypeVolume
BlockEntityArchetypeVolume.Immutable, BlockEntityArchetypeVolume.Modifiable<M extends BlockEntityArchetypeVolume.Modifiable<M>>, BlockEntityArchetypeVolume.Mutable, BlockEntityArchetypeVolume.Streamable<B extends BlockEntityArchetypeVolume.Streamable<B>>, BlockEntityArchetypeVolume.Unmodifiable<U extends BlockEntityArchetypeVolume.Unmodifiable<U>>
-
Nested classes/interfaces inherited from interface org.spongepowered.api.world.volume.block.BlockVolume
BlockVolume.Immutable, BlockVolume.Modifiable<M extends BlockVolume.Modifiable<M>>, BlockVolume.Mutable, BlockVolume.Streamable<B extends BlockVolume.Streamable<B>>, BlockVolume.Unmodifiable<U extends BlockVolume.Unmodifiable<U>>
-
Nested classes/interfaces inherited from interface org.spongepowered.api.world.volume.archetype.entity.EntityArchetypeVolume
EntityArchetypeVolume.Immutable, EntityArchetypeVolume.Modifiable<M extends EntityArchetypeVolume.Modifiable<M>>, EntityArchetypeVolume.Mutable, EntityArchetypeVolume.Streamable<B extends EntityArchetypeVolume.Streamable<B>>, EntityArchetypeVolume.Unmodifiable<U extends EntityArchetypeVolume.Unmodifiable<U>>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default void
applyToWorld(ServerWorld target, Vector3i placement, java.util.function.Supplier<SpawnType> spawnContext)
default Vector3d
logicalCenter()
Gets the logical center of a volume, considering the decimal coordinates, the block's center location would have an offset of0.5
ArchetypeVolume
transform(Transformation transformation)
-
Methods inherited from interface org.spongepowered.api.world.volume.biome.BiomeVolume
biome, biome
-
Methods inherited from interface org.spongepowered.api.world.volume.biome.BiomeVolume.Modifiable
setBiome, setBiome
-
Methods inherited from interface org.spongepowered.api.world.volume.biome.BiomeVolume.Streamable
biomeStream
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.block.entity.BlockEntityArchetypeVolume
blockEntityArchetype, blockEntityArchetype, blockEntityArchetypes
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.block.entity.BlockEntityArchetypeVolume.Modifiable
addBlockEntity, addBlockEntity, addBlockEntity, addBlockEntity, removeBlockEntity, removeBlockEntity
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.block.entity.BlockEntityArchetypeVolume.Streamable
blockEntityArchetypeStream
-
Methods inherited from interface org.spongepowered.api.world.volume.block.BlockVolume
block, block, fluid, fluid, highestPositionAt, highestYAt, highestYAt
-
Methods inherited from interface org.spongepowered.api.world.volume.block.BlockVolume.Modifiable
removeBlock, removeBlock, setBlock, setBlock
-
Methods inherited from interface org.spongepowered.api.world.volume.block.BlockVolume.Streamable
blockStateStream
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.entity.EntityArchetypeVolume
entityArchetypes, entityArchetypes, entityArchetypesByPosition
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.entity.EntityArchetypeVolume.Modifiable
addEntity, addEntity
-
Methods inherited from interface org.spongepowered.api.world.volume.archetype.entity.EntityArchetypeVolume.Streamable
entitiesByPosition, entityArchetypeStream
-
-
-
-
Method Detail
-
transform
ArchetypeVolume transform(Transformation transformation)
-
logicalCenter
default Vector3d logicalCenter()
Gets the logical center of a volume, considering the decimal coordinates, the block's center location would have an offset of0.5
- Returns:
- The logical center of the volume
-
applyToWorld
default void applyToWorld(ServerWorld target, Vector3i placement, java.util.function.Supplier<SpawnType> spawnContext)
Attempts to apply all of the contents of thisvolume
onto the targetworld
with a relativeplacement
. This default implementation can be used as a guide for utilizingVolumeStreams
and their companion types.- Parameters:
target
- The target worldplacement
- The target origin, where the diff of relative position compared to this volume's min position as the offsetspawnContext
- The context value used for processing spawn entities.
-
-