4jcraft/Minecraft.World/Blocks/SignTile.h
2026-03-21 15:52:50 -05:00

42 lines
1.3 KiB
C++

#pragma once
#include "BaseEntityTile.h"
#include "TileEntities/TileEntity.h"
#include "../Platform/stdafx.h"
#include "Material.h"
class SignTile : public BaseEntityTile {
friend class Tile;
private:
eINSTANCEOF clas;
bool onGround;
protected:
SignTile(int id, eINSTANCEOF clas, bool onGround);
public:
Icon* getTexture(int face, int data);
virtual void updateDefaultShape();
AABB* getAABB(Level* level, int x, int y, int z);
AABB* getTileAABB(Level* level, int x, int y, int z);
void updateShape(LevelSource* level, int x, int y, int z,
int forceData = -1,
std::shared_ptr<TileEntity> forceEntity =
std::shared_ptr<TileEntity>()); // 4J added forceData,
// forceEntity param
int getRenderShape();
bool isCubeShaped();
virtual bool isPathfindable(LevelSource* level, int x, int y, int z);
bool isSolidRender(bool isServerLevel = false);
protected:
std::shared_ptr<TileEntity> newTileEntity(Level* level);
public:
int getResource(int data, Random* random, int playerBonusLevel);
void neighborChanged(Level* level, int x, int y, int z, int type);
int cloneTileId(Level* level, int x, int y, int z);
void registerIcons(IconRegister* iconRegister);
};