LeviLamina
Loading...
Searching...
No Matches
POIInstance.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/world/actor/ai/village/POIType.h"
8#include "mc/world/level/BlockPos.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class BlockSource;
14class CompoundTag;
15class Random;
16class Village;
17// clang-format on
18
19class POIInstance {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 48, ::HashedString> mName;
24 ::ll::TypedStorage<8, 48, ::HashedString> mInitEvent;
25 ::ll::TypedStorage<8, 48, ::HashedString> mEndEvent;
26 ::ll::TypedStorage<8, 8, ::Village*> mVillage;
27 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
28 ::ll::TypedStorage<8, 8, uint64> mOwnerCount;
29 ::ll::TypedStorage<8, 8, uint64> mOwnerCapacity;
30 ::ll::TypedStorage<8, 8, uint64> mWeight;
31 ::ll::TypedStorage<4, 4, float> mRadius;
32 ::ll::TypedStorage<4, 4, ::POIType> mType;
33 ::ll::TypedStorage<8, 48, ::HashedString> mSoundEvent;
34 ::ll::TypedStorage<2, 2, short> mArrivalFailuresCount;
35 ::ll::TypedStorage<1, 1, bool> mUseBoundingBox;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 POIInstance();
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI POIInstance(
46 ::BlockPos const& pos,
47 bool useBoundingBox,
48 ::std::string name,
49 ::POIType type,
50 float radius,
51 uint64 maxCapacity,
52 uint64 weight,
53 ::std::string soundEvent,
54 ::std::string initEvent,
55 ::std::string endEvent
56 );
57
58 MCFOLD ::HashedString const& getName() const;
59
60 MCFOLD ::BlockPos const& getPosition() const;
61
62 MCAPI float getRadius() const;
63
64 MCAPI ::AABB getSecondBlockFullAABB(::BlockSource& region);
65
66 MCFOLD ::HashedString const& getSoundEvent() const;
67
68 MCAPI void incrementArrivalFailureCount();
69
70 MCAPI void resetArrivalFailureCount();
71
72 MCAPI void save(::CompoundTag& tag) const;
73
74 MCAPI void trySpawnParticles(::BlockSource& region, ::Random& random, int particleType) const;
75
76 MCAPI bool useBoundingBox() const;
77
78 MCAPI ~POIInstance();
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCAPI void* $ctor(
85 ::BlockPos const& pos,
86 bool useBoundingBox,
87 ::std::string name,
88 ::POIType type,
89 float radius,
90 uint64 maxCapacity,
91 uint64 weight,
92 ::std::string soundEvent,
93 ::std::string initEvent,
94 ::std::string endEvent
95 );
96 // NOLINTEND
97
98public:
99 // destructor thunk
100 // NOLINTBEGIN
101 MCAPI void $dtor();
102 // NOLINTEND
103};
Definition AABB.h:18
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition CompoundTag.h:23
Definition Random.h:10
Definition Village.h:34