#pragma once #include "MobRenderer.h" class DragonModel; class EnderDragonRenderer : public MobRenderer { private: static ResourceLocation DRAGON_EXPLODING_LOCATION; static ResourceLocation CRYSTAL_BEAM_LOCATION; static ResourceLocation DRAGON_EYES_LOCATION; static ResourceLocation DRAGON_LOCATION; protected: DragonModel* dragonModel; public: EnderDragonRenderer(); protected: virtual void setupRotations(std::shared_ptr _mob, float bob, float bodyRot, float a); virtual void renderModel(std::shared_ptr _mob, float wp, float ws, float bob, float headRotMinusBodyRot, float headRotx, float scale); public: virtual void render(std::shared_ptr _mob, double x, double y, double z, float rot, float a); virtual ResourceLocation* getTextureLocation(std::shared_ptr mob); protected: virtual void additionalRendering(std::shared_ptr _mob, float a); virtual int prepareArmor(std::shared_ptr _mob, int layer, float a); };