Files
GabsPuNs-Project_Zenith_Main/Minecraft.World/LeafTileItem.cpp
GabsPuNs bc6c09146a New File System and Cleanup some code Part 3
* Remove stdafx.h and some <unordered_set> includes
* Update Minecraft Server Defines and remove more unused folders/files
* Unbloat stdafx.h from Minecraft.World
2026-05-24 22:21:41 -04:00

46 lines
1.1 KiB
C++

#include "net.minecraft.world.level.tile.h"
#include "net.minecraft.world.item.h"
#include "LeafTileItem.h"
#include "FoliageColor.h"
LeafTileItem::LeafTileItem(int id) : TileItem(id)
{
setMaxDamage(0);
setStackedByData(true);
}
int LeafTileItem::getLevelDataForAuxValue(int auxValue)
{
return auxValue | LeafTile::PERSISTENT_LEAF_BIT;
}
Icon *LeafTileItem::getIcon(int itemAuxValue)
{
return Tile::leaves->getTexture(0, itemAuxValue);
}
int LeafTileItem::getColor(shared_ptr<ItemInstance> item, int spriteLayer)
{
int data = item->getAuxValue();
if ((data & LeafTile::EVERGREEN_LEAF) == LeafTile::EVERGREEN_LEAF)
{
return FoliageColor::getEvergreenColor();
}
if ((data & LeafTile::BIRCH_LEAF) == LeafTile::BIRCH_LEAF)
{
return FoliageColor::getBirchColor();
}
return FoliageColor::getDefaultColor();
}
unsigned int LeafTileItem::getDescriptionId(shared_ptr<ItemInstance> instance)
{
int auxValue = instance->getAuxValue();
if (auxValue < 0 || auxValue >= LeafTile::LEAF_NAMES_LENGTH)
{
auxValue = 0;
}
return LeafTile::LEAF_NAMES[auxValue];
}