mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-20 21:43:06 +01:00
Add checks to ensure an animation object is selected for each peep type
This commit is contained in:
@@ -36,6 +36,7 @@
|
||||
#include "object/DefaultObjects.h"
|
||||
#include "object/ObjectManager.h"
|
||||
#include "object/ObjectRepository.h"
|
||||
#include "peep/PeepAnimations.h"
|
||||
#include "rct1/RCT1.h"
|
||||
#include "scenario/Scenario.h"
|
||||
#include "ui/UiContext.h"
|
||||
@@ -447,6 +448,23 @@ namespace OpenRCT2::Editor
|
||||
}
|
||||
}
|
||||
|
||||
using OpenRCT2::AnimationPeepType;
|
||||
constexpr std::pair<AnimationPeepType, StringId> kPeepCheckPairs[] = {
|
||||
{ AnimationPeepType::Guest, STR_AT_LEAST_ONE_GUEST_PEEP_ANIMATIONS_OBJECT_MUST_BE_SELECTED },
|
||||
{ AnimationPeepType::Handyman, STR_AT_LEAST_ONE_HANDYMAN_PEEP_ANIMATIONS_OBJECT_MUST_BE_SELECTED },
|
||||
{ AnimationPeepType::Mechanic, STR_AT_LEAST_ONE_MECHANIC_PEEP_ANIMATIONS_OBJECT_MUST_BE_SELECTED },
|
||||
{ AnimationPeepType::Security, STR_AT_LEAST_ONE_SECURITY_PEEP_ANIMATIONS_OBJECT_MUST_BE_SELECTED },
|
||||
{ AnimationPeepType::Entertainer, STR_AT_LEAST_ONE_ENTERTAINER_PEEP_ANIMATIONS_OBJECT_MUST_BE_SELECTED },
|
||||
};
|
||||
|
||||
for (auto& pair : kPeepCheckPairs)
|
||||
{
|
||||
if (!EditorCheckObjectGroupAtLeastOneOfPeepTypeSelected(EnumValue(pair.first)))
|
||||
{
|
||||
return { ObjectType::PeepAnimations, pair.second };
|
||||
}
|
||||
}
|
||||
|
||||
return { ObjectType::None, STR_NONE };
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user