2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 05:47:42 +00:00

Various bug fixes and CActor rendering

This commit is contained in:
Jack Andersen
2018-02-04 20:56:09 -10:00
parent acf2dab66f
commit ac8dfde174
38 changed files with 549 additions and 142 deletions

View File

@@ -328,22 +328,30 @@ void CGunWeapon::Draw(bool drawSuitArm, const CStateManager& mgr, const zeus::CT
if (x1bc_rainSplashGenerator && x1bc_rainSplashGenerator->IsRaining())
CSkinnedModel::SetPointGeneratorFunc(x1bc_rainSplashGenerator, PointGenerator);
if (mgr.GetParticleFlags() == 0 && x200_beamId != CPlayerState::EBeamId::Ice)
if (mgr.GetThermalDrawFlag() == EThermalDrawFlag::Hot && x200_beamId != CPlayerState::EBeamId::Ice)
{
zeus::CColor color1(flags.x4_color.a, flags.x4_color.a);
zeus::CColor color2(0.25f, 0.25f);
/* Hot Draw */
zeus::CColor mulColor(flags.x4_color.a, flags.x4_color.a);
zeus::CColor addColor(0.25f, 0.25f);
if (x218_29_drawHologram)
{
DrawHologram(mgr, xf, flags);
}
else
x10_solidModelData->RenderThermal(xf, color1, color2);
{
CModelFlags useFlags(0, 0, 3, zeus::CColor::skWhite);
x10_solidModelData->RenderThermal(xf, mulColor, addColor, useFlags);
}
if (drawSuitArm && xb0_suitArmModelData)
{
xb0_suitArmModelData->RenderThermal(xf, color1, color2);
CModelFlags useFlags(0, 0, 3, zeus::CColor::skWhite);
xb0_suitArmModelData->RenderThermal(xf, mulColor, addColor, useFlags);
}
}
else
{
/* Cold Draw */
if (mgr.GetPlayerState()->GetCurrentVisor() != CPlayerState::EPlayerVisor::XRay && !x218_29_drawHologram)
{
CModelFlags useFlags = flags;