Files
MinecraftConsoles/Minecraft.World/WoolTileItem.cpp
daoge b3feddfef3 feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict

* feat: TU19 (Dec 2014) Features & Content (#32)

* December 2014 files

* Working release build

* Fix compilation issues

* Add sound to Windows64Media

* Add DLC content and force Tutorial DLC

* Revert "Add DLC content and force Tutorial DLC"

This reverts commit 97a4399472.

* Disable broken light packing

* Disable breakpoint during DLC texture map load

Allows DLC loading but the DLC textures are still broken

* Fix post build not working

* ...

* fix vs2022 build

* fix cmake build

---------

Co-authored-by: Loki <lokirautio@gmail.com>
2026-03-03 03:04:10 +08:00

150 lines
3.9 KiB
C++

#include "stdafx.h"
#include "net.minecraft.world.level.tile.h"
#include "ItemInstance.h"
#include "DyePowderItem.h"
#include "WoolTileItem.h"
const unsigned int WoolTileItem::COLOR_DESCS[] =
{
IDS_TILE_CLOTH_BLACK,
IDS_TILE_CLOTH_RED,
IDS_TILE_CLOTH_GREEN,
IDS_TILE_CLOTH_BROWN,
IDS_TILE_CLOTH_BLUE,
IDS_TILE_CLOTH_PURPLE,
IDS_TILE_CLOTH_CYAN,
IDS_TILE_CLOTH_SILVER,
IDS_TILE_CLOTH_GRAY,
IDS_TILE_CLOTH_PINK,
IDS_TILE_CLOTH_LIME,
IDS_TILE_CLOTH_YELLOW,
IDS_TILE_CLOTH_LIGHT_BLUE,
IDS_TILE_CLOTH_MAGENTA,
IDS_TILE_CLOTH_ORANGE,
IDS_TILE_CLOTH_WHITE
};
const unsigned int WoolTileItem::CARPET_COLOR_DESCS[] =
{
IDS_TILE_CARPET_BLACK,
IDS_TILE_CARPET_RED,
IDS_TILE_CARPET_GREEN,
IDS_TILE_CARPET_BROWN,
IDS_TILE_CARPET_BLUE,
IDS_TILE_CARPET_PURPLE,
IDS_TILE_CARPET_CYAN,
IDS_TILE_CARPET_SILVER,
IDS_TILE_CARPET_GRAY,
IDS_TILE_CARPET_PINK,
IDS_TILE_CARPET_LIME,
IDS_TILE_CARPET_YELLOW,
IDS_TILE_CARPET_LIGHT_BLUE,
IDS_TILE_CARPET_MAGENTA,
IDS_TILE_CARPET_ORANGE,
IDS_TILE_CARPET_WHITE
};
const unsigned int WoolTileItem::CLAY_COLOR_DESCS[] =
{
IDS_TILE_STAINED_CLAY_BLACK,
IDS_TILE_STAINED_CLAY_RED,
IDS_TILE_STAINED_CLAY_GREEN,
IDS_TILE_STAINED_CLAY_BROWN,
IDS_TILE_STAINED_CLAY_BLUE,
IDS_TILE_STAINED_CLAY_PURPLE,
IDS_TILE_STAINED_CLAY_CYAN,
IDS_TILE_STAINED_CLAY_SILVER,
IDS_TILE_STAINED_CLAY_GRAY,
IDS_TILE_STAINED_CLAY_PINK,
IDS_TILE_STAINED_CLAY_LIME,
IDS_TILE_STAINED_CLAY_YELLOW,
IDS_TILE_STAINED_CLAY_LIGHT_BLUE,
IDS_TILE_STAINED_CLAY_MAGENTA,
IDS_TILE_STAINED_CLAY_ORANGE,
IDS_TILE_STAINED_CLAY_WHITE
};
const unsigned int WoolTileItem::GLASS_COLOR_DESCS[] =
{
IDS_TILE_STAINED_GLASS_BLACK,
IDS_TILE_STAINED_GLASS_RED,
IDS_TILE_STAINED_GLASS_GREEN,
IDS_TILE_STAINED_GLASS_BROWN,
IDS_TILE_STAINED_GLASS_BLUE,
IDS_TILE_STAINED_GLASS_PURPLE,
IDS_TILE_STAINED_GLASS_CYAN,
IDS_TILE_STAINED_GLASS_SILVER,
IDS_TILE_STAINED_GLASS_GRAY,
IDS_TILE_STAINED_GLASS_PINK,
IDS_TILE_STAINED_GLASS_LIME,
IDS_TILE_STAINED_GLASS_YELLOW,
IDS_TILE_STAINED_GLASS_LIGHT_BLUE,
IDS_TILE_STAINED_GLASS_MAGENTA,
IDS_TILE_STAINED_GLASS_ORANGE,
IDS_TILE_STAINED_GLASS_WHITE
};
const unsigned int WoolTileItem::GLASS_PANE_COLOR_DESCS[] =
{
IDS_TILE_STAINED_GLASS_PANE_BLACK,
IDS_TILE_STAINED_GLASS_PANE_RED,
IDS_TILE_STAINED_GLASS_PANE_GREEN,
IDS_TILE_STAINED_GLASS_PANE_BROWN,
IDS_TILE_STAINED_GLASS_PANE_BLUE,
IDS_TILE_STAINED_GLASS_PANE_PURPLE,
IDS_TILE_STAINED_GLASS_PANE_CYAN,
IDS_TILE_STAINED_GLASS_PANE_SILVER,
IDS_TILE_STAINED_GLASS_PANE_GRAY,
IDS_TILE_STAINED_GLASS_PANE_PINK,
IDS_TILE_STAINED_GLASS_PANE_LIME,
IDS_TILE_STAINED_GLASS_PANE_YELLOW,
IDS_TILE_STAINED_GLASS_PANE_LIGHT_BLUE,
IDS_TILE_STAINED_GLASS_PANE_MAGENTA,
IDS_TILE_STAINED_GLASS_PANE_ORANGE,
IDS_TILE_STAINED_GLASS_PANE_WHITE
};
WoolTileItem::WoolTileItem(int id) : TileItem(id)
{
setMaxDamage(0);
setStackedByData(true);
}
Icon *WoolTileItem::getIcon(int itemAuxValue)
{
#ifndef _CONTENT_PACKAGE
if(Tile::tiles[id])
{
return Tile::tiles[id]->getTexture(2, ColoredTile::getTileDataForItemAuxValue(itemAuxValue));
}
else
#endif
{
return Tile::wool->getTexture(2, ColoredTile::getTileDataForItemAuxValue(itemAuxValue));
}
}
int WoolTileItem::getLevelDataForAuxValue(int auxValue)
{
return auxValue;
}
unsigned int WoolTileItem::getDescriptionId(shared_ptr<ItemInstance> instance)
{
int tileId = getTileId();
switch(getTileId())
{
case Tile::stained_glass_Id:
return GLASS_COLOR_DESCS[ColoredTile::getTileDataForItemAuxValue(instance->getAuxValue())];
case Tile::stained_glass_pane_Id:
return GLASS_PANE_COLOR_DESCS[ColoredTile::getTileDataForItemAuxValue(instance->getAuxValue())];
case Tile::clayHardened_colored_Id:
return CLAY_COLOR_DESCS[ColoredTile::getTileDataForItemAuxValue(instance->getAuxValue())];
case Tile::woolCarpet_Id:
return CARPET_COLOR_DESCS[ColoredTile::getTileDataForItemAuxValue(instance->getAuxValue())];
case Tile::wool_Id:
default:
return COLOR_DESCS[ColoredTile::getTileDataForItemAuxValue(instance->getAuxValue())];
};
}