LeviLamina
Loading...
Searching...
No Matches
Command.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/network/packet/AgentActionType.h"
7#include "mc/world/actor/agent/agent_components/Direction.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Player;
13class Vec3;
14// clang-format on
15
16namespace AgentCommands {
17
18class Command {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 8, ::Actor&> mTarget;
23 ::ll::TypedStorage<8, 8, ::Player&> mCommander;
24 ::ll::TypedStorage<4, 4, ::AgentActionType> mActionType;
25 ::ll::TypedStorage<1, 1, bool> mResult;
26 ::ll::TypedStorage<1, 1, bool> mIsQueryResult;
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 Command& operator=(Command const&);
32 Command(Command const&);
33 Command();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~Command() = default;
39
40 virtual void execute();
41
42 virtual bool isDone() = 0;
43
44 virtual void tick();
45
46 virtual void fireCommandDoneEvent();
47 // NOLINTEND
48
49public:
50 // member functions
51 // NOLINTBEGIN
52#ifdef LL_PLAT_S
53 MCAPI ::Vec3 _getNextPosFromDirection(::AgentComponents::Direction dir);
54#endif
55 // NOLINTEND
56
57public:
58 // virtual function thunks
59 // NOLINTBEGIN
60 MCAPI void $execute();
61
62 MCFOLD void $tick();
63
64 MCAPI void $fireCommandDoneEvent();
65
66
67 // NOLINTEND
68};
69
70} // namespace AgentCommands
Definition Actor.h:114
Definition Player.h:129
Definition Vec3.h:10