Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
GoalSelectorComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class BaseGoal;
8class Player;
10struct DimensionType;
11struct GoalId;
12// clang-format on
13
15public:
16 // GoalSelectorComponent inner types define
17 using GoalCondition = bool (*)(::std::pair<::GoalId, ::PrioritizedGoal>&);
18
19 using GoalElement = ::std::pair<::GoalId, ::PrioritizedGoal>;
20
21 using GoalMap = ::std::vector<::std::pair<::GoalId, ::PrioritizedGoal>>;
22
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::GoalId, ::PrioritizedGoal>>> mGoalMap;
27 // NOLINTEND
28
29public:
30 // member functions
31 // NOLINTBEGIN
32 MCNAPI void addGoal(int priority, ::std::unique_ptr<::BaseGoal> goal);
33
34 MCNAPI void buildDebugInfo(::std::string& out) const;
35
36 MCNAPI void clearAllGoals();
37
38 MCNAPI void onPlayerDimensionChanged(::Player* player, ::DimensionType fromDimension, ::DimensionType toDimension);
39
40 MCNAPI bool removeGoal(::GoalId typeId);
41
42 MCNAPI void stopNonTargetedGoals();
43 // NOLINTEND
44};
Definition BaseGoal.h:12
Definition GoalSelectorComponent.h:14
MCAPI void buildDebugInfo(::std::string &out) const
MCAPI void clearAllGoals()
MCAPI void stopNonTargetedGoals()
MCAPI bool removeGoal(::GoalId typeId)
MCAPI void addGoal(int priority, ::std::unique_ptr<::BaseGoal > goal)
MCAPI void onPlayerDimensionChanged(::Player *player, ::DimensionType fromDimension, ::DimensionType toDimension)
Definition Player.h:131
Definition PrioritizedGoal.h:10
Definition DimensionType.h:5
Definition GoalId.h:5