4jcraft/Minecraft.World/Core/BlockSourceImpl.cpp
2026-03-21 15:54:53 -05:00

38 lines
1 KiB
C++

#include "../Platform/stdafx.h"
#include "BlockSourceImpl.h"
#include "../Headers/net.minecraft.world.level.h"
#include "../Headers/net.minecraft.world.level.tile.h"
#include "../Headers/net.minecraft.world.level.tile.entity.h"
BlockSourceImpl::BlockSourceImpl(Level* world, int x, int y, int z) {
this->world = world;
this->x = x;
this->y = y;
this->z = z;
}
Level* BlockSourceImpl::getWorld() { return world; }
double BlockSourceImpl::getX() { return x + 0.5; }
double BlockSourceImpl::getY() { return y + 0.5; }
double BlockSourceImpl::getZ() { return z + 0.5; }
int BlockSourceImpl::getBlockX() { return x; }
int BlockSourceImpl::getBlockY() { return y; }
int BlockSourceImpl::getBlockZ() { return z; }
Tile* BlockSourceImpl::getType() {
return Tile::tiles[world->getTile(x, y, z)];
}
int BlockSourceImpl::getData() { return world->getData(x, y, z); }
Material* BlockSourceImpl::getMaterial() { return world->getMaterial(x, y, z); }
std::shared_ptr<TileEntity> BlockSourceImpl::getEntity() {
return world->getTileEntity(x, y, z);
}