mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-24 13:31:33 +00:00
start working on error handling stuff
This commit is contained in:
@@ -28,7 +28,7 @@ public class BukkitAddon implements BaseAddon {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Version getVersion() {
|
||||
public Version version() {
|
||||
return VERSION;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -26,7 +26,7 @@ public class CloudCommandSender implements CommandSender {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Maybe<Entity> getEntity() {
|
||||
public Maybe<Entity> entity() {
|
||||
if(delegate instanceof org.bukkit.entity.Entity entity) {
|
||||
return Maybe.just(BukkitAdapter.adapt(entity));
|
||||
}
|
||||
@@ -34,7 +34,7 @@ public class CloudCommandSender implements CommandSender {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Maybe<Player> getPlayer() {
|
||||
public Maybe<Player> player() {
|
||||
if(delegate instanceof org.bukkit.entity.Player player) {
|
||||
return Maybe.just(BukkitAdapter.adapt(player));
|
||||
}
|
||||
|
||||
+11
-4
@@ -17,6 +17,9 @@
|
||||
|
||||
package com.dfsek.terra.bukkit.handles;
|
||||
|
||||
import com.dfsek.terra.api.error.Invalid;
|
||||
import com.dfsek.terra.api.error.InvalidBlockStateError;
|
||||
import com.dfsek.terra.api.util.generic.data.types.Either;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -39,10 +42,14 @@ public class BukkitWorldHandle implements WorldHandle {
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized @NotNull BlockState createBlockState(@NotNull String data) {
|
||||
org.bukkit.block.data.BlockData bukkitData = Bukkit.createBlockData(
|
||||
data); // somehow bukkit managed to make this not thread safe! :)
|
||||
return BukkitBlockState.newInstance(bukkitData);
|
||||
public synchronized @NotNull Either<Invalid, BlockState> createBlockState(@NotNull String data) {
|
||||
try {
|
||||
org.bukkit.block.data.BlockData bukkitData = Bukkit.createBlockData(
|
||||
data); // somehow bukkit managed to make this not thread safe! :)
|
||||
return Either.right(BukkitBlockState.newInstance(bukkitData));
|
||||
} catch(Exception e) {
|
||||
return new InvalidBlockStateError(e).left();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+3
-3
@@ -39,17 +39,17 @@ public class BukkitBlockTypeAndItem implements BlockType, Item {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockState getDefaultState() {
|
||||
public BlockState defaultState() {
|
||||
return BukkitAdapter.adapt(delegate.createBlockData());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSolid() {
|
||||
public boolean solid() {
|
||||
return delegate.isOccluding();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isWater() {
|
||||
public boolean water() {
|
||||
return delegate == Material.WATER;
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -61,17 +61,17 @@ public class BukkitBlockState implements BlockState {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockType getBlockType() {
|
||||
public BlockType blockType() {
|
||||
return BukkitAdapter.adapt(delegate.getMaterial());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAsString(boolean properties) {
|
||||
public String asString(boolean properties) {
|
||||
return delegate.getAsString(!properties);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAir() {
|
||||
public boolean air() {
|
||||
return delegate.getMaterial().isAir();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user