LeviLamina
Loading...
Searching...
No Matches
FireAtTargetGoal.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/FloatRange.h"
8#include "mc/util/json_util/JsonSchemaObjectNode.h"
9#include "mc/world/actor/ActorDefinitionIdentifier.h"
10#include "mc/world/actor/ActorFilterGroup.h"
11#include "mc/world/actor/ai/goal/BaseGoalDefinition.h"
12#include "mc/world/actor/ai/goal/Goal.h"
13#include "mc/world/actor/projectile/ProjectileAnchor.h"
14
15// auto generated forward declare list
16// clang-format off
17class Actor;
18class Mob;
19namespace JsonUtil { class EmptyClass; }
20// clang-format on
21
22class FireAtTargetGoal : public ::Goal {
23public:
24 // FireAtTargetGoal inner types declare
25 // clang-format off
26 class Definition;
27 // clang-format on
28
29 // FireAtTargetGoal inner types define
31 public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mFilters;
35 ::ll::TypedStorage<4, 8, ::FloatRange> mAttackRange;
36 ::ll::TypedStorage<4, 4, float> mAttackCooldownInSeconds;
37 ::ll::TypedStorage<4, 4, float> mPreShootDelayInSeconds;
38 ::ll::TypedStorage<4, 4, float> mPostShootDelayInSeconds;
39 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationX;
40 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationY;
41 ::ll::TypedStorage<4, 4, float> mRangedFOV;
42 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mProjectileDefinition;
43 ::ll::TypedStorage<4, 4, ::ProjectileAnchor> mOwnerAnchor;
44 ::ll::TypedStorage<4, 12, ::Vec3> mOwnerOffset;
45 ::ll::TypedStorage<4, 4, ::ProjectileAnchor> mTargetAnchor;
46 ::ll::TypedStorage<4, 12, ::Vec3> mTargetOffset;
47 // NOLINTEND
48
49 public:
50 // virtual functions
51 // NOLINTBEGIN
52 // vIndex: 0
53 virtual ~Definition() /*override*/ = default;
54 // NOLINTEND
55
56 public:
57 // member functions
58 // NOLINTBEGIN
59 MCAPI void setOwnerAnchor(int const& value);
60
61 MCAPI void setProjectileDefinitionByName(::std::string const& name);
62
63 MCAPI void setTargetAnchor(int const& value);
64 // NOLINTEND
65
66 public:
67 // static functions
68 // NOLINTBEGIN
69 MCAPI static void buildSchema(
70 ::std::string const& name,
72 root
73 );
74 // NOLINTEND
75
76 public:
77 // vftables
78 // NOLINTBEGIN
79 MCNAPI static void** $vftable();
80 // NOLINTEND
81 };
82
83public:
84 // member variables
85 // NOLINTBEGIN
86 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
87 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mFilters;
88 ::ll::TypedStorage<4, 8, ::FloatRange> mAttackRangeSquared;
89 ::ll::TypedStorage<4, 4, uint> mAttackCooldownTicks;
90 ::ll::TypedStorage<4, 4, uint> mPreShootDelayTicks;
91 ::ll::TypedStorage<8, 8, uint64> mDurationTicks;
92 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationX;
93 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationY;
94 ::ll::TypedStorage<4, 4, float> mRangedFOV;
95 ::ll::TypedStorage<1, 1, bool> mTriedToShoot;
96 ::ll::TypedStorage<8, 8, uint64> mAttackCooldownTimeStamp;
97 ::ll::TypedStorage<8, 8, uint64> mPreShootDelayTimeStamp;
98 ::ll::TypedStorage<8, 8, uint64> mEndTimeStamp;
99 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mProjectileDefinition;
100 ::ll::TypedStorage<4, 4, ::ProjectileAnchor> mOwnerAnchor;
101 ::ll::TypedStorage<4, 12, ::Vec3> mOwnerOffset;
102 ::ll::TypedStorage<4, 4, ::ProjectileAnchor> mTargetAnchor;
103 ::ll::TypedStorage<4, 12, ::Vec3> mTargetOffset;
104 // NOLINTEND
105
106public:
107 // prevent constructor by default
108 FireAtTargetGoal& operator=(FireAtTargetGoal const&);
111
112public:
113 // virtual functions
114 // NOLINTBEGIN
115 // vIndex: 1
116 virtual bool canUse() /*override*/;
117
118 // vIndex: 2
119 virtual bool canContinueToUse() /*override*/;
120
121 // vIndex: 4
122 virtual void start() /*override*/;
123
124 // vIndex: 5
125 virtual void stop() /*override*/;
126
127 // vIndex: 6
128 virtual void tick() /*override*/;
129
130 // vIndex: 7
131 virtual void appendDebugInfo(::std::string& str) const /*override*/;
132
133 // vIndex: 0
134 virtual ~FireAtTargetGoal() /*override*/ = default;
135 // NOLINTEND
136
137public:
138 // member functions
139 // NOLINTBEGIN
140 MCAPI explicit FireAtTargetGoal(::Mob& mob);
141 // NOLINTEND
142
143public:
144 // static functions
145 // NOLINTBEGIN
146 MCAPI static ::Vec3
147 _getAnchorAndOffsetPosition(::Actor const& actor, ::ProjectileAnchor anchor, ::Vec3 const& offset);
148 // NOLINTEND
149
150public:
151 // constructor thunks
152 // NOLINTBEGIN
153 MCAPI void* $ctor(::Mob& mob);
154 // NOLINTEND
155
156public:
157 // virtual function thunks
158 // NOLINTBEGIN
159 MCAPI bool $canUse();
160
161 MCAPI bool $canContinueToUse();
162
163 MCAPI void $start();
164
165 MCAPI void $stop();
166
167 MCAPI void $tick();
168
169 MCAPI void $appendDebugInfo(::std::string& str) const;
170 // NOLINTEND
171
172public:
173 // vftables
174 // NOLINTBEGIN
175 MCNAPI static void** $vftable();
176 // NOLINTEND
177};
Definition Actor.h:102
Definition BaseGoalDefinition.h:10
Definition FireAtTargetGoal.h:30
static MCAPI void ** $vftable()
Definition FireAtTargetGoal.h:22
static MCAPI void ** $vftable()
Definition Goal.h:14
Definition JsonSchemaObjectNode.h:8
Definition Mob.h:47
Definition Vec3.h:10