LeviLamina
Loading...
Searching...
No Matches
SurvivalMode.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/gamemode/GameMode.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class Block;
12class BlockPos;
14class ItemStack;
15class Vec3;
16// clang-format on
17
18class SurvivalMode : public ::GameMode {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<1, 1, bool> mIsTrialMode;
23 ::ll::TypedStorage<1, 1, bool> mHasDisplayedIntro;
24 ::ll::TypedStorage<4, 4, int> mTrialEndedReminder;
25 ::ll::TypedStorage<8, 64, ::std::function<void(bool)>> mShowUpsellScreenCallback;
26 // NOLINTEND
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 // vIndex: 15
32 virtual bool attack(::Actor& entity) /*override*/;
33
34 // vIndex: 14
35 virtual bool interact(::Actor& entity, ::Vec3 const& location) /*override*/;
36
37 // vIndex: 2
38 virtual bool destroyBlock(::BlockPos const& pos, uchar face) /*override*/;
39
40 // vIndex: 1
41 virtual bool startDestroyBlock(::BlockPos const& pos, uchar face, bool& hasDestroyedBlock) /*override*/;
42
43 // vIndex: 5
44 virtual void startBuildBlock(::BlockPos const& pos, uchar face) /*override*/;
45
46 // vIndex: 6
47 virtual bool buildBlock(::BlockPos const& pos, uchar face, bool const isSimTick) /*override*/;
48
49 // vIndex: 11
50 virtual bool useItem(::ItemStack& item) /*override*/;
51
52 // vIndex: 12
53 virtual bool useItemAsAttack(::ItemStack& item) /*override*/;
54
55 // vIndex: 13
56 virtual ::InteractionResult useItemOn(
57 ::ItemStack& item,
58 ::BlockPos const& at,
59 uchar face,
60 ::Vec3 const& hit,
61 ::Block const* targetBlock,
62 bool isFirstEvent
63 ) /*override*/;
64
65 // vIndex: 9
66 virtual void tick() /*override*/;
67
68 // vIndex: 17
69 virtual void setTrialMode(bool isEnabled) /*override*/;
70
71 // vIndex: 18
72 virtual bool isInTrialMode() /*override*/;
73
74 // vIndex: 19
75 virtual void registerUpsellScreenCallback(::std::function<void(bool)> callback) /*override*/;
76
77 // vIndex: 0
78 virtual ~SurvivalMode() /*override*/ = default;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI void _messagePlayers(::std::string message);
85
86 MCAPI void _showTrialReminder(bool force);
87 // NOLINTEND
88
89public:
90 // static variables
91 // NOLINTBEGIN
92 MCAPI static bool& mTrialHasEnded();
93 // NOLINTEND
94
95public:
96 // virtual function thunks
97 // NOLINTBEGIN
98 MCAPI bool $attack(::Actor& entity);
99
100 MCAPI bool $interact(::Actor& entity, ::Vec3 const& location);
101
102 MCAPI bool $destroyBlock(::BlockPos const& pos, uchar face);
103
104 MCAPI bool $startDestroyBlock(::BlockPos const& pos, uchar face, bool& hasDestroyedBlock);
105
106 MCAPI void $startBuildBlock(::BlockPos const& pos, uchar face);
107
108 MCAPI bool $buildBlock(::BlockPos const& pos, uchar face, bool const isSimTick);
109
110 MCAPI bool $useItem(::ItemStack& item);
111
112 MCAPI bool $useItemAsAttack(::ItemStack& item);
113
114 MCAPI ::InteractionResult $useItemOn(
115 ::ItemStack& item,
116 ::BlockPos const& at,
117 uchar face,
118 ::Vec3 const& hit,
119 ::Block const* targetBlock,
120 bool isFirstEvent
121 );
122
123 MCAPI void $tick();
124
125 MCAPI void $setTrialMode(bool isEnabled);
126
127 MCAPI bool $isInTrialMode();
128
129 MCAPI void $registerUpsellScreenCallback(::std::function<void(bool)> callback);
130 // NOLINTEND
131
132public:
133 // vftables
134 // NOLINTBEGIN
135 MCNAPI static void** $vftable();
136 // NOLINTEND
137};
Definition Actor.h:102
Definition BlockPos.h:17
Definition Block.h:37
Definition GameMode.h:22
Definition InteractionResult.h:5
Definition ItemStack.h:23
Definition SurvivalMode.h:18
static MCAPI void ** $vftable()
Definition Vec3.h:10