Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
VehicleUtils.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5struct ActorUniqueID;
6
7// auto generated forward declare list
8// clang-format off
9class Actor;
10class BaseGameVersion;
11class Block;
12class BlockPos;
14class Vec3;
15namespace VehicleUtils { struct VehicleDirections; }
16// clang-format on
17
18namespace VehicleUtils {
19LLAPI bool isPassengerOfActor(::Actor const& maybePassenger, ::ActorUniqueID const& actorID);
20
21// functions
22// NOLINTBEGIN
23MCNAPI bool arePassengersOfSameActor(::Actor const& maybePassenger1, ::Actor const& maybePassenger2);
24
25MCNAPI ::std::optional<float> calculateBlockFloorHeight(::IConstBlockSource const& region, ::BlockPos const& blockPos);
26
27MCNAPI auto getActorExitPatternStrategy(::BaseGameVersion const& version) -> ::std::optional<::Vec3> (*)(
28 ::VehicleUtils::VehicleDirections const&,
29 ::std::function<bool(::Vec3 const&, ::Vec3 const&)>
30);
31
32MCNAPI bool ignoredExitCollisionBlock(::Block const& block);
33
34MCNAPI ::std::optional<::Vec3> testPosFollowingEjectPattern(
35 ::VehicleUtils::VehicleDirections const& vehicleDirections,
36 ::std::function<bool(::Vec3 const&, ::Vec3 const&)> callback
37);
38
39MCNAPI ::std::optional<::Vec3> testPosFollowingLegacyActivatorRailPattern(
40 ::VehicleUtils::VehicleDirections const& vehicleDirections,
41 ::std::function<bool(::Vec3 const&, ::Vec3 const&)> callback
42);
43
44MCNAPI ::std::optional<::Vec3> testPosFollowingLegacyActorPattern(
45 ::VehicleUtils::VehicleDirections const&,
46 ::std::function<bool(::Vec3 const&, ::Vec3 const&)> callback
47);
48// NOLINTEND
49
50} // namespace VehicleUtils
Definition Actor.h:116
Definition BaseGameVersion.h:8
Definition BlockPos.h:14
Definition Block.h:42
Definition IConstBlockSource.h:25
Definition Vec3.h:10
Definition ActorUniqueID.h:5
Definition VehicleDirections.h:10