the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2#include "EntityRenderer.h"
3#include "..\Minecraft.World\Entity.h"
4#include "..\Minecraft.World\JavaIntHash.h"
5class font;
6using namespace std;
7
8class EntityRenderDispatcher
9{
10public:
11 static void staticCtor(); // 4J added
12private:
13 typedef unordered_map<eINSTANCEOF, EntityRenderer *, eINSTANCEOFKeyHash, eINSTANCEOFKeyEq> classToRendererMap;
14 classToRendererMap renderers;
15 // 4J - was:
16// Map<Class<? extends Entity>, EntityRenderer<? extends Entity>> renderers = new HashMap<Class<? extends Entity>, EntityRenderer<? extends Entity>>();
17
18public:
19 static EntityRenderDispatcher *instance;
20private:
21 Font *font;
22
23public:
24 static double xOff, yOff, zOff;
25
26 Textures *textures;
27 ItemInHandRenderer *itemInHandRenderer;
28 Level *level;
29 shared_ptr<LivingEntity> cameraEntity;
30 shared_ptr<LivingEntity> crosshairPickMob;
31 float playerRotY;
32 float playerRotX;
33 Options *options;
34 bool isGuiRender; // 4J added
35
36 double xPlayer, yPlayer, zPlayer;
37
38private:
39 EntityRenderDispatcher();
40
41public:
42 EntityRenderer *getRenderer(eINSTANCEOF e);
43 EntityRenderer *getRenderer(shared_ptr<Entity> e);
44 void prepare(Level *level, Textures *textures, Font *font, shared_ptr<LivingEntity> player, shared_ptr<LivingEntity> crosshairPickMob, Options *options, float a);
45 void render(shared_ptr<Entity> entity, float a);
46 void render(shared_ptr<Entity> entity, double x, double y, double z, float rot, float a, bool bItemFrame = false, bool bRenderPlayerShadow = true);
47 void setLevel(Level *level);
48 double distanceToSqr(double x, double y, double z);
49 Font *getFont();
50 void registerTerrainTextures(IconRegister *iconRegister);
51
52private:
53 void renderHitbox(shared_ptr<Entity> entity, double x, double y, double z, float rot, float a);
54
55};