|
@@ -32,13 +32,15 @@ namespace ROS2
|
|
SpawnerRequestsBus::BroadcastResult(allActiveSpawnPoints, &SpawnerRequestsBus::Events::GetAllSpawnPointInfos);
|
|
SpawnerRequestsBus::BroadcastResult(allActiveSpawnPoints, &SpawnerRequestsBus::Events::GetAllSpawnPointInfos);
|
|
|
|
|
|
m_spawnPointsComboBox = new QComboBox(this);
|
|
m_spawnPointsComboBox = new QComboBox(this);
|
|
- m_spawnPointsInfos = allActiveSpawnPoints.values;
|
|
|
|
|
|
|
|
- for (int i = 0; i < allActiveSpawnPoints.values.size(); i++)
|
|
|
|
|
|
+ m_spawnPointsComboBox->addItem(tr(zeroPoint.data()));
|
|
|
|
+
|
|
|
|
+ for (const auto& spawnPointMap : allActiveSpawnPoints.values)
|
|
{
|
|
{
|
|
- for (const auto& element : allActiveSpawnPoints.values[i])
|
|
|
|
|
|
+ for (const auto& spawnPoint : spawnPointMap)
|
|
{
|
|
{
|
|
- m_spawnPointsComboBox->addItem(element.first.c_str(), QVariant(i));
|
|
|
|
|
|
+ m_spawnPointsComboBox->addItem(spawnPoint.first.c_str());
|
|
|
|
+ m_spawnPointsInfos.insert({ spawnPoint.first.c_str(), spawnPoint.second });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -55,11 +57,11 @@ namespace ROS2
|
|
QLabel* spawnPointListLabel;
|
|
QLabel* spawnPointListLabel;
|
|
if (allActiveSpawnPoints.values.size() == 0)
|
|
if (allActiveSpawnPoints.values.size() == 0)
|
|
{
|
|
{
|
|
- spawnPointListLabel = new QLabel("Select spawn position (No spawn positions were detected)", this);
|
|
|
|
|
|
+ spawnPointListLabel = new QLabel(tr("Select spawn position (No spawn positions were detected)"), this);
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
- spawnPointListLabel = new QLabel("Select spawn position", this);
|
|
|
|
|
|
+ spawnPointListLabel = new QLabel(tr("Select spawn position"), this);
|
|
}
|
|
}
|
|
layout->addWidget(spawnPointListLabel);
|
|
layout->addWidget(spawnPointListLabel);
|
|
layout->addWidget(m_spawnPointsComboBox);
|
|
layout->addWidget(m_spawnPointsComboBox);
|
|
@@ -95,15 +97,21 @@ namespace ROS2
|
|
{
|
|
{
|
|
if (!m_spawnPointsInfos.empty())
|
|
if (!m_spawnPointsInfos.empty())
|
|
{
|
|
{
|
|
- int vectorIndex = m_spawnPointsComboBox->currentData().toInt();
|
|
|
|
- AZStd::string mapKey(m_spawnPointsComboBox->currentText().toStdString().c_str());
|
|
|
|
- auto& map = m_spawnPointsInfos[vectorIndex];
|
|
|
|
- if (auto spawnInfo = map.find(mapKey);
|
|
|
|
- spawnInfo != map.end())
|
|
|
|
|
|
+ AZStd::string spawnPointName(m_spawnPointsComboBox->currentText().toStdString().c_str());
|
|
|
|
+ if (IsZeroPoint(spawnPointName))
|
|
|
|
+ {
|
|
|
|
+ return AZStd::nullopt;
|
|
|
|
+ }
|
|
|
|
+ if (auto spawnInfo = m_spawnPointsInfos.find(spawnPointName); spawnInfo != m_spawnPointsInfos.end())
|
|
{
|
|
{
|
|
return spawnInfo->second.pose;
|
|
return spawnInfo->second.pose;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return AZStd::nullopt;
|
|
return AZStd::nullopt;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ bool PrefabMakerPage::IsZeroPoint(AZStd::string spawnPointName)
|
|
|
|
+ {
|
|
|
|
+ return spawnPointName == PrefabMakerPage::zeroPoint;
|
|
|
|
+ }
|
|
} // namespace ROS2
|
|
} // namespace ROS2
|