LeviLamina
Loading...
Searching...
No Matches
Warden.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/actor/ActorDamageCause.h"
7#include "mc/world/actor/ai/util/ExpiringTick.h"
8#include "mc/world/actor/monster/Monster.h"
9#include "mc/world/level/Tick.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
16class ActorHurtResult;
17class EntityContext;
19// clang-format on
20
21class Warden : public ::Monster {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<8, 8, ::Tick> mTouchAngerCooldownExpiryTick;
26 ::ll::TypedStorage<8, 24, ::std::optional<::ExpiringTick>> mSonicBoomCooldown;
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 Warden();
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 virtual bool canDisableShield() /*override*/;
37
38 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
39
40 virtual void onSynchedDataUpdate(int dataId) /*override*/;
41
42 virtual void onPush(::Actor& source) /*override*/;
43
44 virtual void normalTick() /*override*/;
45
46 virtual void setTarget(::Actor* target) /*override*/;
47
48 virtual bool checkSpawnRules(bool fromSpawner) /*override*/;
49
50 virtual bool checkSpawnObstruction() const /*override*/;
51
52 virtual ::ActorHurtResult
53 _hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite) /*override*/;
54
55 virtual ::ActorHurtResult
56 doHurtTarget(::Actor* target, ::SharedTypes::Legacy::ActorDamageCause const& cause) /*override*/;
57 // NOLINTEND
58
59public:
60 // member functions
61 // NOLINTBEGIN
62 MCAPI Warden(
63 ::ActorDefinitionGroup* definitions,
64 ::ActorDefinitionIdentifier const& definitionName,
65 ::EntityContext& entityContext
66 );
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCAPI void* $ctor(
73 ::ActorDefinitionGroup* definitions,
74 ::ActorDefinitionIdentifier const& definitionName,
75 ::EntityContext& entityContext
76 );
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82 MCFOLD bool $canDisableShield();
83
84 MCAPI bool $isInvulnerableTo(::ActorDamageSource const& source) const;
85
86 MCFOLD void $onSynchedDataUpdate(int dataId);
87
88 MCAPI void $onPush(::Actor& source);
89
90 MCAPI void $normalTick();
91
92 MCAPI void $setTarget(::Actor* target);
93
94 MCFOLD bool $checkSpawnRules(bool fromSpawner);
95
96 MCAPI bool $checkSpawnObstruction() const;
97
98 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite);
99
100 MCAPI ::ActorHurtResult $doHurtTarget(::Actor* target, ::SharedTypes::Legacy::ActorDamageCause const& cause);
101
102
103 // NOLINTEND
104
105public:
106 // vftables
107 // NOLINTBEGIN
108 MCAPI static void** $vftable();
109 // NOLINTEND
110};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:37
Definition ActorHurtResult.h:5
Definition Actor.h:125
Definition EntityContext.h:17
Definition ActorDefinitionIdentifier.h:15