3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/debug/log/LogArea.h"
7#include "mc/util/json_util/JsonSchemaObjectNode.h"
8#include "mc/world/item/ItemColor.h"
9#include "mc/world/level/block/BannerBlockType.h"
18namespace Json {
class Value; }
74MCNAPI
void LogMissingChildSchemaOption(
76 ::Json::Value
const& node,
77 ::std::string
const& missingName,
78 ::std::string
const& foundNodesStr,
79 ::std::string
const& optionsStr
82MCNAPI
void buildActorGoalSchema(
84 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_120::AvoidBlockGoalDefinition>>&
89MCNAPI
void buildActorGoalSchema(
91 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_120::AvoidMobTypeGoalDefinition>>&
96MCNAPI
void buildActorGoalSchema(
98 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_120::DigGoalDefinition>>& root,
102MCNAPI
void buildActorGoalSchema(
104 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_120::DrinkMilkGoalDefinition>>&
109MCNAPI
void buildActorGoalSchema(
111 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_100::EatMobGoalDefinition>>& root,
115MCNAPI
void buildActorGoalSchema(
116 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
117 ::JsonUtil::EmptyClass,
118 ::SharedTypes::v1_26_0::MoveTowardsDwellingRestrictionGoalDefinition>>& root,
122MCNAPI
void buildActorGoalSchema(
123 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
124 ::JsonUtil::EmptyClass,
125 ::SharedTypes::v1_26_0::MoveTowardsHomeRestrictionGoalDefinition>>& root,
129MCNAPI
void buildActorGoalSchema(
131 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::PlayDeadGoalDefinition>>&
136MCNAPI
void buildActorGoalSchema(
137 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
138 ::JsonUtil::EmptyClass,
139 ::SharedTypes::v1_26_10::RaiderCelebrationGoalDefinition>>& root,
143MCNAPI
void buildActorGoalSchema(
145 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::RamAttackGoalDefinition>>&
150MCNAPI
void buildActorGoalSchema(
151 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
152 ::JsonUtil::EmptyClass,
153 ::SharedTypes::v1_21_110::StayNearNoteblockGoalDefinition>>& root,
157MCNAPI
void buildActorGoalSchema(
158 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
159 ::JsonUtil::EmptyClass,
160 ::SharedTypes::v1_26_10::VillagerCelebrationGoalDefinition>>& root,
164MCNAPI
void buildActorGoalSchema(
166 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_100::ChargeAttackGoalDefinition>>&
168 ::std::string
const& name
171MCNAPI
void buildActorGoalSchema(
172 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
173 ::JsonUtil::EmptyClass,
174 ::SharedTypes::v1_21_100::CircleAroundAnchorGoalDefinition>>& root,
175 ::std::string
const& name
178MCNAPI
void buildActorGoalSchema(
179 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
180 ::JsonUtil::EmptyClass,
181 ::SharedTypes::v1_21_100::ControlledByPlayerGoalDefinition>>& root,
182 ::std::string
const& name
185MCNAPI
void buildActorGoalSchema(
186 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
187 ::JsonUtil::EmptyClass,
188 ::SharedTypes::v1_26_0::DefendVillageTargetGoalDefinition>>& root,
189 ::std::string
const& name
192MCNAPI
void buildActorGoalSchema(
194 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_0::DelayedAttackGoalDefinition>>&
196 ::std::string
const& name
199MCNAPI
void buildActorGoalSchema(
200 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
201 ::JsonUtil::EmptyClass,
202 ::SharedTypes::v1_26_0::DragonChargePlayerGoalDefinition>>& root,
203 ::std::string
const& name
206MCNAPI
void buildActorGoalSchema(
207 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
208 ::JsonUtil::EmptyClass,
209 ::SharedTypes::v1_21_100::DragonFlamingGoalDefinition>>& root,
210 ::std::string
const& name
213MCNAPI
void buildActorGoalSchema(
214 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
215 ::JsonUtil::EmptyClass,
216 ::SharedTypes::v1_26_0::DragonStrafePlayerGoalDefinition>>& root,
217 ::std::string
const& name
220MCNAPI
void buildActorGoalSchema(
222 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::DropItemForGoalDefinition>>&
224 ::std::string
const& name
227MCNAPI
void buildActorGoalSchema(
228 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
229 ::JsonUtil::EmptyClass,
230 ::SharedTypes::v1_21_130::ExploreOutskirtsGoalDefinition>>& root,
231 ::std::string
const& name
234MCNAPI
void buildActorGoalSchema(
235 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
236 ::JsonUtil::EmptyClass,
237 ::SharedTypes::v1_26_10::FertilizeFarmBlockGoalDefinition>>& root,
238 ::std::string
const& name
241MCNAPI
void buildActorGoalSchema(
243 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_0::GuardianAttackGoalDefinition>>&
245 ::std::string
const& name
248MCNAPI
void buildActorGoalSchema(
249 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
250 ::JsonUtil::EmptyClass,
251 ::SharedTypes::v1_26_10::HarvestFarmBlockGoalDefinition>>& root,
252 ::std::string
const& name
255MCNAPI
void buildActorGoalSchema(
256 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
257 ::JsonUtil::EmptyClass,
258 ::SharedTypes::v1_21_130::InvestigateSuspiciousLocationGoalDefinition>>& root,
259 ::std::string
const& name
262MCNAPI
void buildActorGoalSchema(
264 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_0::MeleeBoxAttackGoalDefinition>>&
266 ::std::string
const& name
269MCNAPI
void buildActorGoalSchema(
270 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
271 ::JsonUtil::EmptyClass,
272 ::SharedTypes::v1_26_0::NearestAttackableTargetGoalDefinition>>& root,
273 ::std::string
const& name
276MCNAPI
void buildActorGoalSchema(
278 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::OcelotAttackGoalDefinition>>&
280 ::std::string
const& name
283MCNAPI
void buildActorGoalSchema(
285 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::OfferFlowerGoalDefinition>>&
287 ::std::string
const& name
290MCNAPI
void buildActorGoalSchema(
292 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::PlayGoalDefinition>>& root,
293 ::std::string
const& name
296MCNAPI
void buildActorGoalSchema(
297 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
298 ::JsonUtil::EmptyClass,
299 ::SharedTypes::v1_26_10::RandomSearchAndDigGoalDefinition>>& root,
300 ::std::string
const& name
303MCNAPI
void buildActorGoalSchema(
305 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::RoarGoalDefinition>>& root,
306 ::std::string
const& name
309MCNAPI
void buildActorGoalSchema(
311 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SlimeAttackGoalDefinition>>&
313 ::std::string
const& name
316MCNAPI
void buildActorGoalSchema(
318 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SlimeFloatGoalDefinition>>&
320 ::std::string
const& name
323MCNAPI
void buildActorGoalSchema(
324 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
325 ::JsonUtil::EmptyClass,
326 ::SharedTypes::v1_21_110::SlimeKeepOnJumpingGoalDefinition>>& root,
327 ::std::string
const& name
330MCNAPI
void buildActorGoalSchema(
331 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
332 ::JsonUtil::EmptyClass,
333 ::SharedTypes::v1_21_110::SlimeRandomDirectionGoalDefinition>>& root,
334 ::std::string
const& name
337MCNAPI
void buildActorGoalSchema(
339 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SniffGoalDefinition>>& root,
340 ::std::string
const& name
343MCNAPI
void buildActorGoalSchema(
345 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SonicBoomGoalDefinition>>&
347 ::std::string
const& name
350MCNAPI
void buildActorGoalSchema(
352 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_0::StompAttackGoalDefinition>>&
354 ::std::string
const& name
357MCNAPI
void buildActorGoalSchema(
359 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SwimIdleGoalDefinition>>&
361 ::std::string
const& name
364MCNAPI
void buildActorGoalSchema(
365 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
366 ::JsonUtil::EmptyClass,
367 ::SharedTypes::v1_21_110::SwimUpForBreathGoalDefinition>>& root,
368 ::std::string
const& name
371MCNAPI
void buildActorGoalSchema(
373 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SwimWanderGoalDefinition>>&
375 ::std::string
const& name
378MCNAPI
void buildActorGoalSchema(
379 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
380 ::JsonUtil::EmptyClass,
381 ::SharedTypes::v1_26_10::SwimWithEntityGoalDefinition>>& root,
382 ::std::string
const& name
385MCNAPI
void buildActorGoalSchema(
387 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_21_110::SwoopAttackGoalDefinition>>&
389 ::std::string
const& name
392MCNAPI
void buildActorGoalSchema(
394 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::TakeFlowerGoalDefinition>>&
396 ::std::string
const& name
399MCNAPI
void buildActorGoalSchema(
400 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
401 ::JsonUtil::EmptyClass,
402 ::SharedTypes::v1_26_10::TeleportToOwnerGoalDefinition>>& root,
403 ::std::string
const& name
406MCNAPI
void buildActorGoalSchema(
407 ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<
408 ::JsonUtil::EmptyClass,
409 ::SharedTypes::v1_26_10::TradeWithPlayerGoalDefinition>>& root,
410 ::std::string
const& name
413MCNAPI
void buildActorGoalSchema(
415 ::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::SharedTypes::v1_26_10::WorkComposterGoalDefinition>>&
417 ::std::string
const& name
420MCNAPI
void eraseSchema(::HashedString
const& name, ::SemVersion
const& version);
422MCNAPI ::Json::Value& getMemberByCaseInsensitiveName(::Json::Value& node, ::std::string_view memberName);
424MCNAPI ::Json::Value
const&
425getMemberByCaseInsensitiveNameConst(::Json::Value
const& node, ::std::string_view memberName);
427MCNAPI
bool parseBannerBlockType(::BannerBlockType& outType, ::Json::Value
const& root);
430parseItem(::std::string& outItemName, ::std::string& outItemNamespace,
int& inoutItemAux, ::std::string_view inString);
432MCNAPI
bool parseItemColor(::ItemColor& outColor, ::Json::Value
const& root);
434MCNAPI
bool parseRange(::Json::Value
const& root,
int& outMin,
int& outMax);
437MCNAPI
bool parseRange(::Json::Value
const& root,
float& outMin,
float& outMax);
440MCNAPI
bool parseVec2(::Vec2& outVec, ::Json::Value
const& root);
442MCNAPI
bool parseVec3(::Vec3& outVec, ::Json::Value
const& root);
445MCNAPI
bool parseVec4(::Vec4& outVec, ::Json::Value
const& root);
447MCNAPI ::Json::Value patchJson(::Json::Value
const& base, ::Json::Value
const& patch,
char terminator);
450MCNAPI
void setDefaultPrettyName(::std::string& destPrettyName, ::HashedString
const& sourceName);
452MCNAPI
void unregisterSchema(::HashedString
const& name, ::SemVersion
const& version);
457MCNAPI ::HashedString
const& ACTOR_DAMAGE_CAUSE();
459MCNAPI ::HashedString
const& ACTOR_DEFINITION_TRIGGER_TYPE_NAME();
461MCNAPI ::HashedString
const& ACTOR_FILTER_GROUP_TYPE_NAME();
463MCNAPI ::HashedString
const& ARRAY_TYPE_NAME();
465MCNAPI ::HashedString
const& BOOL_TYPE_NAME();
467MCNAPI ::HashedString
const& ENTITIES_TYPE_NAME();
469MCNAPI ::HashedString
const& ENUM_TYPE_NAME();
471MCNAPI ::HashedString
const& FLOAT_RANGE_TYPE_NAME();
473MCNAPI ::HashedString
const& FLOAT_TYPE_NAME();
475MCNAPI ::HashedString
const& INT_RANGE_TYPE_NAME();
477MCNAPI ::HashedString
const& INT_TYPE_NAME();
479MCNAPI ::HashedString
const& MOLANG_TYPE_NAME();
481MCNAPI ::HashedString
const& OBJECT_TYPE_NAME();
483MCNAPI ::HashedString
const& STRING_TYPE_NAME();
485MCNAPI ::HashedString
const& VEC2_TYPE_NAME();
487MCNAPI ::HashedString
const& VEC3_TYPE_NAME();
489MCNAPI ::HashedString
const& VEC4_TYPE_NAME();
491MCNAPI ::HashedString
const& VERSION_TYPE_NAME();
Definition HashedString.h:5
Definition EmptyClass.h:7
Definition SemVersion.h:15
Definition ChargeAttackGoalDefinition.h:16
Definition CircleAroundAnchorGoalDefinition.h:16
Definition ControlledByPlayerGoalDefinition.h:15
Definition DragonFlamingGoalDefinition.h:15
Definition EatMobGoalDefinition.h:15
Definition RoarGoalDefinition.h:15
Definition SlimeAttackGoalDefinition.h:15
Definition SlimeFloatGoalDefinition.h:15
Definition SlimeKeepOnJumpingGoalDefinition.h:15
Definition SlimeRandomDirectionGoalDefinition.h:15
Definition SniffGoalDefinition.h:16
Definition SonicBoomGoalDefinition.h:15
Definition StayNearNoteblockGoalDefinition.h:15
Definition SwimIdleGoalDefinition.h:15
Definition SwimUpForBreathGoalDefinition.h:15
Definition SwimWanderGoalDefinition.h:15
Definition SwoopAttackGoalDefinition.h:16
Definition AvoidBlockGoalDefinition.h:19
Definition AvoidMobTypeGoalDefinition.h:19
Definition DigGoalDefinition.h:16
Definition DrinkMilkGoalDefinition.h:16
Definition ExploreOutskirtsGoalDefinition.h:16
Definition InvestigateSuspiciousLocationGoalDefinition.h:15
Definition DefendVillageTargetGoalDefinition.h:15
Definition DelayedAttackGoalDefinition.h:16
Definition DragonChargePlayerGoalDefinition.h:15
Definition DragonStrafePlayerGoalDefinition.h:15
Definition GuardianAttackGoalDefinition.h:15
Definition MeleeBoxAttackGoalDefinition.h:15
Definition MoveTowardsDwellingRestrictionGoalDefinition.h:16
Definition MoveTowardsHomeRestrictionGoalDefinition.h:15
Definition NearestAttackableTargetGoalDefinition.h:16
Definition StompAttackGoalDefinition.h:15
Definition DropItemForGoalDefinition.h:19
Definition FertilizeFarmBlockGoalDefinition.h:15
Definition HarvestFarmBlockGoalDefinition.h:15
Definition OcelotAttackGoalDefinition.h:15
Definition OfferFlowerGoalDefinition.h:17
Definition PlayDeadGoalDefinition.h:18
Definition PlayGoalDefinition.h:17
Definition RaiderCelebrationGoalDefinition.h:18
Definition RamAttackGoalDefinition.h:18
Definition RandomSearchAndDigGoalDefinition.h:18
Definition SwimWithEntityGoalDefinition.h:16
Definition TakeFlowerGoalDefinition.h:18
Definition TeleportToOwnerGoalDefinition.h:16
Definition TradeWithPlayerGoalDefinition.h:16
Definition VillagerCelebrationGoalDefinition.h:17
Definition WorkComposterGoalDefinition.h:15