LeviLamina
Loading...
Searching...
No Matches
PlayGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/util/json_util/JsonSchemaObjectNode.h"
8#include "mc/world/actor/TempEPtr.h"
9#include "mc/world/actor/ai/goal/BaseGoalDefinition.h"
10#include "mc/world/actor/ai/goal/Goal.h"
11
12// auto generated forward declare list
13// clang-format off
14class Mob;
15struct MobDescriptor;
16namespace JsonUtil { class EmptyClass; }
17// clang-format on
18
19class PlayGoal : public ::Goal {
20public:
21 // PlayGoal inner types declare
22 // clang-format off
23 class PlayDefinition;
24 // clang-format on
25
26 // PlayGoal inner types define
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<4, 4, float> mSpeedModifier;
32 ::ll::TypedStorage<4, 4, float> mMaxPlayDurationSeconds;
33 ::ll::TypedStorage<4, 4, float> mChanceToStart;
34 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mFriendTypes;
35 ::ll::TypedStorage<4, 12, ::Vec3> mFriendSearchArea;
36 ::ll::TypedStorage<4, 4, int> mRandomPosSearchRange;
37 ::ll::TypedStorage<4, 4, int> mRandomPosSearchHeight;
38 ::ll::TypedStorage<4, 4, int> mFollowDistanceInBlocks;
39 // NOLINTEND
40
41 public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ~PlayDefinition() /*override*/ = default;
45 // NOLINTEND
46
47 public:
48 // static functions
49 // NOLINTBEGIN
50 MCAPI static void buildSchema(
51 ::std::string const& name,
53 root
54 );
55 // NOLINTEND
56
57 public:
58 // vftables
59 // NOLINTBEGIN
60 MCNAPI static void** $vftable();
61 // NOLINTEND
62 };
63
64public:
65 // member variables
66 // NOLINTBEGIN
67 ::ll::TypedStorage<4, 4, float> mSpeedModifier;
68 ::ll::TypedStorage<4, 4, int> mMaxPlayDurationTicks;
69 ::ll::TypedStorage<4, 4, float> mChanceToStart;
70 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mFriendTypes;
71 ::ll::TypedStorage<4, 12, ::Vec3> mFriendSearchArea;
72 ::ll::TypedStorage<4, 4, int> mRandomPosSearchRange;
73 ::ll::TypedStorage<4, 4, int> mRandomPosSearchHeight;
74 ::ll::TypedStorage<4, 4, int> mFollowDistanceInBlocksSquared;
75 ::ll::TypedStorage<4, 4, int> mCurrentPlayDurationTicks;
76 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
77 ::ll::TypedStorage<8, 40, ::TempEPtr<::Mob>> mFollowFriend;
78 // NOLINTEND
79
80public:
81 // prevent constructor by default
82 PlayGoal& operator=(PlayGoal const&);
83 PlayGoal(PlayGoal const&);
84 PlayGoal();
85
86public:
87 // virtual functions
88 // NOLINTBEGIN
89 virtual bool canUse() /*override*/;
90
91 virtual bool canContinueToUse() /*override*/;
92
93 virtual void start() /*override*/;
94
95 virtual void stop() /*override*/;
96
97 virtual void tick() /*override*/;
98
99 virtual void appendDebugInfo(::std::string& str) const /*override*/;
100
101 virtual ~PlayGoal() /*override*/ = default;
102 // NOLINTEND
103
104public:
105 // virtual function thunks
106 // NOLINTBEGIN
107 MCAPI bool $canUse();
108
109 MCAPI bool $canContinueToUse();
110
111 MCAPI void $start();
112
113 MCAPI void $stop();
114
115 MCAPI void $tick();
116
117 MCAPI void $appendDebugInfo(::std::string& str) const;
118
119
120 // NOLINTEND
121
122public:
123 // vftables
124 // NOLINTBEGIN
125 MCNAPI static void** $vftable();
126 // NOLINTEND
127};
Definition BaseGoalDefinition.h:10
Definition Goal.h:14
Definition EmptyClass.h:7
Definition JsonSchemaObjectNode.h:8
Definition Mob.h:50
Definition PlayGoal.h:27
static MCAPI void ** $vftable()
static MCAPI void ** $vftable()
Definition MobDescriptor.h:8