LeviLamina
Loading...
Searching...
No Matches
Interaction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
7#include "mc/entity/components_json_legacy/InteractionParticle.h"
8#include "mc/entity/components_json_legacy/ItemSlotInfo.h"
9#include "mc/world/actor/ActorDefinitionTrigger.h"
10#include "mc/world/actor/ItemDefinition.h"
11
12// auto generated forward declare list
13// clang-format off
14class GameEvent;
16// clang-format on
17
18class Interaction {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<4, 4, int> mRequiresCooldown;
23 ::ll::TypedStorage<4, 4, int> mCooldownAfterBeingAttacked;
24 ::ll::TypedStorage<1, 1, bool> mSwing;
25 ::ll::TypedStorage<1, 1, bool> mUseItem;
26 ::ll::TypedStorage<1, 1, bool> mBarter;
27 ::ll::TypedStorage<1, 1, bool> mAdmire;
28 ::ll::TypedStorage<1, 1, bool> mGiveItem;
29 ::ll::TypedStorage<1, 1, bool> mTakeItem;
30 ::ll::TypedStorage<4, 4, int> mHurtItem;
31 ::ll::TypedStorage<4, 4, int> mAdjustHealthAmount;
32 ::ll::TypedStorage<4, 12, ::std::optional<::ItemSlotInfo>> mEquipItemSlot;
33 ::ll::TypedStorage<4, 12, ::std::optional<::ItemSlotInfo>> mDropItemSlot;
34 ::ll::TypedStorage<4, 12, ::std::optional<::ItemSlotInfo>> mRepairItemSlot;
35 ::ll::TypedStorage<4, 4, int> mRepairItemAmount;
36 ::ll::TypedStorage<4, 8, ::ItemDefinition> mTransformItem;
37 ::ll::TypedStorage<8, 32, ::std::string> mInteractText;
38 ::ll::TypedStorage<8, 32, ::std::string> mAddItemsTable;
39 ::ll::TypedStorage<8, 32, ::std::string> mSpawnItemsTable;
40 ::ll::TypedStorage<4, 12, ::InteractionParticle> mParticleData;
41 ::ll::TypedStorage<4, 4, float> mDropItemYOffset;
42 ::ll::TypedStorage<4, 4, float> mSpawnItemsYOffset;
43 ::ll::TypedStorage<8, 24, ::std::vector<::SharedTypes::Legacy::LevelSoundEvent>> mPlaySounds;
44 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionIdentifier>> mSpawnEntities;
45 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnInteraction;
46 ::ll::TypedStorage<8, 8, ::GameEvent const*> mVibration;
47 // NOLINTEND
48
49public:
50 // prevent constructor by default
51 Interaction& operator=(Interaction const&);
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI Interaction();
57
58 MCAPI Interaction(::Interaction&&);
59
60 MCAPI Interaction(::Interaction const&);
61
62 MCAPI void addActorDefinitionIdentifierByName(::std::string const& name);
63
64 MCAPI void addLevelSoundEventByName(::std::string const& name);
65
66 MCAPI void setCooldown(float const& seconds);
67
68 MCAPI void setCooldownAfterBeingAttacked(float const& seconds);
69
70 MCAPI void setDropItemSlot(::std::string const& slot);
71
72 MCAPI void setEquipItemSlot(::std::string const& slot);
73
74 MCAPI void setRepairItemAmount(int const& amount);
75
76 MCAPI void setRepairItemSlot(::std::string const& slot);
77
78 MCAPI void setTransformItem(::std::string const& name);
79
80 MCAPI void setVibrationByName(::std::string const& name);
81
82 MCAPI ~Interaction();
83 // NOLINTEND
84
85public:
86 // static functions
87 // NOLINTBEGIN
88 MCAPI static ::std::optional<::ItemSlotInfo> _tryConvertStringToItemSlotInfo(::std::string const& string);
89 // NOLINTEND
90
91public:
92 // constructor thunks
93 // NOLINTBEGIN
94 MCAPI void* $ctor();
95
96 MCAPI void* $ctor(::Interaction&&);
97
98 MCAPI void* $ctor(::Interaction const&);
99 // NOLINTEND
100
101public:
102 // destructor thunk
103 // NOLINTBEGIN
104 MCAPI void $dtor();
105 // NOLINTEND
106};
Definition GameEvent.h:8
Definition ActorDefinitionIdentifier.h:15