EverGameLobby

Shared manual-start lobby for all minigames.

Players are placed in Adventure mode and given a green concrete block ("Start Game") and a red concrete block ("Leave Game") via LobbyItems. Right-clicking the green block transitions to the active phase; right-clicking the red block kicks the player from the game space.

Optionally supports TeamSelectionLobby for team-based games.

Types

Link copied to clipboard
data class Config(val activity: GameActivity, val world: ServerLevel, val lobbySpawn: Vec3, val teamList: GameTeamList? = null, val onPlayerAdd: (ServerPlayer) -> Unit? = null, val onStart: (GameSpace, TeamSelectionLobby?) -> Unit)

Lobby configuration bundled into a single object to satisfy detekt's LongParameterList rule.

Functions

Link copied to clipboard

Sets up a manual-start lobby on the activity specified in config.

fun setup(activity: GameActivity, world: ServerLevel, lobbySpawn: Vec3, teamList: GameTeamList? = null, onPlayerAdd: (ServerPlayer) -> Unit? = null, onStart: (GameSpace, TeamSelectionLobby?) -> Unit)

Convenience overload that accepts individual parameters.