mirror of https://github.com/AxioDL/metaforce.git
COmegaPirate/CPhazonHealingNodule/CPhazonPool: Remove usages of const_cast
This commit is contained in:
parent
6b814262fc
commit
3b0b3a39f9
|
@ -196,7 +196,7 @@ void COmegaPirate::AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CSta
|
|||
CMaterialList includes = GetMaterialFilter().GetIncludeList();
|
||||
platform->SetMaterialFilter(CMaterialFilter::MakeIncludeExclude(includes, excludes));
|
||||
xae4_platformVuln = *platform->GetDamageVulnerability();
|
||||
xb54_platformColor = platform->GetDrawFlags().x4_color; // TODO does this work?
|
||||
xb54_platformColor = platform->GetDrawFlags().x4_color;
|
||||
} else if (TCastToPtr<CScriptSound> sound = mgr.ObjectById(connId)) {
|
||||
xaa0_scriptSounds.emplace_back(connId, sound->GetName());
|
||||
}
|
||||
|
@ -432,15 +432,15 @@ void COmegaPirate::Faint(CStateManager& mgr, EStateMsg msg, float dt) {
|
|||
if (xb4c_ < 4 && x9c8_ == 0 && xb58_ >= 2.5f) {
|
||||
float alpha = std::max(xb50_, 1.f);
|
||||
float invAlpha = 1.f - alpha;
|
||||
size_t uVar6 = 0;
|
||||
size_t idx = 0;
|
||||
for (const auto& entry : x9dc_scriptPlatforms) {
|
||||
if (auto platform = static_cast<CScriptPlatform*>(mgr.ObjectById(entry.first))) {
|
||||
if (mgr.GetPlayerState()->GetActiveVisor(mgr) == CPlayerState::EPlayerVisor::XRay) {
|
||||
if (xb4c_ > uVar6) {
|
||||
if (xb4c_ > idx) {
|
||||
CModelFlags flags{5, 0, 3, zeus::skWhite};
|
||||
flags.addColor = zeus::skBlack;
|
||||
platform->SetDrawFlags(flags);
|
||||
} else if (xb4c_ == uVar6) {
|
||||
} else if (xb4c_ == idx) {
|
||||
if (!xb6e_) {
|
||||
SendScriptMsgs(EScriptObjectState::Entered, mgr, EScriptObjectMessage::None);
|
||||
xb6e_ = true;
|
||||
|
@ -455,7 +455,7 @@ void COmegaPirate::Faint(CStateManager& mgr, EStateMsg msg, float dt) {
|
|||
platform->SetDrawFlags(flags);
|
||||
}
|
||||
}
|
||||
++uVar6;
|
||||
++idx;
|
||||
}
|
||||
if (xb50_ > 1.f) {
|
||||
++xb4c_;
|
||||
|
@ -569,23 +569,22 @@ void COmegaPirate::PreRender(CStateManager& mgr, const zeus::CFrustum& frustum)
|
|||
}
|
||||
}
|
||||
|
||||
void COmegaPirate::Render(const CStateManager& mgr) const {
|
||||
const auto* mData = GetModelData();
|
||||
auto* animData = const_cast<CAnimData*>(mData->GetAnimationData());
|
||||
void COmegaPirate::Render(CStateManager& mgr) {
|
||||
auto* mData = GetModelData();
|
||||
auto* animData = mData->GetAnimationData();
|
||||
|
||||
CGraphics::SetModelMatrix(GetTransform() * zeus::CTransform::Scale(mData->GetScale()));
|
||||
|
||||
if (mgr.GetPlayerState()->GetCurrentVisor() != CPlayerState::EPlayerVisor::XRay && xa2c_ > 0.f) {
|
||||
auto& model = const_cast<CSkinnedModel&>(x9f0_);
|
||||
const CModelFlags flags{5, 0, 3, zeus::CColor{1.f, xa2c_}};
|
||||
animData->Render(model, flags, std::nullopt, nullptr);
|
||||
animData->Render(x9f0_, flags, std::nullopt, nullptr);
|
||||
}
|
||||
if (x9a0_) {
|
||||
bool isXRay = mgr.GetPlayerState()->GetActiveVisor(mgr) == CPlayerState::EPlayerVisor::XRay;
|
||||
if (isXRay) {
|
||||
g_Renderer->SetWorldFog(ERglFogMode::None, 0.f, 1.f, zeus::skBlack);
|
||||
const CModelFlags flags{5, 0, 1, zeus::CColor{1.f, 0.2f}};
|
||||
auto& model = const_cast<CSkinnedModel&>(*animData->GetModelData().GetObj());
|
||||
auto& model = *animData->GetModelData().GetObj();
|
||||
animData->Render(model, flags, std::nullopt, nullptr);
|
||||
}
|
||||
CPatterned::Render(mgr);
|
||||
|
|
|
@ -95,7 +95,7 @@ public:
|
|||
void Think(float dt, CStateManager& mgr) override;
|
||||
void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStateManager& mgr) override;
|
||||
void PreRender(CStateManager& mgr, const zeus::CFrustum& frustum) override;
|
||||
void Render(const CStateManager& mgr) const override;
|
||||
void Render(CStateManager& mgr) override;
|
||||
zeus::CVector3f GetOrbitPosition(const CStateManager& mgr) const override;
|
||||
void DoUserAnimEvent(CStateManager& mgr, const CInt32POINode& node, EUserEventType type, float dt) override;
|
||||
void PathFind(CStateManager& mgr, EStateMsg msg, float dt) override;
|
||||
|
|
|
@ -133,7 +133,7 @@ void CPhazonHealingNodule::Patrol(CStateManager& mgr, EStateMsg msg, float dt) {
|
|||
}
|
||||
}
|
||||
|
||||
void CPhazonHealingNodule::Render(const CStateManager& mgr) const {
|
||||
void CPhazonHealingNodule::Render(CStateManager& mgr) {
|
||||
if (x57c_particleElectric) {
|
||||
x57c_particleElectric->Render();
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ public:
|
|||
|
||||
void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStateManager& mgr) override;
|
||||
void DoUserAnimEvent(CStateManager& mgr, const CInt32POINode& node, EUserEventType type, float dt) override;
|
||||
void Render(const CStateManager& mgr) const override;
|
||||
void Render(CStateManager& mgr) override;
|
||||
void Think(float dt, CStateManager& mgr) override;
|
||||
|
||||
void Death(CStateManager& mgr, const zeus::CVector3f& direction, EScriptObjectState state) override;
|
||||
|
|
|
@ -75,7 +75,7 @@ void CPhazonPool::AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStat
|
|||
CScriptTrigger::AcceptScriptMsg(msg, uid, mgr);
|
||||
}
|
||||
|
||||
void CPhazonPool::AddToRenderer(const zeus::CFrustum& frustum, const CStateManager& mgr) const {
|
||||
void CPhazonPool::AddToRenderer(const zeus::CFrustum& frustum, CStateManager& mgr) {
|
||||
if (GetActive()) {
|
||||
if (x170_elementGen1) {
|
||||
g_Renderer->AddParticleGen(*x170_elementGen1);
|
||||
|
@ -90,7 +90,7 @@ void CPhazonPool::AddToRenderer(const zeus::CFrustum& frustum, const CStateManag
|
|||
|
||||
std::optional<zeus::CAABox> CPhazonPool::GetTouchBounds() const { return CScriptTrigger::GetTouchBounds(); }
|
||||
|
||||
void CPhazonPool::Render(const CStateManager& mgr) const {
|
||||
void CPhazonPool::Render(CStateManager& mgr) {
|
||||
CActor::Render(mgr);
|
||||
bool discard = x1a4_ < 0.25f;
|
||||
const CModelFlags flags{5, 0, static_cast<u16>(discard ? 3 : 0), zeus::CColor{1.f, x1a4_}};
|
||||
|
|
|
@ -42,9 +42,9 @@ public:
|
|||
|
||||
void Accept(IVisitor& visitor) override;
|
||||
void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStateManager& mgr) override;
|
||||
void AddToRenderer(const zeus::CFrustum& frustum, const CStateManager& mgr) const override;
|
||||
void AddToRenderer(const zeus::CFrustum& frustum, CStateManager& mgr) override;
|
||||
[[nodiscard]] std::optional<zeus::CAABox> GetTouchBounds() const override;
|
||||
void Render(const CStateManager& mgr) const override;
|
||||
void Render(CStateManager& mgr) override;
|
||||
void Think(float dt, CStateManager& mgr) override;
|
||||
void Touch(CActor& actor, CStateManager& mgr) override;
|
||||
|
||||
|
|
Loading…
Reference in New Issue