39 enum class SpawningLogicState :
int {
41 WaitingForPlayers = 1,
43 WaitingForRewardEjection = 3,
169 MCAPI
void _dispenseItemAboveRandomCombatant(
::BlockSource& region);
171 MCAPI ::TrialSpawner::PlayerScanResult _doPlayerScan(
::BlockSource& region);
173 MCAPI ::std::vector<::TrialSpawner::WeightedItemStack>& _getDispensingItems(
::BlockSource& region);
175 MCAPI ::std::optional<::Vec3>
176 _getPositionToSpawnItemSpawner(
::BlockSource& region, ::std::vector<::ActorUniqueID>
const& eligibleActorIds)
const;
180 MCAPI
void _selectLootTable(
::Level& level);
182 MCAPI
void _sendParticlesForState(
::BlockSource& region,
::BlockPos pos, ::TrialSpawner::SpawningLogicState state);
190 MCAPI
void _tryRegisterNewPlayers(
::BlockSource& region, ::TrialSpawner::SpawningLogicState currentState);
196 MCAPI ::Mob* createAndAddDisplayEntity(
::BlockSource& region);
198 MCAPI ::SpawnData
const* getOrCreateNextSpawnData(
::Random& random);
200 MCAPI ::TrialSpawner::SpawningLogicState getSpawningLogicState(
::BlockSource& region)
const;
204 MCAPI
void removeDisplayEntity();
218 MCAPI
static void _ejectResultItems(
221 ::std::vector<::ItemStack>
const& items,
225 MCAPI static ::std::optional<::Vec3>
228 MCAPI static ::std::vector<::ItemStack> _getRandomLootTableItems(
232 ::std::string
const& lootTableName
235 MCAPI
static bool _isAllowedToSpawnInLevel(
::Level& level);
239 MCAPI
static void _removeMobByGameplay(
::Level& level,
::Actor& mob);