mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-10 08:27:43 +00:00
Lots of HUD-related implementations
This commit is contained in:
@@ -89,7 +89,7 @@ void CPlayer::Accept(IVisitor& visitor)
|
||||
visitor.Visit(this);
|
||||
}
|
||||
|
||||
CHealthInfo* CPlayer::HealthInfo(CStateManager& mgr) { return &mgr.GetPlayerState()->HealthInfo(); }
|
||||
CHealthInfo* CPlayer::HealthInfo(const CStateManager& mgr) { return &mgr.GetPlayerState()->HealthInfo(); }
|
||||
|
||||
bool CPlayer::IsUnderBetaMetroidAttack(CStateManager& mgr) const { return false; }
|
||||
|
||||
@@ -199,8 +199,6 @@ void CPlayer::DrawGun(CStateManager& mgr) {}
|
||||
|
||||
void CPlayer::HolsterGun(CStateManager& mgr) {}
|
||||
|
||||
CPlayer::EPlayerMorphBallState CPlayer::GetMorphballTransitionState() const { return x2f8_morphTransState; }
|
||||
|
||||
void CPlayer::UpdateGrappleArmTransform(const zeus::CVector3f&, CStateManager& mgr, float) {}
|
||||
|
||||
void CPlayer::ApplyGrappleForces(const CFinalInput& input, CStateManager& mgr, float) {}
|
||||
@@ -382,6 +380,24 @@ void CPlayer::SetCameraState(EPlayerCameraState camState, CStateManager& stateMg
|
||||
}
|
||||
}
|
||||
|
||||
bool CPlayer::IsEnergyLow(const CStateManager& mgr) const
|
||||
{
|
||||
float lowThreshold = mgr.GetPlayerState()->GetItemCapacity(CPlayerState::EItemType::EnergyTanks) < 4 ? 30.f : 100.f;
|
||||
return HealthInfo(mgr)->GetHP() < lowThreshold;
|
||||
}
|
||||
|
||||
bool CPlayer::ObjectInScanningRange(TUniqueId id, const CStateManager& mgr) const
|
||||
{
|
||||
const CEntity* ent = mgr.GetObjectById(id);
|
||||
if (TCastToConstPtr<CActor> act = ent)
|
||||
{
|
||||
zeus::CVector3f delta = act->GetTranslation() - GetTranslation();
|
||||
if (delta.canBeNormalized())
|
||||
return delta.magnitude() < g_tweakPlayer->GetScanningRange();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void CPlayer::Touch() {}
|
||||
|
||||
void CPlayer::CVisorSteam::SetSteam(float a, float b, float c, ResId d, bool e)
|
||||
|
||||
Reference in New Issue
Block a user