commit
13098ee378
|
@ -59,14 +59,14 @@ static void SetTransparency(CObject* obj, float value)
|
||||||
|
|
||||||
if (obj->Implements(ObjectInterfaceType::Carrier))
|
if (obj->Implements(ObjectInterfaceType::Carrier))
|
||||||
{
|
{
|
||||||
CObject* cargo = dynamic_cast<CCarrierObject*>(obj)->GetCargo();
|
CObject* cargo = dynamic_cast<CCarrierObject&>(*obj).GetCargo();
|
||||||
if (cargo != nullptr)
|
if (cargo != nullptr)
|
||||||
cargo->SetTransparency(value);
|
cargo->SetTransparency(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (obj->Implements(ObjectInterfaceType::Powered))
|
if (obj->Implements(ObjectInterfaceType::Powered))
|
||||||
{
|
{
|
||||||
CObject* power = dynamic_cast<CPoweredObject*>(obj)->GetPower();
|
CObject* power = dynamic_cast<CPoweredObject&>(*obj).GetPower();
|
||||||
if (power != nullptr)
|
if (power != nullptr)
|
||||||
power->SetTransparency(value);
|
power->SetTransparency(value);
|
||||||
}
|
}
|
||||||
|
@ -1233,7 +1233,7 @@ bool CCamera::EventFrameBack(const Event &event)
|
||||||
|
|
||||||
bool ground = true;
|
bool ground = true;
|
||||||
if (m_cameraObj->Implements(ObjectInterfaceType::Movable))
|
if (m_cameraObj->Implements(ObjectInterfaceType::Movable))
|
||||||
ground = dynamic_cast<CMovableObject*>(m_cameraObj)->GetPhysics()->GetLand();
|
ground = dynamic_cast<CMovableObject&>(*m_cameraObj).GetPhysics()->GetLand();
|
||||||
if ( ground ) // ground?
|
if ( ground ) // ground?
|
||||||
{
|
{
|
||||||
Math::Vector pos = lookatPt + (lookatPt - m_eyePt);
|
Math::Vector pos = lookatPt + (lookatPt - m_eyePt);
|
||||||
|
@ -1326,7 +1326,7 @@ bool CCamera::EventFrameOnBoard(const Event &event)
|
||||||
{
|
{
|
||||||
assert(m_cameraObj->Implements(ObjectInterfaceType::Controllable));
|
assert(m_cameraObj->Implements(ObjectInterfaceType::Controllable));
|
||||||
Math::Vector lookatPt, upVec;
|
Math::Vector lookatPt, upVec;
|
||||||
dynamic_cast<CControllableObject*>(m_cameraObj)->AdjustCamera(m_eyePt, m_directionH, m_directionV, lookatPt, upVec, m_type);
|
dynamic_cast<CControllableObject&>(*m_cameraObj).AdjustCamera(m_eyePt, m_directionH, m_directionV, lookatPt, upVec, m_type);
|
||||||
Math::Vector eye = m_effectOffset * 0.3f + m_eyePt;
|
Math::Vector eye = m_effectOffset * 0.3f + m_eyePt;
|
||||||
Math::Vector lookat = m_effectOffset * 0.3f + lookatPt;
|
Math::Vector lookat = m_effectOffset * 0.3f + lookatPt;
|
||||||
|
|
||||||
|
|
|
@ -51,5 +51,5 @@ public:
|
||||||
inline bool IsObjectCarryingCargo(CObject* obj)
|
inline bool IsObjectCarryingCargo(CObject* obj)
|
||||||
{
|
{
|
||||||
return obj->Implements(ObjectInterfaceType::Carrier) &&
|
return obj->Implements(ObjectInterfaceType::Carrier) &&
|
||||||
dynamic_cast<CCarrierObject*>(obj)->IsCarryingCargo();
|
dynamic_cast<CCarrierObject&>(*obj).IsCarryingCargo();
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,10 +61,10 @@ inline float GetObjectEnergy(CObject* object)
|
||||||
|
|
||||||
if (object->Implements(ObjectInterfaceType::Powered))
|
if (object->Implements(ObjectInterfaceType::Powered))
|
||||||
{
|
{
|
||||||
CObject* power = dynamic_cast<CPoweredObject*>(object)->GetPower();
|
CObject* power = dynamic_cast<CPoweredObject&>(*object).GetPower();
|
||||||
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
|
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
|
||||||
{
|
{
|
||||||
energy = dynamic_cast<CPowerContainerObject*>(power)->GetEnergy();
|
energy = dynamic_cast<CPowerContainerObject&>(*power).GetEnergy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -77,10 +77,10 @@ inline float GetObjectEnergyLevel(CObject* object)
|
||||||
|
|
||||||
if (object->Implements(ObjectInterfaceType::Powered))
|
if (object->Implements(ObjectInterfaceType::Powered))
|
||||||
{
|
{
|
||||||
CObject* power = dynamic_cast<CPoweredObject*>(object)->GetPower();
|
CObject* power = dynamic_cast<CPoweredObject&>(*object).GetPower();
|
||||||
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
|
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
|
||||||
{
|
{
|
||||||
energy = dynamic_cast<CPowerContainerObject*>(power)->GetEnergyLevel();
|
energy = dynamic_cast<CPowerContainerObject&>(*power).GetEnergyLevel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -90,5 +90,5 @@ inline float GetObjectEnergyLevel(CObject* object)
|
||||||
inline bool ObjectHasPowerCell(CObject* object)
|
inline bool ObjectHasPowerCell(CObject* object)
|
||||||
{
|
{
|
||||||
return object->Implements(ObjectInterfaceType::Powered) &&
|
return object->Implements(ObjectInterfaceType::Powered) &&
|
||||||
dynamic_cast<CPoweredObject*>(object)->GetPower() != nullptr;
|
dynamic_cast<CPoweredObject&>(*object).GetPower() != nullptr;
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,5 +54,5 @@ public:
|
||||||
inline bool IsObjectBeingTransported(CObject* obj)
|
inline bool IsObjectBeingTransported(CObject* obj)
|
||||||
{
|
{
|
||||||
return obj->Implements(ObjectInterfaceType::Transportable) &&
|
return obj->Implements(ObjectInterfaceType::Transportable) &&
|
||||||
dynamic_cast<CTransportableObject*>(obj)->IsBeingTransported();
|
dynamic_cast<CTransportableObject&>(*obj).IsBeingTransported();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue