bool PipeManager::CheckTubes(std::shared_ptr<BirdObject> bird)
{
	if (m_pipes[0]->ShouldBeDeleted())
	{
		CorrectOffset();
		m_pipes.erase(m_pipes.begin() + 0);
		m_pipes.erase(m_pipes.begin() + 0);
		AddPipe(true);
		AddPipe(false);
		return false;
	}
	else if (!bird->GetIsDead() && !bird->GetIsInvulnerable() && (bird->CheckInteractWithTube(m_pipes[0]) || bird->CheckInteractWithTube(m_pipes[1])))
	{
		bird->SetIsDead(true);
		return false;
	}
	else if (!bird->GetIsDead() && !m_pipes[0]->IsScored())
	{
		if (bird->CheckScore(m_pipes[0]))
		{
			m_pipes[0]->SetIsScored(true);
			return true;
		}
	}
	return false;
}