forked from Kolyah35/minecraft-pe-0.6.1
62 lines
1.6 KiB
C++
Executable File
62 lines
1.6 KiB
C++
Executable File
#ifndef NET_MINECRAFT_CLIENT_RENDERER_TILEENTITY__TileEntityRenderDispatcher_H__
|
|
#define NET_MINECRAFT_CLIENT_RENDERER_TILEENTITY__TileEntityRenderDispatcher_H__
|
|
|
|
//package net.minecraft.client.renderer.tileentity;
|
|
|
|
#include <map>
|
|
#include "../../../world/level/tile/entity/TileEntityRendererId.h"
|
|
|
|
class TileEntityRenderer;
|
|
class Level;
|
|
class Textures;
|
|
class TileEntity;
|
|
class Font;
|
|
class Mob;
|
|
|
|
class TileEntityRenderDispatcher
|
|
{
|
|
typedef std::map<TileEntityRendererId, TileEntityRenderer*> RendererMap;
|
|
typedef RendererMap::iterator RendererIterator;
|
|
typedef RendererMap::const_iterator RendererCIterator;
|
|
|
|
public:
|
|
~TileEntityRenderDispatcher();
|
|
|
|
static TileEntityRenderDispatcher* getInstance();
|
|
static void destroy();
|
|
|
|
void setLevel(Level* level);
|
|
void prepare(Level* level, Textures* textures, Font* font, Mob* player, float a);
|
|
|
|
void render(TileEntity* e, float a);
|
|
void render(TileEntity* entity, float x, float y, float z, float a);
|
|
|
|
float distanceToSqr(float x, float y, float z);
|
|
|
|
Font* getFont();
|
|
|
|
TileEntityRenderer* getRenderer( TileEntity* entity );
|
|
TileEntityRenderer* getRenderer( TileEntityRendererId rendererId );
|
|
|
|
void onGraphicsReset();
|
|
private:
|
|
TileEntityRenderDispatcher();
|
|
public:
|
|
static float xOff, yOff, zOff;
|
|
|
|
Textures* textures;
|
|
Level* level;
|
|
Mob* cameraEntity;
|
|
float playerRotY;
|
|
float playerRotX;
|
|
|
|
float xPlayer, yPlayer, zPlayer;
|
|
private:
|
|
static TileEntityRenderDispatcher* instance;
|
|
|
|
Font* _font;
|
|
RendererMap _renderers;
|
|
};
|
|
|
|
#endif /*NET_MINECRAFT_CLIENT_RENDERER_TILEENTITY__TileEntityRenderDispatcher_H__*/
|