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/deps/shared_types/legacy/actor/ProjectileAnchor.h"
8#include "mc/util/FloatRange.h"
9#include "mc/world/actor/ActorDefinitionIdentifier.h"
10#include "mc/world/actor/ActorFilterGroup.h"
11#include "mc/world/actor/ai/goal/BaseGoal.h"
12
13// auto generated forward declare list
14// clang-format off
15class Actor;
16class Mob;
17struct GoalId;
18// clang-format on
19
20class FireAtTargetGoal : public ::BaseGoal {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
25 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mFilters;
26 ::ll::TypedStorage<4, 8, ::FloatRange> mAttackRangeSquared;
27 ::ll::TypedStorage<4, 4, uint> mAttackCooldownTicks;
28 ::ll::TypedStorage<4, 4, uint> mPreShootDelayTicks;
29 ::ll::TypedStorage<8, 8, uint64> mDurationTicks;
30 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationX;
31 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationY;
32 ::ll::TypedStorage<4, 4, float> mRangedFOV;
33 ::ll::TypedStorage<1, 1, bool> mTriedToShoot;
34 ::ll::TypedStorage<8, 8, uint64> mAttackCooldownTimeStamp;
35 ::ll::TypedStorage<8, 8, uint64> mPreShootDelayTimeStamp;
36 ::ll::TypedStorage<8, 8, uint64> mEndTimeStamp;
37 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mProjectileDefinition;
38 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::ProjectileAnchor> mOwnerAnchor;
39 ::ll::TypedStorage<4, 12, ::Vec3> mOwnerOffset;
40 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::ProjectileAnchor> mTargetAnchor;
41 ::ll::TypedStorage<4, 12, ::Vec3> mTargetOffset;
42 ::ll::TypedStorage<1, 1, bool> mUseRotation;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 FireAtTargetGoal& operator=(FireAtTargetGoal const&);
48 FireAtTargetGoal(FireAtTargetGoal const&);
49 FireAtTargetGoal();
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual bool canUse() /*override*/;
55
56 virtual bool canContinueToUse() /*override*/;
57
58 virtual void start() /*override*/;
59
60 virtual void stop() /*override*/;
61
62 virtual void tick() /*override*/;
63
64 virtual void appendDebugInfo(::std::string& str) const /*override*/;
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
70 MCAPI FireAtTargetGoal(::Mob& mob, ::std::string name, ::GoalId const& goalId);
71 // NOLINTEND
72
73public:
74 // static functions
75 // NOLINTBEGIN
76 MCAPI static ::Vec3 getAnchorAndOffsetPosition(
77 ::Actor const& actor,
78 ::SharedTypes::Legacy::ProjectileAnchor anchor,
79 ::Vec3 const& offset,
80 bool applyRotation
81 );
82 // NOLINTEND
83
84public:
85 // constructor thunks
86 // NOLINTBEGIN
87 MCAPI void* $ctor(::Mob& mob, ::std::string name, ::GoalId const& goalId);
88 // NOLINTEND
89
90public:
91 // virtual function thunks
92 // NOLINTBEGIN
93 MCAPI bool $canUse();
94
95 MCAPI bool $canContinueToUse();
96
97 MCAPI void $start();
98
99 MCAPI void $stop();
100
101 MCAPI void $tick();
102
103 MCAPI void $appendDebugInfo(::std::string& str) const;
104
105
106 // NOLINTEND
107
108public:
109 // vftables
110 // NOLINTBEGIN
111 MCNAPI static void** $vftable();
112 // NOLINTEND
113};
Definition Actor.h:113
Definition BaseGoal.h:12
static MCAPI void ** $vftable()
Definition Mob.h:56
Definition Vec3.h:10
Definition GoalId.h:5