3
0
Mirror von https://github.com/IntellectualSites/FastAsyncWorldEdit.git synchronisiert 2024-11-07 20:10:06 +01:00

Added a way to get the spawn position of a world

Dieser Commit ist enthalten in:
Matthew Miller 2018-12-21 17:05:30 +10:00
Ursprung c949b07df1
Commit ea30578781
6 geänderte Dateien mit 29 neuen und 2 gelöschten Zeilen

Datei anzeigen

@ -404,6 +404,11 @@ public class BukkitWorld extends AbstractWorld {
} }
} }
@Override
public BlockVector3 getSpawnPosition() {
return BukkitAdapter.asBlockVector(getWorld().getSpawnLocation());
}
@Override @Override
public void simulateBlockMine(BlockVector3 pt) { public void simulateBlockMine(BlockVector3 pt) {
getWorld().getBlockAt(pt.getBlockX(), pt.getBlockY(), pt.getBlockZ()).breakNaturally(); getWorld().getBlockAt(pt.getBlockX(), pt.getBlockY(), pt.getBlockZ()).breakNaturally();

Datei anzeigen

@ -125,6 +125,11 @@ public class NullWorld extends AbstractWorld {
public void setWeather(WeatherType weatherType, long duration) { public void setWeather(WeatherType weatherType, long duration) {
} }
@Override
public BlockVector3 getSpawnPosition() {
return BlockVector3.ZERO;
}
@Override @Override
public BlockState getBlock(BlockVector3 position) { public BlockState getBlock(BlockVector3 position) {
return BlockTypes.AIR.getDefaultState(); return BlockTypes.AIR.getDefaultState();

Datei anzeigen

@ -246,6 +246,13 @@ public interface World extends Extent {
*/ */
void setWeather(WeatherType weatherType, long duration); void setWeather(WeatherType weatherType, long duration);
/**
* Gets the spawn position of this world.
*
* @return The spawn position
*/
BlockVector3 getSpawnPosition();
@Override @Override
boolean equals(Object other); boolean equals(Object other);

Datei anzeigen

@ -54,8 +54,8 @@ final class ForgeAdapter {
return Vector3.at(vector.x, vector.y, vector.z); return Vector3.at(vector.x, vector.y, vector.z);
} }
public static Vector3 adapt(BlockPos pos) { public static BlockVector3 adapt(BlockPos pos) {
return Vector3.at(pos.getX(), pos.getY(), pos.getZ()); return BlockVector3.at(pos.getX(), pos.getY(), pos.getZ());
} }
public static Vec3d toVec3(BlockVector3 vector) { public static Vec3d toVec3(BlockVector3 vector) {

Datei anzeigen

@ -467,6 +467,11 @@ public class ForgeWorld extends AbstractWorld {
} }
} }
@Override
public BlockVector3 getSpawnPosition() {
return ForgeAdapter.adapt(getWorld().getSpawnPoint());
}
@Override @Override
public BlockState getBlock(BlockVector3 position) { public BlockState getBlock(BlockVector3 position) {
World world = getWorld(); World world = getWorld();

Datei anzeigen

@ -320,6 +320,11 @@ public abstract class SpongeWorld extends AbstractWorld {
getWorld().setWeather(Sponge.getRegistry().getType(Weather.class, weatherType.getId()).get(), duration); getWorld().setWeather(Sponge.getRegistry().getType(Weather.class, weatherType.getId()).get(), duration);
} }
@Override
public BlockVector3 getSpawnPosition() {
return SpongeAdapter.asBlockVector(getWorld().getSpawnLocation());
}
/** /**
* Thrown when the reference to the world is lost. * Thrown when the reference to the world is lost.
*/ */