LeviLamina
Loading...
Searching...
No Matches
ActorDimensionTransferer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/world/level/IActorDimensionTransferProxy.h"
8#include "mc/world/level/IActorDimensionTransferer.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class ActorManager;
14class Dimension;
16class IDimension;
17class PortalForcer;
18class Vec3;
19struct DimensionType;
20// clang-format on
21
22class ActorDimensionTransferer : public ::IActorDimensionTransferer {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::IActorDimensionTransferProxy>>>
27 mActorDimensionTransferProxy;
28 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ActorManager> const> mActorManager;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 ActorDimensionTransferer();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~ActorDimensionTransferer() /*override*/ = default;
39
40 virtual void setupActorForTransfer(::Actor& actor) /*override*/;
41
42 virtual ::Vec3 findTargetPositionAndSetPosition(
43 ::Actor& actor,
44 ::DimensionType toId,
45 ::DimensionType fromId,
46 ::IDimension const& toDimension,
47 ::PortalForcer const& portalForcer,
48 ::std::optional<::Vec3> const& actorPosition
49 ) /*override*/;
50
51 virtual void transferActor(::Actor& actor, ::Dimension& toDimension, ::Vec3 const& targetPosition) /*override*/;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI ActorDimensionTransferer(
58 ::std::unique_ptr<::IActorDimensionTransferProxy> actorDimensionTransferProxy,
59 ::Bedrock::NotNullNonOwnerPtr<::ActorManager> actorManager
60 );
61 // NOLINTEND
62
63public:
64 // constructor thunks
65 // NOLINTBEGIN
66 MCAPI void* $ctor(
67 ::std::unique_ptr<::IActorDimensionTransferProxy> actorDimensionTransferProxy,
68 ::Bedrock::NotNullNonOwnerPtr<::ActorManager> actorManager
69 );
70 // NOLINTEND
71
72public:
73 // virtual function thunks
74 // NOLINTBEGIN
75 MCAPI void $setupActorForTransfer(::Actor& actor);
76
77 MCAPI ::Vec3 $findTargetPositionAndSetPosition(
78 ::Actor& actor,
79 ::DimensionType toId,
80 ::DimensionType fromId,
81 ::IDimension const& toDimension,
82 ::PortalForcer const& portalForcer,
83 ::std::optional<::Vec3> const& actorPosition
84 );
85
86 MCAPI void $transferActor(::Actor& actor, ::Dimension& toDimension, ::Vec3 const& targetPosition);
87
88
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCAPI static void** $vftable();
95 // NOLINTEND
96};
Definition ActorManager.h:32
Definition Actor.h:125
Definition Dimension.h:89
Definition IActorDimensionTransferProxy.h:13
Definition IActorDimensionTransferer.h:15
Definition IDimension.h:24
Definition PortalForcer.h:23
Definition Vec3.h:10
Definition DimensionType.h:5