37 ::CommandSelectionType mType{};
38 ::CommandSelectionOrder mOrder{};
39 ::std::vector<::InvertableFilter<::std::string>> mNameFilters{};
40 ::std::vector<::InvertableFilter<::ActorDefinitionIdentifier>> mTypeFilters{};
41 ::std::vector<::InvertableFilter<::HashedString>> mFamilyFilters{};
42 ::std::vector<::InvertableFilter<::std::string>> mTagFilters{};
46 float mRadiusMinSqr{0.0f};
47 float mRadiusMaxSqr{std::numeric_limits<float>::max()};
48 uint64 mCount{std::numeric_limits<uint>::max()};
49 bool mIncludeDeadPlayers{};
50 bool mIsPositionBound{};
51 bool mDistanceFiltered{};
52 bool mPositionFiltered{};
53 bool mCountFiltered{};
56 bool mExcludeAgents{};
57 bool mIsExplicitIdSelector{};
58 bool mForceDimensionFiltering{};
69 MCAPI
void addHasItemFilter(
70 ::std::string
const& itemName,
71 ::std::optional<int> auxValue,
73 ::SharedTypes::Legacy::EquipmentSlot equipmentSlot,
77 MCAPI
void addHasPermissionFilters(::std::vector<::HasPermissionFilter>
const& filters);
79 MCAPI
void addHasPropertyFilter(
82 ::std::optional<::std::variant<::CommandRationalRange, bool, ::std::string>>
const& optionalValue
85 MCAPI
void addScoreFilter(
86 ::std::string
const& objName,
88 ::std::function<
int(
bool&, ::std::string
const&,
::Actor const&)> callback
93 MCAPI
bool compareName(::std::string
const& name)
const;
95 MCAPI
bool compile(
::CommandOrigin const& origin, ::std::string& error);
99 MCAPI ::std::string getName()
const;
105 MCAPI
bool matchFamily(
::Actor const& entity)
const;
107 MCAPI
bool matchName(
::Actor const& entity)
const;
109 MCAPI
bool matchTag(
::Actor const& entity)
const;
111 MCAPI
bool matchType(
::Actor const& entity)
const;
113 MCAPI ::std::shared_ptr<::std::vector<::Actor*>> newResults(
::CommandOrigin const& origin)
const;
121 MCAPI static ::Vec3
const getFeetPos(
int version,
::Actor const& entity);