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;
11// clang-format on
12
14public:
15 // GoalSelectorComponent inner types define
16 using GoalCondition = bool (*)(::std::pair<ushort, ::PrioritizedGoal>&);
17
18 using GoalElement = ::std::pair<ushort, ::PrioritizedGoal>;
19
20 using GoalMap = ::std::vector<::std::pair<ushort, ::PrioritizedGoal>>;
21
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<ushort, ::PrioritizedGoal>>> mGoalMap;
26 // NOLINTEND
27
28public:
29 // member functions
30 // NOLINTBEGIN
31 MCAPI ::std::_Vector_const_iterator<
32 ::std::_Vector_val<::std::_Simple_types<::std::pair<ushort, ::PrioritizedGoal>>>>
33 _findGoalByKey(ushort key) const;
34
35 MCAPI void addGoal(int priority, ::std::unique_ptr<::BaseGoal> goal);
36
37 MCAPI void buildDebugInfo(::std::string& out) const;
38
39 MCAPI void clearAllGoals();
40
41 MCAPI void clearNonTargetedGoals();
42
43 MCAPI void clearTargetGoals();
44
45 MCFOLD ::std::vector<::std::pair<ushort, ::PrioritizedGoal>>& getGoalMap();
46
47 MCAPI void onPlayerDimensionChanged(::Player* player, ::DimensionType fromDimension, ::DimensionType toDimension);
48
49 MCAPI bool removeGoal(ushort typeId);
50
51 MCAPI void stopAllGoals();
52
53 MCAPI void stopNonTargetedGoals();
54 // NOLINTEND
55};
Definition BaseGoal.h:11
Definition GoalSelectorComponent.h:13
Definition Player.h:137
Definition PrioritizedGoal.h:10
Definition DimensionType.h:5