28 virtual bool isAlive()
const = 0;
32 virtual ::Block
const& unwrapBlock(uint
const& block)
const = 0;
34 virtual ::ItemStack
const& getSelectedItem()
const = 0;
36 virtual void setSelectedItem(
::ItemStack const& item) = 0;
38 virtual ::PlayerInventorySlotData getSelectedSlot()
const = 0;
40 virtual void setSelectedSlot(
int slot, ::ContainerID containerId) = 0;
42 virtual float getMaxPickRange()
const = 0;
44 virtual ::Vec3 getPosition()
const = 0;
46 virtual void setPosition(
::Vec3 const& position) = 0;
48 virtual void createTransactionContext(
50 ::std::function<
void()>&& execute
57 virtual bool baseUseItemAsAttack(
::ItemStack& item,
::Vec3 const& aimDirection) = 0;
59 virtual ::InteractionResult useItemOn(
68 virtual void resendBlocksAroundArea(
::BlockPos const& pos, uchar facing)
const = 0;
70 virtual void resendPlayerState()
const = 0;
72 virtual void sendPlayerInventory()
const = 0;
74 virtual bool isSneaking()
const = 0;
76 virtual ::Block
const& getBlock(
::BlockPos const& pos)
const = 0;
78 virtual ::Block
const& getExtraBlock(
::BlockPos const& pos)
const = 0;
80 virtual bool isLastBuildBlockInteractive()
const = 0;
82 virtual void sendBlockInteractedWith(
::BlockPos const& pos) = 0;
84 virtual ::DepenetrationComponent& getDepenetrationComponent() = 0;