LeviLamina
Loading...
Searching...
No Matches
EditorStructureBlockSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/editor/structure/EditorStructureTemplate.h"
7#include "mc/world/actor/ActorType.h"
8#include "mc/world/level/BlockPos.h"
9#include "mc/world/level/BlockSource.h"
10#include "mc/world/phys/AABB.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
15class Block;
19struct Bounds;
20// clang-format on
21
22class EditorStructureBlockSource : public ::BlockSource {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 24, ::AABB> mBounds;
27 ::ll::TypedStorage<8, 408, ::Editor::EditorStructureTemplate> mTemplate;
28 ::ll::TypedStorage<4, 12, ::BlockPos const> mOffset;
29 // NOLINTEND
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual ~EditorStructureBlockSource() /*override*/ = default;
35
36 virtual void addListener(::BlockSourceListener&) /*override*/;
37
38 virtual void removeListener(::BlockSourceListener&) /*override*/;
39
40 virtual ::gsl::span<::gsl::not_null<::Actor*>>
41 fetchEntities(::Actor const*, ::AABB const&, bool, bool) /*override*/;
42
43 virtual ::gsl::span<::gsl::not_null<::Actor*>>
44 fetchEntities(::ActorType, ::AABB const&, ::Actor const*, ::std::function<bool(::Actor*)>) /*override*/;
45
46 virtual bool hasChunksAt(::Bounds const&, bool) const /*override*/;
47
48 virtual bool hasChunksAt(::BlockPos const&, int, bool) const /*override*/;
49
50 virtual bool hasChunksAt(::AABB const&, bool) const /*override*/;
51
52 virtual bool setBlock(
53 ::BlockPos const& pos,
54 ::Block const& block,
55 int,
58 ) /*override*/;
59 // NOLINTEND
60
61public:
62 // virtual function thunks
63 // NOLINTBEGIN
65
67
68 MCNAPI ::gsl::span<::gsl::not_null<::Actor*>> $fetchEntities(::Actor const*, ::AABB const&, bool, bool);
69
70 MCNAPI ::gsl::span<::gsl::not_null<::Actor*>>
71 $fetchEntities(::ActorType, ::AABB const&, ::Actor const*, ::std::function<bool(::Actor*)>);
72
73 MCNAPI bool $hasChunksAt(::Bounds const&, bool) const;
74
75 MCNAPI bool $hasChunksAt(::BlockPos const&, int, bool) const;
76
77 MCNAPI bool $hasChunksAt(::AABB const&, bool) const;
78
79 MCNAPI bool $setBlock(
80 ::BlockPos const& pos,
81 ::Block const& block,
82 int,
85 );
86
87
88 // NOLINTEND
89
90public:
91 // vftables
92 // NOLINTBEGIN
93 MCNAPI static void** $vftable();
94 // NOLINTEND
95};
Definition AABB.h:18
Definition Actor.h:105
Definition BlockChangeContext.h:10
Definition BlockPos.h:19
Definition BlockSourceListener.h:18
Definition Block.h:43
Definition EditorStructureBlockSource.h:22
MCAPI void $removeListener(::BlockSourceListener &)
MCAPI ::gsl::span<::gsl::not_null<::Actor * > > $fetchEntities(::ActorType, ::AABB const &, ::Actor const *, ::std::function< bool(::Actor *)>)
MCAPI ::gsl::span<::gsl::not_null<::Actor * > > $fetchEntities(::Actor const *, ::AABB const &, bool, bool)
MCAPI void $addListener(::BlockSourceListener &)
static MCAPI void ** $vftable()
MCAPI bool $setBlock(::BlockPos const &pos, ::Block const &block, int, ::ActorBlockSyncMessage const *, ::BlockChangeContext const &)
MCAPI bool $hasChunksAt(::AABB const &, bool) const
MCAPI bool $hasChunksAt(::Bounds const &, bool) const
MCAPI bool $hasChunksAt(::BlockPos const &, int, bool) const
Definition ActorBlockSyncMessage.h:8
Definition Bounds.h:8