work on inventory stuff

This commit is contained in:
dfsek
2020-12-31 20:37:14 -07:00
parent 166c0f7dfb
commit 356771bcea
16 changed files with 210 additions and 23 deletions

View File

@@ -2,12 +2,15 @@ package com.dfsek.terra.api.platform.block;
import com.dfsek.terra.api.math.vector.Location;
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.block.state.BlockState;
public interface Block extends Handle {
void setBlockData(BlockData data, boolean physics);
BlockData getBlockData();
BlockState getState();
Block getRelative(BlockFace face);
Block getRelative(BlockFace face, int len);

View File

@@ -1,4 +1,19 @@
package com.dfsek.terra.api.platform.block.state;
public interface BlockState {
import com.dfsek.terra.api.platform.Handle;
import com.dfsek.terra.api.platform.block.Block;
import com.dfsek.terra.api.platform.block.BlockData;
public interface BlockState extends Handle {
Block getBlock();
int getX();
int getY();
int getZ();
BlockData getBlockData();
boolean update(boolean applyPhysics);
}

View File

@@ -0,0 +1,6 @@
package com.dfsek.terra.api.platform.block.state;
import com.dfsek.terra.api.platform.inventory.BlockInventoryHolder;
public interface Container extends BlockState, BlockInventoryHolder {
}

View File

@@ -0,0 +1,7 @@
package com.dfsek.terra.api.platform.inventory;
import com.dfsek.terra.api.platform.block.Block;
public interface BlockInventoryHolder extends InventoryHolder {
Block getBlock();
}

View File

@@ -0,0 +1,7 @@
package com.dfsek.terra.api.platform.inventory;
import com.dfsek.terra.api.platform.Handle;
public interface InventoryHolder extends Handle {
Inventory getInventory();
}

View File

@@ -2,9 +2,10 @@ package com.dfsek.terra.api.platform.inventory.item;
import com.dfsek.terra.api.platform.Handle;
public interface Damageable extends Handle, Cloneable {
Damageable clone();
public interface Damageable extends Handle {
int getDamage();
void setDamage(int damage);
boolean hasDamage();
}