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