Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ICameraItemComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/HandSlot.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class BlockPos;
12class ItemStack;
13class Player;
14class Vec3;
15class CameraCallbacks;
16// clang-format on
17
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual ~ICameraItemComponent() = default;
23
24 virtual float blackBarsDuration() const = 0;
25
26 virtual float blackBarsScreenRatio() const = 0;
27
28 virtual float shutterScreenRatio() const = 0;
29
30 virtual float shutterDuration() const = 0;
31
32 virtual float pictureDuration() const = 0;
33
34 virtual float slideAwayDuration() const = 0;
35
36 virtual bool
37 canPlace(::ItemStack const& instance, ::Actor& actor, ::BlockPos const& blockPos, uchar face) const = 0;
38
39 virtual void takePictureNow(::Player& player, ::Actor* camera, ::Actor* target) = 0;
40
41 virtual void registerCallbacks(::CameraCallbacks* callbacks) = 0;
42
43 virtual void use(::ItemStack& instance, ::Player& player, ::HandSlot handSlot) = 0;
44
45 virtual void releaseUsing(::ItemStack& instance, ::Player& player, int durationLeft) = 0;
46
47 virtual bool useOn(::ItemStack&, ::Actor&, ::BlockPos const&, uchar, ::Vec3 const&, ::HandSlot) = 0;
48 // NOLINTEND
49};
Definition Actor.h:116
Definition BlockPos.h:14
Definition CameraCallbacks.h:5
Definition ICameraItemComponent.h:18
Definition ItemStack.h:26
Definition Player.h:131
Definition Vec3.h:10