LeviLamina
Loading...
Searching...
No Matches
ExperienceOrb.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/Actor.h"
7#include "mc/world/actor/ActorInitializationMethod.h"
8
9// auto generated forward declare list
10// clang-format off
13class BlockSource;
14class CompoundTag;
15class DataLoadHelper;
16class EntityContext;
17class Level;
18class Player;
19class Vec3;
22// clang-format on
23
24class ExperienceOrb : public ::Actor {
25public:
26 // ExperienceOrb inner types define
27 enum class DropType : uchar {
28 NoType = 0,
29 FromBlock = 1,
30 FromMob = 2,
31 FromPlayer = 3,
32 };
33
34public:
35 // member variables
36 // NOLINTBEGIN
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 ExperienceOrb& operator=(ExperienceOrb const&);
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 // vIndex: 2
54 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
55
56 // vIndex: 137
57 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
58
59 // vIndex: 136
60 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
61
62 // vIndex: 39
63 virtual void playerTouch(::Player& player) /*override*/;
64
65 // vIndex: 35
66 virtual float getShadowRadius() const /*override*/;
67
68 // vIndex: 64
69 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
70
71 // vIndex: 135
72 virtual bool _hurt(::ActorDamageSource const&, float damage, bool, bool) /*override*/;
73
74 // vIndex: 132
75 virtual void doWaterSplashEffect() /*override*/;
76
77 // vIndex: 8
78 virtual ~ExperienceOrb() /*override*/ = default;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI ExperienceOrb(
85 ::ActorDefinitionGroup* definitions,
86 ::ActorDefinitionIdentifier const& definitionName,
87 ::EntityContext& entityContext
88 );
89
90 MCAPI void _handleMending(::Player& player);
91
92 MCAPI void _tryMergeExistingOrbs();
93
94 MCAPI int getValue() const;
95
96 MCAPI void postNormalTick();
97 // NOLINTEND
98
99public:
100 // static functions
101 // NOLINTBEGIN
102 MCAPI static void _spawnOrb(::BlockSource& region, ::Level& level, ::Vec3 const& pos, int orbXPValue);
103
104 MCAPI static bool _tryMergeIntoExistingOrbs(::BlockSource& region, ::Vec3 const& pos, int xpValue);
105
106 MCAPI static void spawnOrbs(
107 ::BlockSource& region,
108 ::Vec3 const& pos,
109 int xpValue,
110 ::ExperienceOrb::DropType dropType,
111 ::Player* owner
112 );
113 // NOLINTEND
114
115public:
116 // constructor thunks
117 // NOLINTBEGIN
118 MCAPI void* $ctor(
119 ::ActorDefinitionGroup* definitions,
120 ::ActorDefinitionIdentifier const& definitionName,
121 ::EntityContext& entityContext
122 );
123 // NOLINTEND
124
125public:
126 // destructor thunk
127 // NOLINTBEGIN
128
129 // NOLINTEND
130
131public:
132 // virtual function thunks
133 // NOLINTBEGIN
134 MCAPI void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
135
136 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
137
138 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
139
140 MCAPI void $playerTouch(::Player& player);
141
142 MCFOLD float $getShadowRadius() const;
143
144 MCAPI bool $isInvulnerableTo(::ActorDamageSource const& source) const;
145
146 MCAPI bool $_hurt(::ActorDamageSource const&, float damage, bool, bool);
147
148 MCFOLD void $doWaterSplashEffect();
149 // NOLINTEND
150
151public:
152 // vftables
153 // NOLINTBEGIN
154 MCAPI static void** $vftable();
155 // NOLINTEND
156};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:27
Definition Actor.h:104
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition DataLoadHelper.h:20
Definition EntityContext.h:16
Definition ExperienceOrb.h:24
Definition Level.h:234
Definition Player.h:119
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:13
Definition VariantParameterList.h:5
Definition Alias.h:14