| 563 | } |
| 564 | |
| 565 | UString AgentMission::getName() |
| 566 | { |
| 567 | static const std::map<AgentMission::MissionType, UString> TypeMap = { |
| 568 | {MissionType::GotoBuilding, "GotoBuilding"}, |
| 569 | {MissionType::Snooze, "Snooze"}, |
| 570 | {MissionType::AwaitPickup, "AwaitPickup"}, |
| 571 | {MissionType::RestartNextMission, "RestartNextMission"}, |
| 572 | {MissionType::Teleport, "Teleport"}, |
| 573 | {MissionType::InvestigateBuilding, "InvestigateBuilding"}, |
| 574 | }; |
| 575 | UString name = "UNKNOWN"; |
| 576 | const auto it = TypeMap.find(this->type); |
| 577 | if (it != TypeMap.end()) |
| 578 | name = it->second; |
| 579 | switch (this->type) |
| 580 | { |
| 581 | case MissionType::GotoBuilding: |
| 582 | case MissionType::InvestigateBuilding: |
| 583 | name += " " + this->targetBuilding.id; |
| 584 | break; |
| 585 | case MissionType::Snooze: |
| 586 | name += format(" for %u ticks", this->timeToSnooze); |
| 587 | break; |
| 588 | case MissionType::Teleport: |
| 589 | name += " " + this->targetBuilding.id; |
| 590 | break; |
| 591 | case MissionType::AwaitPickup: |
| 592 | case MissionType::RestartNextMission: |
| 593 | break; |
| 594 | } |
| 595 | return name; |
| 596 | } |
| 597 | |
| 598 | } // namespace OpenApoc |
no test coverage detected