Modernize project codebase (#906)

* Fixed boats falling and a TP glitch #266

* Replaced every C-style cast with C++ ones

* Replaced every C-style cast with C++ ones

* Fixed boats falling and a TP glitch #266

* Updated NULL to nullptr and fixing some type issues

* Modernized and fixed a few bugs

- Replaced most instances of `NULL` with `nullptr`.
- Replaced most `shared_ptr(new ...)` with `make_shared`.
- Removed the `nullptr` macro as it was interfering with the actual nullptr keyword in some instances.

* Fixing more conflicts

* Replace int loops with size_t and start work on overrides

* Add safety checks and fix a issue with vector going OOR
This commit is contained in:
ModMaker101
2026-03-08 19:08:36 -04:00
committed by GitHub
parent 88798b501d
commit 28614b922f
1373 changed files with 20086 additions and 19527 deletions

View File

@@ -15,8 +15,18 @@ MobRenderer::MobRenderer(Model *model, float shadow) : LivingEntityRenderer(mode
void MobRenderer::render(shared_ptr<Entity> _mob, double x, double y, double z, float rot, float a)
{
if (_mob == nullptr)
{
return;
}
shared_ptr<Mob> mob = dynamic_pointer_cast<Mob>(_mob);
if (mob == nullptr)
{
return;
}
LivingEntityRenderer::render(mob, x, y, z, rot, a);
renderLeash(mob, x, y, z, rot, a);
}
@@ -30,7 +40,7 @@ void MobRenderer::renderLeash(shared_ptr<Mob> entity, double x, double y, double
{
shared_ptr<Entity> roper = entity->getLeashHolder();
// roper = entityRenderDispatcher.cameraEntity;
if (roper != NULL)
if (roper != nullptr)
{
glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
@@ -61,9 +71,9 @@ void MobRenderer::renderLeash(shared_ptr<Mob> entity, double x, double y, double
x += rotOffCos;
z += rotOffSin;
double dx = (float) (endX - startX);
double dy = (float) (endY - startY);
double dz = (float) (endZ - startZ);
double dx = static_cast<float>(endX - startX);
double dy = static_cast<float>(endY - startY);
double dz = static_cast<float>(endZ - startZ);
glDisable(GL_TEXTURE_2D);
glDisable(GL_LIGHTING);
@@ -92,9 +102,9 @@ void MobRenderer::renderLeash(shared_ptr<Mob> entity, double x, double y, double
{
tessellator->color(rDarkCol, gDarkCol, bDarkCol, 1.0F);
}
float aa = (float) k / (float) steps;
tessellator->vertex(x + (dx * aa) + 0, y + (dy * ((aa * aa) + aa) * 0.5) + ((((float) steps - (float) k) / (steps * 0.75F)) + 0.125F), z + (dz * aa));
tessellator->vertex(x + (dx * aa) + width, y + (dy * ((aa * aa) + aa) * 0.5) + ((((float) steps - (float) k) / (steps * 0.75F)) + 0.125F) + width, z + (dz * aa));
float aa = static_cast<float>(k) / static_cast<float>(steps);
tessellator->vertex(x + (dx * aa) + 0, y + (dy * ((aa * aa) + aa) * 0.5) + (((static_cast<float>(steps) - static_cast<float>(k)) / (steps * 0.75F)) + 0.125F), z + (dz * aa));
tessellator->vertex(x + (dx * aa) + width, y + (dy * ((aa * aa) + aa) * 0.5) + (((static_cast<float>(steps) - static_cast<float>(k)) / (steps * 0.75F)) + 0.125F) + width, z + (dz * aa));
}
tessellator->end();
@@ -109,9 +119,9 @@ void MobRenderer::renderLeash(shared_ptr<Mob> entity, double x, double y, double
{
tessellator->color(rDarkCol, gDarkCol, bDarkCol, 1.0F);
}
float aa = (float) k / (float) steps;
tessellator->vertex(x + (dx * aa) + 0, y + (dy * ((aa * aa) + aa) * 0.5) + ((((float) steps - (float) k) / (steps * 0.75F)) + 0.125F) + width, z + (dz * aa));
tessellator->vertex(x + (dx * aa) + width, y + (dy * ((aa * aa) + aa) * 0.5) + ((((float) steps - (float) k) / (steps * 0.75F)) + 0.125F), z + (dz * aa) + width);
float aa = static_cast<float>(k) / static_cast<float>(steps);
tessellator->vertex(x + (dx * aa) + 0, y + (dy * ((aa * aa) + aa) * 0.5) + (((static_cast<float>(steps) - static_cast<float>(k)) / (steps * 0.75F)) + 0.125F) + width, z + (dz * aa));
tessellator->vertex(x + (dx * aa) + width, y + (dy * ((aa * aa) + aa) * 0.5) + (((static_cast<float>(steps) - static_cast<float>(k)) / (steps * 0.75F)) + 0.125F), z + (dz * aa) + width);
}
tessellator->end();