30 enum class GatewayTask : uchar {
40 ::ll::TypedStorage<1, 1, bool> mPlaceNewBlocks;
41 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ChunkViewSource>> mSource;
42 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
49 ::ll::TypedStorage<8, 8, ::BlockSource*> mRegion;
50 ::ll::TypedStorage<8, 24, ::std::vector<int>> mGateways;
51 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BlockPatternMatcher const>> mExitPortalPattern;
52 ::ll::TypedStorage<4, 4, int> mNumCrystalsAlive;
53 ::ll::TypedStorage<4, 4, int> mTicksSinceCrystalsScanned;
54 ::ll::TypedStorage<4, 4, int> mTicksSincePortalScanned;
55 ::ll::TypedStorage<4, 4, int> mTicksSinceLastPlayerScan;
56 ::ll::TypedStorage<1, 1, bool> mDragonKilled;
57 ::ll::TypedStorage<1, 1, bool> mPreviouslyKilled;
58 ::ll::TypedStorage<1, 1, bool> mDragonSpawned;
59 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mDragonUUID;
60 ::ll::TypedStorage<4, 12, ::BlockPos> mPortalLocation;
61 ::ll::TypedStorage<4, 12, ::BlockPos const> mDragonSpawnPos;
62 ::ll::TypedStorage<4, 4, ::RespawnAnimation> mRespawnStage;
63 ::ll::TypedStorage<4, 4, int> mRespawnTime;
64 ::ll::TypedStorage<8, 24, ::std::vector<::ActorUniqueID>> mRespawnCrystals;
65 ::ll::TypedStorage<1, 1, ::EndDragonFightVersion> mFightVersion;
66 ::ll::TypedStorage<8, 32, ::EndDragonFight::GateWayGenerator> mEntryGenerator;
67 ::ll::TypedStorage<8, 32, ::EndDragonFight::GateWayGenerator> mExitGenerator;
68 ::ll::TypedStorage<1, 1, ::EndDragonFight::GatewayTask> mBuildingOrVerifyingEndGatewayPair;
72 ::std::deque<::std::tuple<
73 ::EndDragonFight::GatewayTask,
82 MCAPI
void _createNewDragon();
94 ::EndDragonFight::GatewayTask,
103 ::EndDragonFight::GatewayTask,
static MCAPI bool _setEndGatewayBlockActorExitPosition(::BlockSource &entrySource, ::BlockSource &exitSource, ::BlockPos const &endGatewayActorPos, ::BlockPos const &destinationPos, bool lookForGateway)