mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-26 14:53:36 +00:00
59 lines
1.5 KiB
C++
59 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#include <memory>
|
|
|
|
class Minecraft;
|
|
class ItemInstance;
|
|
class Minimap;
|
|
class LivingEntity;
|
|
class TileRenderer;
|
|
class Tesselator;
|
|
class Icon;
|
|
class ResourceLocation;
|
|
|
|
class ItemInHandRenderer {
|
|
public:
|
|
// 4J - made these public
|
|
static ResourceLocation ENCHANT_GLINT_LOCATION;
|
|
static ResourceLocation MAP_BACKGROUND_LOCATION;
|
|
static ResourceLocation UNDERWATER_LOCATION;
|
|
|
|
private:
|
|
Minecraft* minecraft;
|
|
std::shared_ptr<ItemInstance> selectedItem;
|
|
float height;
|
|
float oHeight;
|
|
TileRenderer* tileRenderer;
|
|
static int listItem, listGlint, listTerrain;
|
|
|
|
public:
|
|
// 4J Stu - Made public so we can use it from ItemFramRenderer
|
|
Minimap* minimap;
|
|
|
|
public:
|
|
ItemInHandRenderer(
|
|
Minecraft* mc,
|
|
bool optimisedMinimap = true); // 4J Added optimisedMinimap param
|
|
void renderItem(std::shared_ptr<LivingEntity> mob,
|
|
std::shared_ptr<ItemInstance> item, int layer,
|
|
bool setColor = true); // 4J added setColor parameter
|
|
static void renderItem3D(
|
|
Tesselator* t, float u0, float v0, float u1, float v1, int width,
|
|
int height, float depth, bool isGlint,
|
|
bool isTerrain); // 4J added isGlint and isTerrain parameter
|
|
public:
|
|
void render(float a);
|
|
void renderScreenEffect(float a);
|
|
|
|
private:
|
|
void renderTex(float a, Icon* slot);
|
|
void renderWater(float a);
|
|
void renderFire(float a);
|
|
int lastSlot;
|
|
|
|
public:
|
|
void tick();
|
|
void itemPlaced();
|
|
void itemUsed();
|
|
};
|