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 MCAPI void addGoal(int priority, ::std::unique_ptr<::BaseGoal> goal);
33
34 MCAPI void buildDebugInfo(::std::string& out) const;
35
36 MCAPI void clearAllGoals();
37
38 MCAPI void onPlayerDimensionChanged(::Player* player, ::DimensionType fromDimension, ::DimensionType toDimension);
39
40 MCAPI bool removeGoal(::GoalId typeId);
41
42 MCAPI void stopNonTargetedGoals();
43 // NOLINTEND
44};
Definition BaseGoal.h:12
Definition GoalSelectorComponent.h:14
Definition Player.h:129
Definition PrioritizedGoal.h:10
Definition DimensionType.h:5
Definition GoalId.h:5