mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-24 00:04:11 +00:00
37 lines
752 B
C++
37 lines
752 B
C++
#pragma once
|
|
|
|
#include <memory>
|
|
|
|
#include "LocatableSource.h"
|
|
|
|
class Tile;
|
|
class Material;
|
|
class TileEntity;
|
|
|
|
class BlockSource : public LocatableSource {
|
|
public:
|
|
/**
|
|
* @return The X coordinate for the middle of the block
|
|
*/
|
|
virtual double getX() = 0;
|
|
|
|
/**
|
|
* @return The Y coordinate for the middle of the block
|
|
*/
|
|
virtual double getY() = 0;
|
|
|
|
/**
|
|
* @return The Z coordinate for the middle of the block
|
|
*/
|
|
virtual double getZ() = 0;
|
|
|
|
virtual int getBlockX() = 0;
|
|
virtual int getBlockY() = 0;
|
|
virtual int getBlockZ() = 0;
|
|
|
|
virtual Tile* getType() = 0;
|
|
virtual int getData() = 0;
|
|
virtual Material* getMaterial() = 0;
|
|
|
|
virtual std::shared_ptr<TileEntity> getEntity() = 0;
|
|
}; |