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
+21
View File
@@ -12,6 +12,8 @@
#include "Minimap.h"
#include "MultiPlayerLevel.h"
#include "SkullTileRenderer.h"
#include "BannerRenderer.h"
#include "../Minecraft.World/BannerItem.h"
#include "../Minecraft.World/Facing.h"
#include "../Minecraft.World/net.minecraft.world.item.h"
#include "../Minecraft.World/net.minecraft.world.level.tile.h"
@@ -255,6 +257,14 @@ void ItemInHandRenderer::renderItem(shared_ptr<LivingEntity> mob, shared_ptr<Ite
return;
}
if (dynamic_cast<BannerItem*>(item->getItem()) != nullptr && BannerRenderer::instance != nullptr)
{
int baseColor = item->getAuxValue() & 15;
BannerRenderer::instance->renderBannerForHand(1.0f, baseColor);
glPopMatrix();
return;
}
Tile *tile = Tile::tiles[item->id];
if ((item->getIconType() == Icon::TYPE_TERRAIN && tile != nullptr && TileRenderer::canRender(tile->getRenderShape())) && item->id != AirTile::barrier_Id)
{
@@ -709,6 +719,17 @@ void ItemInHandRenderer::render(float a)
glPopMatrix();
return;
}
else if (dynamic_cast<BannerItem*>(item->getItem()) != nullptr && BannerRenderer::instance != nullptr)
{
int baseColor = item->getAuxValue() & 15;
glRotatef(50.0f, 0.0f, 1.0f, 0.0f);
glTranslatef(0.0f, 0.05f, 0.0f);
const float bs = 0.6f;
glScalef(bs, -bs, -bs);
BannerRenderer::instance->renderBannerForHand(1.0f, baseColor);
glPopMatrix();
return;
}
else
{
renderItem(player, item, 0, false);