LeviLamina
Loading...
Searching...
No Matches
ContainerScreenSimulation.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7#include "mc/world/containers/ContainerEnumName.h"
8#include "mc/world/containers/controllers/ItemTakeType.h"
9#include "mc/world/inventory/network/ContainerScreenContext.h"
10#include "mc/world/inventory/simulation/ContainerScreenAutoplaceBehaviour.h"
11
12// auto generated forward declare list
13// clang-format off
17class ItemInstance;
18struct AutoPlaceTarget;
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 8, ::ContainerScreenActionScope*> mCurrentScope;
30 ::ll::TypedStorage<8, 40, ::ContainerScreenContext> mScreenContext;
31 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ContainerScreenValidation>> mScreenValidation;
32 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IContainerTransfer>> mContainerTransferInterface;
33 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ContainerEnumName, ::std::vector<::ContainerEnumName>>>
34 mCoalesceOrderMap;
35 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ContainerEnumName, ::std::vector<::AutoPlaceTarget>>>
36 mAutoPlaceOrderMap;
37 // NOLINTEND
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 // vIndex: 0
43 virtual ~ContainerScreenSimulation() /*override*/ = default;
44
45 // vIndex: 1
46 virtual ::ContainerScreenActionResult
48
49 // vIndex: 2
50 virtual ::ContainerScreenActionResult
51 tryPlaceAmount(::ContainerValidationSlotData const&, int, ::ContainerValidationSlotData const&);
52
53 // vIndex: 3
54 virtual ::ContainerScreenActionResult
56
57 // vIndex: 4
58 virtual ::ContainerScreenActionResult
59 tryTakeAmount(::ContainerValidationSlotData const&, int, ::ContainerValidationSlotData const&);
60
61 // vIndex: 5
62 virtual ::ContainerScreenActionResult
64
65 // vIndex: 6
66 virtual ::ContainerScreenActionResult
68
69 // vIndex: 7
70 virtual ::ContainerScreenActionResult
72
73 // vIndex: 8
74 virtual ::ContainerScreenActionResult
75 tryAddToStack(::ContainerValidationSlotData const&, ::ContainerValidationSlotData const&, ::ItemTakeType);
76
77 // vIndex: 9
78 virtual ::ContainerScreenActionResult tryCoalesce(::ContainerValidationSlotData const&, ::ContainerEnumName);
79
80 // vIndex: 10
81 virtual ::ContainerScreenActionResult
82 tryAutoPlace(::ContainerValidationSlotData const&, ::ItemTransferAmount, ::ContainerScreenAutoplaceBehaviour);
83
84 // vIndex: 11
85 virtual ::ContainerScreenActionResult trySplitSingle(
88 ::std::vector<::ContainerSimulationSplitStack>&
89 );
90
91 // vIndex: 12
92 virtual ::ContainerScreenActionResult trySplitMultiple(
94 int,
95 ::ItemInstance const&,
97 ::std::vector<::ContainerSimulationSplitStack>&,
98 int&
99 );
100
101 // vIndex: 13
102 virtual ::ContainerScreenActionResult
103 tryDrop(::ContainerValidationSlotData const&, ::ItemTransferAmount const, bool);
104
105 // vIndex: 14
106 virtual ::ContainerScreenActionResult tryDestroy(::ContainerValidationSlotData const&, ::ItemTransferAmount const);
107
108 // vIndex: 15
109 virtual ::ContainerScreenActionResult tryConsume(::ContainerValidationSlotData const&, ::ItemTransferAmount const);
110
111 // vIndex: 16
112 virtual ::ContainerScreenActionResult tryConsumeExpected(::ContainerValidationSlotData const&);
113
114 // vIndex: 17
115 virtual void _registerCoalesceOrder();
116
117 // vIndex: 18
118 virtual void _registerAutoPlaceOrder();
119 // NOLINTEND
120
121public:
122 // virtual function thunks
123 // NOLINTBEGIN
124
125 // NOLINTEND
126};
Definition EnableNonOwnerReferences.h:7
Definition ContainerScreenActionScope.h:14
Definition ContainerScreenSimulation.h:25
Definition ContainerScreenValidation.h:27
Definition IContainerTransfer.h:11
Definition ItemInstance.h:16
Definition AutoPlaceTarget.h:5
Definition ContainerScreenActionResult.h:11
Definition ContainerSimulationSplitStack.h:8
Definition ContainerValidationSlotData.h:8
Definition ItemTransferAmount.h:5