LeviLamina
Loading...
Searching...
No Matches
RailMovementUtility.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Block;
8class BlockPos;
10class Vec3;
11// clang-format on
12
14public:
15 // RailMovementUtility inner types declare
16 // clang-format off
17 struct Exit;
18 struct RailExits;
19 // clang-format on
20
21 // RailMovementUtility inner types define
22 struct Exit {
23 public:
24 // member variables
25 // NOLINTBEGIN
29 // NOLINTEND
30
31 public:
32 // prevent constructor by default
33 Exit& operator=(Exit const&);
34 Exit(Exit const&);
35 Exit();
36 };
37
38 struct RailExits {
39 public:
40 // member variables
41 // NOLINTBEGIN
44 // NOLINTEND
45
46 public:
47 // prevent constructor by default
48 RailExits& operator=(RailExits const&);
49 RailExits(RailExits const&);
50 RailExits();
51 };
52
53public:
54 // static functions
55 // NOLINTBEGIN
56 MCAPI static ::Vec3 calculateGoldenRailSpeedIncrease(
57 ::IConstBlockSource const& region,
58 ::BlockPos const& pos,
59 int direction,
60 ::Vec3 posDelta
61 );
62
63 MCAPI static ::Vec3 calculateMoveVelocity(
64 ::Block const& block,
65 int railDirection,
66 float maxSpeed,
67 bool hasPassenger,
68 ::Vec3& posDelta,
69 bool& haltTrack,
70 bool& powerTrack,
71 ::std::function<bool(::Vec3&)> const& calculateAllPassengersInputFunc
72 );
73
74 MCAPI static ::Vec3 calculatePostRailMovementMinecartPosition(
75 ::IConstBlockSource const& region,
76 ::Vec3 const& originalEntityPosition,
77 ::Vec3 entityPos,
78 ::BlockPos const& pos,
79 int railDirection,
80 ::Vec3& posDelta
81 );
82
83 MCAPI static bool getPos(::IConstBlockSource const& region, ::Vec3& valueVec, ::Vec3 pos);
84 // NOLINTEND
85
86public:
87 // static variables
88 // NOLINTBEGIN
89 MCAPI static ::std::array<::RailMovementUtility::RailExits, 10> const& RAIL_EXITS();
90 // NOLINTEND
91};
Definition BlockPos.h:18
Definition Block.h:36
Definition IConstBlockSource.h:24
Definition RailMovementUtility.h:13
Definition Vec3.h:10
Definition RailMovementUtility.h:22
Definition RailMovementUtility.h:38
Definition Alias.h:14