LeviLamina
Loading...
Searching...
No Matches
CameraItemComponentLegacy.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/molang/MolangVersion.h"
7#include "mc/world/item/components/ICameraItemComponent.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class BlockPos;
13class CameraCallbacks;
14class CompoundTag;
15class ItemStack;
16class Player;
17class Vec3;
18namespace Json { class Value; }
19// clang-format on
20
22public:
23 // CameraItemComponentLegacy inner types define
24 enum class UseAction : uchar {
25 None = 0,
26 Place = 1,
27 Use = 2,
28 };
29
30public:
31 // member variables
32 // NOLINTBEGIN
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 // vIndex: 0
55 virtual ~CameraItemComponentLegacy() /*override*/ = default;
56
57 // vIndex: 8
58 virtual void takePictureNow(::Player& player, ::Actor* camera, ::Actor* target) /*override*/;
59
60 // vIndex: 10
61 virtual void use(::ItemStack& instance, ::Player& player) /*override*/;
62
63 // vIndex: 11
64 virtual void releaseUsing(::ItemStack& instance, ::Player& player, int durationLeft) /*override*/;
65
66 // vIndex: 12
67 virtual bool
68 useOn(::ItemStack& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face, ::Vec3 const&) /*override*/;
69
70 // vIndex: 7
71 virtual bool canPlace(::ItemStack const& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face) const
72 /*override*/;
73
74 // vIndex: 1
75 virtual float blackBarsDuration() const /*override*/;
76
77 // vIndex: 2
78 virtual float blackBarsScreenRatio() const /*override*/;
79
80 // vIndex: 3
81 virtual float shutterScreenRatio() const /*override*/;
82
83 // vIndex: 4
84 virtual float shutterDuration() const /*override*/;
85
86 // vIndex: 5
87 virtual float pictureDuration() const /*override*/;
88
89 // vIndex: 6
90 virtual float slideAwayDuration() const /*override*/;
91
92 // vIndex: 9
93 virtual void registerCallbacks(::CameraCallbacks* callbacks) /*override*/;
94 // NOLINTEND
95
96public:
97 // member functions
98 // NOLINTBEGIN
99 MCAPI ::CameraItemComponentLegacy::UseAction
100 _tryPlace(::ItemStack const& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face, ::Vec3& spawnPos)
101 const;
102
103 MCAPI ::std::unique_ptr<::CompoundTag> buildNetworkTag() const;
104
105 MCAPI bool init(::Json::Value const& data, ::MolangVersion);
106 // NOLINTEND
107
108public:
109 // static functions
110 // NOLINTBEGIN
111 MCAPI static ::Json::Value initializeFromNetwork(::CompoundTag const& tag);
112 // NOLINTEND
113
114public:
115 // destructor thunk
116 // NOLINTBEGIN
117
118 // NOLINTEND
119
120public:
121 // virtual function thunks
122 // NOLINTBEGIN
123 MCAPI void $takePictureNow(::Player& player, ::Actor* camera, ::Actor* target);
124
125 MCAPI void $use(::ItemStack& instance, ::Player& player);
126
127 MCAPI void $releaseUsing(::ItemStack& instance, ::Player& player, int durationLeft);
128
129 MCAPI bool $useOn(::ItemStack& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face, ::Vec3 const&);
130
131 MCAPI bool $canPlace(::ItemStack const& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face) const;
132
133 MCFOLD float $blackBarsDuration() const;
134
135 MCFOLD float $blackBarsScreenRatio() const;
136
137 MCAPI float $shutterScreenRatio() const;
138
139 MCFOLD float $shutterDuration() const;
140
141 MCAPI float $pictureDuration() const;
142
143 MCAPI float $slideAwayDuration() const;
144
145 MCAPI void $registerCallbacks(::CameraCallbacks* callbacks);
146 // NOLINTEND
147
148public:
149 // vftables
150 // NOLINTBEGIN
151 MCAPI static void** $vftable();
152 // NOLINTEND
153};
Definition Actor.h:104
Definition BlockPos.h:18
Definition CameraCallbacks.h:11
Definition CameraItemComponentLegacy.h:21
Definition CompoundTag.h:13
Definition ICameraItemComponent.h:15
Definition ItemStack.h:25
Definition Value.h:16
Definition Player.h:119
Definition Vec3.h:10
Definition Alias.h:14