LeviLamina
Loading...
Searching...
No Matches
MonsterAiStepSystem.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/deps/ecs/ViewT.h"
7
#include "mc/deps/ecs/strict/AddRemove.h"
8
#include "mc/deps/ecs/strict/EntityFactoryT.h"
9
#include "mc/deps/ecs/strict/Filter.h"
10
#include "mc/deps/ecs/strict/GlobalRead.h"
11
#include "mc/deps/ecs/strict/GlobalWrite.h"
12
#include "mc/deps/ecs/strict/IStrictTickingSystem.h"
13
#include "mc/deps/ecs/strict/Include.h"
14
#include "mc/deps/ecs/strict/Read.h"
15
#include "mc/deps/ecs/strict/StrictExecutionContext.h"
16
#include "mc/deps/ecs/strict/Write.h"
17
18
// auto generated forward declare list
19
// clang-format off
20
class
IConstBlockSource
;
21
class
StrictEntityContext
;
22
struct
AABBShapeComponent
;
23
struct
ActorMovementTickNeededComponent
;
24
struct
BlazeFlagComponent
;
25
struct
DimensionTypeComponent
;
26
struct
LavaSlimeFlagComponent
;
27
struct
LocalConstBlockSourceFactoryComponent
;
28
struct
MonsterFlagComponent
;
29
struct
NoActionTimeComponent
;
30
struct
OffsetsComponent
;
31
struct
StateVectorComponent
;
32
struct
TickingSystemWithInfo
;
33
// clang-format on
34
35
struct
MonsterAiStepSystem
36
:
public
::IStrictTickingSystem
<::StrictExecutionContext<
37
::Filter<
38
::ActorMovementTickNeededComponent,
39
::BlazeFlagComponent,
40
::LavaSlimeFlagComponent,
41
::MonsterFlagComponent>,
42
::Read<::AABBShapeComponent, ::DimensionTypeComponent, ::OffsetsComponent, ::StateVectorComponent>,
43
::Write<::NoActionTimeComponent>,
44
::AddRemove<>,
45
::GlobalRead<::LocalConstBlockSourceFactoryComponent>,
46
::GlobalWrite<>,
47
::EntityFactoryT<>>> {
48
public
:
49
// MonsterAiStepSystem inner types define
50
using
Base =
::IStrictTickingSystem
<
::StrictExecutionContext
<
51
::Filter
<
52
::ActorMovementTickNeededComponent
,
53
::BlazeFlagComponent
,
54
::LavaSlimeFlagComponent
,
55
::MonsterFlagComponent
>,
56
::Read<::AABBShapeComponent, ::DimensionTypeComponent, ::OffsetsComponent, ::StateVectorComponent>
,
57
::Write<::NoActionTimeComponent>
,
58
::AddRemove<>
,
59
::GlobalRead<::LocalConstBlockSourceFactoryComponent>
,
60
::GlobalWrite<>
,
61
::EntityFactoryT<>
>>;
62
63
public
:
64
// virtual functions
65
// NOLINTBEGIN
66
virtual
void
tick(
67
::StrictExecutionContext
<
68
::Filter
<
69
::ActorMovementTickNeededComponent
,
70
::BlazeFlagComponent
,
71
::LavaSlimeFlagComponent
,
72
::MonsterFlagComponent
>,
73
::Read<::AABBShapeComponent, ::DimensionTypeComponent, ::OffsetsComponent, ::StateVectorComponent>
,
74
::Write<::NoActionTimeComponent>
,
75
::AddRemove<>
,
76
::GlobalRead<::LocalConstBlockSourceFactoryComponent>
,
77
::GlobalWrite<>
,
78
::EntityFactoryT<>
>& strictContext
79
)
/*override*/
;
80
81
virtual
~MonsterAiStepSystem
()
/*override*/
=
default
;
82
// NOLINTEND
83
84
public
:
85
// static functions
86
// NOLINTBEGIN
87
MCAPI static ::TickingSystemWithInfo createSystem();
88
89
MCAPI
static
void
tickMonsterAiStep(
90
::StrictEntityContext
const
& entity,
91
::AABBShapeComponent
const
& aabbShapeComponent,
92
::OffsetsComponent
const
& offsetsComponent,
93
::StateVectorComponent
const
& stateVectorComponent,
94
::NoActionTimeComponent
& noActionTimeComponent,
95
::ViewT
<
::StrictEntityContext
,
::Include<::BlazeFlagComponent>
> blazeView,
96
::ViewT
<
::StrictEntityContext
,
::Include<::LavaSlimeFlagComponent>
> lavaSlimeView,
97
::IConstBlockSource
const
& region
98
);
99
// NOLINTEND
100
101
public
:
102
// virtual function thunks
103
// NOLINTBEGIN
104
MCAPI
void
$tick(
105
::StrictExecutionContext
<
106
::Filter
<
107
::ActorMovementTickNeededComponent
,
108
::BlazeFlagComponent
,
109
::LavaSlimeFlagComponent
,
110
::MonsterFlagComponent
>,
111
::Read<::AABBShapeComponent, ::DimensionTypeComponent, ::OffsetsComponent, ::StateVectorComponent>
,
112
::Write<::NoActionTimeComponent>
,
113
::AddRemove<>
,
114
::GlobalRead<::LocalConstBlockSourceFactoryComponent>
,
115
::GlobalWrite<>
,
116
::EntityFactoryT<>
>& strictContext
117
);
118
119
120
// NOLINTEND
121
122
public
:
123
// vftables
124
// NOLINTBEGIN
125
MCNAPI
static
void
**
$vftable
();
126
// NOLINTEND
127
};
IConstBlockSource
Definition
IConstBlockSource.h:25
IStrictTickingSystem
Definition
IStrictTickingSystem.h:6
StrictEntityContext
Definition
StrictEntityContext.h:8
StrictExecutionContext
Definition
StrictExecutionContext.h:6
ViewT
Definition
ViewT.h:6
AABBShapeComponent
Definition
AABBShapeComponent.h:9
ActorMovementTickNeededComponent
Definition
ActorMovementTickNeededComponent.h:5
AddRemove
Definition
AddRemove.h:6
BlazeFlagComponent
Definition
BlazeFlagComponent.h:5
DimensionTypeComponent
Definition
DimensionTypeComponent.h:13
EntityFactoryT
Definition
EntityFactoryT.h:6
Filter
Definition
Filter.h:6
GlobalRead
Definition
GlobalRead.h:6
GlobalWrite
Definition
GlobalWrite.h:6
Include
Definition
Include.h:6
LavaSlimeFlagComponent
Definition
LavaSlimeFlagComponent.h:5
LocalConstBlockSourceFactoryComponent
Definition
LocalConstBlockSourceFactoryComponent.h:8
MonsterAiStepSystem
Definition
MonsterAiStepSystem.h:47
MonsterAiStepSystem::$vftable
static MCAPI void ** $vftable()
MonsterFlagComponent
Definition
MonsterFlagComponent.h:5
NoActionTimeComponent
Definition
NoActionTimeComponent.h:5
OffsetsComponent
Definition
OffsetsComponent.h:8
Read
Definition
Read.h:6
StateVectorComponent
Definition
StateVectorComponent.h:8
TickingSystemWithInfo
Definition
TickingSystemWithInfo.h:13
Write
Definition
Write.h:6
src
mc
entity
systems
MonsterAiStepSystem.h
Generated on
for LeviLamina by
1.16.1