TU43 Release 4

+ Banners, Banners, Banners!
This commit is contained in:
Tranqlmao
2026-07-07 19:47:42 -04:00
parent d1bf3952cd
commit be3bf0aebd
114 changed files with 798 additions and 7 deletions
+17
View File
@@ -3,7 +3,9 @@
#include "TileRenderer.h"
#include "EntityRenderDispatcher.h"
#include "SkullTileRenderer.h"
#include "BannerRenderer.h"
#include "../Minecraft.World/SkullItem.h"
#include "../Minecraft.World/BannerItem.h"
#include "../Minecraft.World/Facing.h"
#include "../Minecraft.World/JavaMath.h"
#include "../Minecraft.World/net.minecraft.world.entity.item.h"
@@ -94,6 +96,14 @@ void ItemRenderer::render(shared_ptr<Entity> _itemEntity, double x, double y, do
glScalef(0.5f, 0.5f, 0.5f);
SkullTileRenderer::instance->renderSkull(-0.5f, -0.25f, -0.5f, Facing::UP, 0.0f, item->getAuxValue(), extra);
}
else if (dynamic_cast<BannerItem*>(item->getItem()) != nullptr && BannerRenderer::instance != nullptr)
{
int baseColor = item->getAuxValue() & 15;
glRotatef(spin, 0.0f, 1.0f, 0.0f);
const float s = 0.18f;
glScalef(s, -s, -s);
BannerRenderer::instance->renderBannerForHand(1.0f, baseColor);
}
else if ((item->getIconType() == Icon::TYPE_TERRAIN && tile != nullptr && TileRenderer::canRender(tile->getRenderShape())) && item->id != Tile::barrier_Id)
{
glRotatef(spin, 0, 1, 0);
@@ -403,6 +413,13 @@ void ItemRenderer::renderGuiItem(Font *font, Textures *textures, shared_ptr<Item
return;
}
if (dynamic_cast<BannerItem*>(item->getItem()) != nullptr && BannerRenderer::instance != nullptr)
{
int baseColor = item->getAuxValue() & 15;
BannerRenderer::instance->renderBannerForGui(x, y, fScaleX, fScaleY, fAlpha, baseColor);
return;
}
if ((item->getIconType() == Icon::TYPE_TERRAIN && TileRenderer::canRender(Tile::tiles[itemId]->getRenderShape())) && itemId != Tile::barrier_Id)
{
PIXBeginNamedEvent(0,"3D gui item render %d\n",itemId);