Compute object team on demand - partially. But there's more to team colour, and it was already broken before, so there's no way to see if this did anything.

colobot2
immibis 2023-11-18 14:11:52 +01:00
parent ab3c22dce3
commit 74ab7afb23
3 changed files with 2 additions and 14 deletions

View File

@ -980,13 +980,6 @@ void CEngine::SetObjectDrawWorld(int objRank, bool draw)
m_objects[objRank].drawWorld = draw;
}
void CEngine::SetObjectTeam(int objRank, int team)
{
assert(objRank >= 0 && objRank < static_cast<int>(m_objects.size()));
m_objects[objRank].team = team;
}
void CEngine::SetObjectDrawFront(int objRank, bool draw)
{
assert(objRank >= 0 && objRank < static_cast<int>( m_objects.size() ));
@ -2658,7 +2651,8 @@ Color CEngine::GetObjectColor(int object, const std::string& name)
{
if (name == "team")
{
return CRobotMain::GetInstance().GetTeamColor(m_objects[object].team);
CObject *obj = m_objects[object].gameObject;
return CRobotMain::GetInstance().GetTeamColor(obj ? obj->GetTeam() : 0);
}
else if (name == "vehicle")
{

View File

@ -137,8 +137,6 @@ struct EngineObject
float distance = 0.0f;
//! Rank of the associated shadow
int shadowRank = -1;
//! Team
int team = 0;
//! Associated game object, if any. Null for terrain.
CObject* gameObject = nullptr;
};
@ -600,8 +598,6 @@ public:
//! Check if object is transparent to prevent blocking the camera view
bool IsGhostObject(int objRank);
//! Sets team for given object
void SetObjectTeam(int objRank, int team);
//! Returns the bounding box for an object
void GetObjectBBox(int objRank, glm::vec3& min, glm::vec3& max);

View File

@ -128,7 +128,6 @@ bool COldModelManager::AddModelReference(const std::string& fileName, bool mirro
}
m_engine->SetObjectBaseRank(objRank, (*it).second.baseObjRank);
m_engine->SetObjectTeam(objRank, team);
return true;
}
@ -147,7 +146,6 @@ bool COldModelManager::AddModelCopy(const std::string& fileName, bool mirrored,
int copyBaseObjRank = m_engine->CreateBaseObject();
m_engine->CopyBaseObject((*it).second.baseObjRank, copyBaseObjRank);
m_engine->SetObjectBaseRank(objRank, copyBaseObjRank);
m_engine->SetObjectTeam(objRank, team);
m_copiesBaseRanks.push_back(copyBaseObjRank);