LeviLamina
Loading...
Searching...
No Matches
MobMovementGravity.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/ecs/Optional.h"
7#include "mc/deps/ecs/strict/EntityModifier.h"
8#include "mc/deps/ecs/strict/Exclude.h"
9#include "mc/deps/ecs/strict/Include.h"
10
11// auto generated forward declare list
12// clang-format off
16class Vec2;
17class Vec3;
27struct PhysicsComponent;
30// clang-format on
31
32namespace MobMovementGravity {
33// functions
34// NOLINTBEGIN
35MCAPI void forSystems(::std::function<void(::TickingSystemWithInfo&&)> const& func);
36
37MCAPI bool isCenterTopAndBottomNotInAir(::Vec3 const& pos, ::IConstBlockSource const& region, ::Vec2 const& aabbDim);
38
39MCFOLD void tickAirGravity(
40 ::entt::type_list<
41 ::Include<::AirTravelFlagComponent>,
42 ::Exclude<::AutoClimbTravelFlagComponent, ::LevitateTravelFlagComponent>>,
43 ::StrictEntityContext const& context,
44 ::ActorDataFlagComponent const& synchedActorData,
45 ::MobEffectsComponent const& mobEffects,
46 ::StateVectorComponent const& stateVector,
47 ::EntityModifier<::ApplyGravityComponent> modifier
48);
49
50#ifdef LL_PLAT_S
51MCAPI void tickDefaultGravity(
52 ::StrictEntityContext const& context,
53 ::ActorDataFlagComponent const& synchedActorData,
54 ::MobEffectsComponent const& mobEffects,
55 ::StateVectorComponent const& stateVector,
56 ::EntityModifier<::ApplyGravityComponent>& modifier
57);
58#endif
59
60MCFOLD void tickGroundGravity(
61 ::entt::type_list<
62 ::Include<::GroundTravelFlagComponent>,
63 ::Exclude<::AutoClimbTravelFlagComponent, ::LevitateTravelFlagComponent>>,
64 ::StrictEntityContext const& context,
65 ::ActorDataFlagComponent const& synchedActorData,
66 ::MobEffectsComponent const& mobEffects,
67 ::StateVectorComponent const& stateVector,
68 ::EntityModifier<::ApplyGravityComponent> modifier
69);
70
71MCAPI void tickLavaGravity(
72 ::StrictEntityContext const& context,
73 ::Optional<::NavigationComponent const> navigation,
74 ::Optional<::PhysicsComponent const> physics,
75 ::AABBShapeComponent const& aabbShape,
76 ::ActorDataFlagComponent const& synchedActorData,
77 ::StateVectorComponent const& stateVector,
78 ::EntityModifier<::ApplyGravityComponent> modifier,
79 ::IConstBlockSource const& region
80);
81
82#ifdef LL_PLAT_C
83MCAPI void tickLavaWalkGravity(
84 ::entt::type_list<
85 ::Include<::LavaTravelFlagComponent>,
86 ::Exclude<::AutoClimbTravelFlagComponent, ::LevitateTravelFlagComponent>>,
87 ::StrictEntityContext const& context,
88 ::NavigationComponent const& navigation,
89 ::ActorDataFlagComponent const& synchedActorData,
90 ::MobEffectsComponent const& mobEffects,
91 ::StateVectorComponent const& stateVector,
92 ::EntityModifier<::ApplyGravityComponent> modifier
93);
94#endif
95
96MCAPI void tickMobWaterGravity(
97 ::StrictEntityContext const& context,
98 ::Optional<::NavigationComponent const> navigation,
99 ::Optional<::PhysicsComponent const> physics,
100 ::AABBShapeComponent const& aabbShape,
101 ::ActorDataFlagComponent const& synchedActorData,
102 ::StateVectorComponent const& stateVector,
103 ::EntityModifier<::ApplyGravityComponent> modifier,
104 ::IConstBlockSource const& region
105);
106// NOLINTEND
107
108} // namespace MobMovementGravity
Definition IConstBlockSource.h:25
Definition NavigationComponent.h:19
Definition StrictEntityContext.h:8
Definition Vec2.h:5
Definition Vec3.h:10
Definition AABBShapeComponent.h:9
Definition ActorDataFlagComponent.h:9
Definition AirTravelFlagComponent.h:5
Definition ApplyGravityComponent.h:5
Definition AutoClimbTravelFlagComponent.h:5
Definition GroundTravelFlagComponent.h:5
Definition LavaTravelFlagComponent.h:5
Definition LevitateTravelFlagComponent.h:5
Definition MobEffectsComponent.h:10
Definition PhysicsComponent.h:5
Definition StateVectorComponent.h:8
Definition TickingSystemWithInfo.h:13