LeviLamina
Loading...
Searching...
No Matches
System.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/ecs/strict/AddRemove.h"
7#include "mc/deps/ecs/strict/EntityFactoryT.h"
8#include "mc/deps/ecs/strict/Filter.h"
9#include "mc/deps/ecs/strict/GlobalRead.h"
10#include "mc/deps/ecs/strict/GlobalWrite.h"
11#include "mc/deps/ecs/strict/IStrictTickingSystem.h"
12#include "mc/deps/ecs/strict/Read.h"
13#include "mc/deps/ecs/strict/StrictExecutionContext.h"
14#include "mc/deps/ecs/strict/Write.h"
15#include "mc/entity/components/LocalConstBlockSource.h"
16#include "mc/entity/components/LocalSpatialEntityFetcher.h"
17
18// auto generated forward declare list
19// clang-format off
20class AABB;
42struct MobFlagComponent;
45struct OffsetsComponent;
49struct PlayerComponent;
53struct VehicleComponent;
54namespace BlockSourceVisitor { struct CollisionShape; }
55// clang-format on
56
57namespace MoveCollisionSystem {
58
59struct System : public ::IStrictTickingSystem<::StrictExecutionContext<
60 ::Filter<
61 ::CanStandOnPowderSnowComponent,
62 ::CanStandOnPowderSnowFromEquipmentComponent,
63 ::HorseFlagComponent,
64 ::MobFlagComponent,
65 ::ParrotFlagComponent,
66 ::VehicleComponent,
67 ::CamelFlagComponent,
68 ::PlayerComponent,
69 ::CollidableMobFlagComponent,
70 ::FallingBlockFlagComponent>,
71 ::Read<
72 ::AABBShapeComponent,
73 ::MovementAbilitiesComponent,
74 ::ActorTypeComponent,
75 ::FallDistanceComponent,
76 ::PassengerComponent,
77 ::ActorGameTypeComponent,
78 ::ActorDataFlagComponent,
79 ::VehicleComponent,
80 ::ActorRotationComponent,
81 ::MobBodyRotationComponent,
82 ::RenderRotationComponent,
83 ::StandAnimationComponent,
84 ::OffsetsComponent,
85 ::VanillaOffsetComponent,
86 ::PassengerRenderingRidingOffsetComponent,
87 ::DimensionTypeComponent,
88 ::MaxAutoStepComponent,
89 ::CollidableMobNearFlagComponent,
90 ::MinecartFlagComponent>,
91 ::Write<::MoveRequestComponent>,
92 ::AddRemove<>,
93 ::GlobalRead<
94 ::ExternalDataComponent,
95 ::LocalConstBlockSourceFactoryComponent,
96 ::LocalSpatialEntityFetcherFactoryComponent>,
97 ::GlobalWrite<>,
98 ::EntityFactoryT<>>> {
99public:
100 // System inner types declare
101 // clang-format off
102 struct SpatialQueries;
104 // clang-format on
105
106 // System inner types define
108 public:
109 // member variables
110 // NOLINTBEGIN
111 ::ll::TypedStorage<8, 392, ::LocalSpatialEntityFetcher> mFetcher;
112 ::ll::TypedStorage<8, 392, ::LocalConstBlockSource> mBlockSource;
113 // NOLINTEND
114 };
115
117 public:
118 // member variables
119 // NOLINTBEGIN
120 ::ll::TypedStorage<8, 8, ::LocalConstBlockSourceFactoryComponent*> mBlockSourceFactory;
121 ::ll::TypedStorage<8, 8, ::LocalSpatialEntityFetcherFactoryComponent*> mFetcherFactory;
122 // NOLINTEND
123 };
124
125 using CollisionShapeVec = ::std::vector<::BlockSourceVisitor::CollisionShape>;
126
127public:
128 // member variables
129 // NOLINTBEGIN
130 ::ll::TypedStorage<8, 24, ::std::vector<::BlockSourceVisitor::CollisionShape>> mScratchTempCollisionShapes;
131 ::ll::TypedStorage<8, 24, ::std::vector<::BlockSourceVisitor::CollisionShape>> mScratchTempCollisionShapes2;
132 ::ll::TypedStorage<8, 24, ::std::vector<::AABB>> mScratchTempShapes;
133 // NOLINTEND
134
135public:
136 // virtual functions
137 // NOLINTBEGIN
138 virtual void tick(
140 ::Filter<
151 ::Read<
179 ) /*override*/;
180
181 virtual void singleTick(
183 ::Filter<
194 ::Read<
221 ::EntityFactoryT<>>& executionContext,
222 ::StrictEntityContext& entityContext
223 ) /*override*/;
224 // NOLINTEND
225
226public:
227 // static functions
228 // NOLINTBEGIN
229 MCAPI static ::std::optional<::MoveCollisionSystem::System::SpatialQueryFactories> createSpatialQueryFactories(
231 ::Filter<
242 ::Read<
270 );
271 // NOLINTEND
272
273public:
274 // virtual function thunks
275 // NOLINTBEGIN
276 MCAPI void $tick(
278 ::Filter<
289 ::Read<
317 );
318
319 MCAPI void $singleTick(
321 ::Filter<
332 ::Read<
359 ::EntityFactoryT<>>& executionContext,
360 ::StrictEntityContext& entityContext
361 );
362
363
364 // NOLINTEND
365
366public:
367 // vftables
368 // NOLINTBEGIN
369 MCNAPI static void** $vftable();
370 // NOLINTEND
371};
372
373} // namespace MoveCollisionSystem
Definition AABB.h:18
Definition IStrictTickingSystem.h:6
Definition StrictEntityContext.h:8
Definition StrictExecutionContext.h:6
Definition AABBShapeComponent.h:9
Definition ActorDataFlagComponent.h:9
Definition ActorGameTypeComponent.h:8
Definition ActorRotationComponent.h:8
Definition ActorTypeComponent.h:8
Definition AddRemove.h:6
Definition CollisionShape.h:16
Definition CamelFlagComponent.h:5
Definition CanStandOnPowderSnowComponent.h:5
Definition CanStandOnPowderSnowFromEquipmentComponent.h:5
Definition CollidableMobFlagComponent.h:5
Definition CollidableMobNearFlagComponent.h:5
Definition DimensionTypeComponent.h:8
Definition EntityFactoryT.h:6
Definition ExternalDataComponent.h:10
Definition FallDistanceComponent.h:5
Definition FallingBlockFlagComponent.h:5
Definition Filter.h:6
Definition GlobalRead.h:6
Definition GlobalWrite.h:6
Definition HorseFlagComponent.h:5
Definition LocalConstBlockSourceFactoryComponent.h:8
Definition LocalSpatialEntityFetcherFactoryComponent.h:8
Definition MaxAutoStepComponent.h:8
Definition MinecartFlagComponent.h:5
Definition MobBodyRotationComponent.h:5
Definition MobFlagComponent.h:5
Definition System.h:98
static MCAPI void ** $vftable()
Definition MoveRequestComponent.h:11
Definition MovementAbilitiesComponent.h:5
Definition OffsetsComponent.h:8
Definition ParrotFlagComponent.h:5
Definition PassengerComponent.h:8
Definition PassengerRenderingRidingOffsetComponent.h:8
Definition PlayerComponent.h:5
Definition Read.h:6
Definition RenderRotationComponent.h:8
Definition StandAnimationComponent.h:5
Definition VanillaOffsetComponent.h:8
Definition VehicleComponent.h:10
Definition Write.h:6
Definition context.h:5