mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-17 22:31:52 +00:00
BlockData -> BlockState
This commit is contained in:
@@ -3,7 +3,7 @@ package com.dfsek.terra;
|
||||
import com.dfsek.tectonic.loading.TypeRegistry;
|
||||
import com.dfsek.terra.api.TerraPlugin;
|
||||
import com.dfsek.terra.api.addon.TerraAddon;
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.PluginConfig;
|
||||
import com.dfsek.terra.api.event.EventManager;
|
||||
@@ -136,7 +136,7 @@ public class StandalonePlugin implements TerraPlugin {
|
||||
@Override
|
||||
public void register(TypeRegistry registry) {
|
||||
registry
|
||||
.registerLoader(BlockData.class, (t, o, l) -> worldHandle.createBlockData((String) o))
|
||||
.registerLoader(BlockState.class, (t, o, l) -> worldHandle.createBlockData((String) o))
|
||||
.registerLoader(Biome.class, (t, o, l) -> new RawBiome(o.toString()));
|
||||
new GenericLoaders(this).register(registry);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.dfsek.terra.platform;
|
||||
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.block.state.BlockEntity;
|
||||
import com.dfsek.terra.api.vector.Vector3;
|
||||
|
||||
@@ -26,7 +26,7 @@ public class DirectBlockEntity implements BlockEntity {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockData getBlockData() {
|
||||
public BlockState getBlockData() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.dfsek.terra.platform;
|
||||
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.world.World;
|
||||
import com.dfsek.terra.api.world.generator.ChunkData;
|
||||
import net.querz.mca.Chunk;
|
||||
@@ -31,19 +31,19 @@ public class DirectChunkData implements ChunkData, com.dfsek.terra.api.world.Chu
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlock(int x, int y, int z, @NotNull BlockData blockData) {
|
||||
delegate.setBlockStateAt(x, y, z, ((Data) blockData).getHandle(), false);
|
||||
public void setBlock(int x, int y, int z, @NotNull BlockState blockState) {
|
||||
delegate.setBlockStateAt(x, y, z, ((State) blockState).getHandle(), false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull BlockData getBlock(int x, int y, int z) {
|
||||
public @NotNull BlockState getBlock(int x, int y, int z) {
|
||||
CompoundTag tag = delegate.getBlockStateAt(x, y, z);
|
||||
if(tag == null) return new Data("minecraft:air");
|
||||
return new Data(tag.getString("Name"));
|
||||
if(tag == null) return new State("minecraft:air");
|
||||
return new State(tag.getString("Name"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlock(int x, int y, int z, BlockData data, boolean physics) {
|
||||
public void setBlock(int x, int y, int z, BlockState data, boolean physics) {
|
||||
setBlock(x, y, z, data);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.dfsek.terra.platform;
|
||||
|
||||
import com.dfsek.terra.DirectUtils;
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.block.state.BlockEntity;
|
||||
import com.dfsek.terra.api.entity.Entity;
|
||||
import com.dfsek.terra.api.entity.EntityType;
|
||||
@@ -57,12 +57,12 @@ public class DirectWorld implements World {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockData getBlockData(int x, int y, int z) {
|
||||
public BlockState getBlockData(int x, int y, int z) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlockData(int x, int y, int z, BlockData data, boolean physics) {
|
||||
public void setBlockData(int x, int y, int z, BlockState data, boolean physics) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package com.dfsek.terra.platform;
|
||||
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.entity.EntityType;
|
||||
import com.dfsek.terra.api.handle.WorldHandle;
|
||||
|
||||
public class RawWorldHandle implements WorldHandle {
|
||||
|
||||
@Override
|
||||
public BlockData createBlockData(String data) {
|
||||
return new Data(data);
|
||||
public BlockState createBlockData(String data) {
|
||||
return new State(data);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+11
-11
@@ -1,14 +1,14 @@
|
||||
package com.dfsek.terra.platform;
|
||||
|
||||
import com.dfsek.terra.api.block.BlockData;
|
||||
import com.dfsek.terra.api.block.BlockState;
|
||||
import com.dfsek.terra.api.block.BlockType;
|
||||
import net.querz.nbt.tag.CompoundTag;
|
||||
|
||||
public class Data implements BlockData, BlockType {
|
||||
public class State implements BlockState, BlockType {
|
||||
private final CompoundTag data;
|
||||
private final String noProp;
|
||||
|
||||
public Data(String data) {
|
||||
public State(String data) {
|
||||
this.data = new CompoundTag();
|
||||
if(data.contains("[")) {
|
||||
noProp = data.substring(0, data.indexOf('[')); // Strip properties
|
||||
@@ -26,7 +26,7 @@ public class Data implements BlockData, BlockType {
|
||||
this.data.putString("Name", noProp);
|
||||
}
|
||||
|
||||
public Data(CompoundTag tag) {
|
||||
public State(CompoundTag tag) {
|
||||
if(tag == null) {
|
||||
this.data = new CompoundTag();
|
||||
data.putString("Name", "minecraft:air");
|
||||
@@ -43,8 +43,8 @@ public class Data implements BlockData, BlockType {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean matches(BlockData other) {
|
||||
return ((Data) other).noProp.equals(noProp);
|
||||
public boolean matches(BlockState other) {
|
||||
return ((State) other).noProp.equals(noProp);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -59,9 +59,9 @@ public class Data implements BlockData, BlockType {
|
||||
|
||||
|
||||
@Override
|
||||
public BlockData clone() {
|
||||
public BlockState clone() {
|
||||
try {
|
||||
return (BlockData) super.clone();
|
||||
return (BlockState) super.clone();
|
||||
} catch(CloneNotSupportedException e) {
|
||||
throw new Error(e);
|
||||
}
|
||||
@@ -84,12 +84,12 @@ public class Data implements BlockData, BlockType {
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
if(!(obj instanceof Data)) return false;
|
||||
return ((Data) obj).noProp.equals(noProp);
|
||||
if(!(obj instanceof State)) return false;
|
||||
return ((State) obj).noProp.equals(noProp);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockData getDefaultData() {
|
||||
public BlockState getDefaultData() {
|
||||
return this;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user