View Source Teiserver.Game (Teiserver v0.0.4)
The contextual module for:
Teiserver.Game.Lobby
Teiserver.Game.Match
Teiserver.Game.MatchMembership
Teiserver.Game.MatchSettingType
Teiserver.Game.MatchSetting
Teiserver.Game.MatchResult
Teiserver.Game.ServerManagedLobby
Summary
Lobby
@spec add_client_to_lobby(Teiserver.user_id(), Teiserver.Game.Lobby.id()) :: :ok | {:error, String.t()}
@spec can_add_client_to_lobby(Teiserver.user_id(), Teiserver.Game.Lobby.id()) :: {boolean(), String.t() | nil}
@spec can_add_client_to_lobby( Teiserver.user_id(), Teiserver.Game.Lobby.id(), String.t() ) :: {boolean(), String.t() | nil}
@spec close_lobby(Teiserver.Game.Lobby.id()) :: :ok
@spec cycle_lobby(Teiserver.Game.Lobby.id()) :: :ok
@spec get_lobby(Teiserver.Game.Lobby.id()) :: Teiserver.Game.Lobby.t() | nil
@spec get_lobby_attribute(Teiserver.Game.Lobby.id(), atom()) :: any()
@spec get_lobby_summary(Teiserver.Game.Lobby.id()) :: Teiserver.Game.LobbySummary.t() | nil
@spec list_lobby_ids() :: [Teiserver.Game.Lobby.id()]
@spec list_local_lobby_ids() :: [Teiserver.Game.Lobby.id()]
@spec lobby_start_match(Teiserver.Game.Lobby.id()) :: :ok
@spec open_lobby(Teiserver.user_id(), Teiserver.Game.Lobby.name()) :: {:ok, Teiserver.Game.Lobby.id()} | {:error, String.t()}
@spec remove_client_from_lobby(Teiserver.user_id(), Teiserver.Game.Lobby.id()) :: :ok | nil
@spec stream_lobby_summaries() :: Enumerable.t(Teiserver.Game.LobbySummary.t())
@spec stream_lobby_summaries(map()) :: Enumerable.t(Teiserver.Game.LobbySummary.t())
@spec subscribe_to_lobby(Teiserver.Game.Lobby.id() | Teiserver.Game.Lobby.t()) :: :ok
@spec unsubscribe_from_lobby(Teiserver.Game.Lobby.id() | Teiserver.Game.Lobby.t()) :: :ok
@spec update_lobby(Teiserver.Game.Lobby.id(), map()) :: :ok | nil
Match
@spec change_match(Teiserver.Game.Match.t(), map()) :: Ecto.Changeset.t()
@spec create_match(map()) :: {:ok, Teiserver.Game.Match.t()} | {:error, Ecto.Changeset.t()}
@spec delete_match(Teiserver.Game.Match.t()) :: {:ok, Teiserver.Game.Match.t()} | {:error, Ecto.Changeset.t()}
@spec end_match(Teiserver.Game.Match.id(), map()) :: Teiserver.Game.Match.t()
@spec get_match(Teiserver.Game.Match.id(), Teiserver.query_args()) :: Teiserver.Game.Match.t() | nil
@spec get_match!(Teiserver.Game.Match.id(), Teiserver.query_args()) :: Teiserver.Game.Match.t()
@spec list_matches(Teiserver.query_args()) :: [Teiserver.Game.Match.t()]
@spec start_match(Teiserver.Game.Lobby.t()) :: Teiserver.Game.Match.t()
@spec update_match(Teiserver.Game.Match, map()) :: {:ok, Teiserver.Game.Match.t()} | {:error, Ecto.Changeset.t()}
Match Type
@spec change_match_type(Teiserver.Game.MatchType.t(), map()) :: Ecto.Changeset.t()
@spec create_match_type(map()) :: {:ok, Teiserver.Game.MatchType.t()} | {:error, Ecto.Changeset.t()}
@spec delete_match_type(Teiserver.Game.MatchType.t()) :: {:ok, Teiserver.Game.MatchType.t()} | {:error, Ecto.Changeset.t()}
@spec get_match_type(Teiserver.Game.MatchType.id(), Teiserver.query_args()) :: Teiserver.Game.MatchType.t() | nil
@spec get_match_type!(Teiserver.Game.MatchType.id(), Teiserver.query_args()) :: Teiserver.Game.MatchType.t()
@spec get_or_create_match_type(String.t()) :: Teiserver.Game.MatchType.id()
@spec list_match_types(Teiserver.query_args()) :: [Teiserver.Game.MatchType.t()]
@spec update_match_type(Teiserver.Game.MatchType, map()) :: {:ok, Teiserver.Game.MatchType.t()} | {:error, Ecto.Changeset.t()}
Match Setting
@spec change_match_setting(Teiserver.Game.MatchSetting.t(), map()) :: Ecto.Changeset.t()
@spec create_match_setting(map()) :: {:ok, Teiserver.Game.MatchSetting.t()} | {:error, Ecto.Changeset.t()}
@spec delete_match_setting(Teiserver.Game.MatchSetting.t()) :: {:ok, Teiserver.Game.MatchSetting.t()} | {:error, Ecto.Changeset.t()}
@spec get_match_setting( Teiserver.match_id(), Teiserver.Game.MatchSettingType.id(), Teiserver.query_args() ) :: Teiserver.Game.MatchSetting.t() | nil
@spec get_match_setting!( Teiserver.match_id(), Teiserver.Game.MatchSettingType.id(), Teiserver.query_args() ) :: Teiserver.Game.MatchSetting.t()
@spec get_match_settings_map(Teiserver.match_id()) :: %{ required(String.t()) => String.t() }
See Teiserver.Game.MatchSettingLib.get_match_settings_map/1
.
@spec list_match_settings(Teiserver.query_args()) :: [Teiserver.Game.MatchSetting.t()]
@spec update_match_setting(Teiserver.Game.MatchSetting, map()) :: {:ok, Teiserver.Game.MatchSetting.t()} | {:error, Ecto.Changeset.t()}
Match Setting Type
@spec change_match_setting_type(Teiserver.Game.MatchSettingType.t(), map()) :: Ecto.Changeset.t()
See Teiserver.Game.MatchSettingTypeLib.change_match_setting_type/2
.
@spec create_match_setting_type(map()) :: {:ok, Teiserver.Game.MatchSettingType.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchSettingTypeLib.create_match_setting_type/1
.
@spec delete_match_setting_type(Teiserver.Game.MatchSettingType.t()) :: {:ok, Teiserver.Game.MatchSettingType.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchSettingTypeLib.delete_match_setting_type/1
.
@spec get_match_setting_type( Teiserver.Game.MatchSettingType.id(), Teiserver.query_args() ) :: Teiserver.Game.MatchSettingType.t() | nil
See Teiserver.Game.MatchSettingTypeLib.get_match_setting_type/2
.
@spec get_match_setting_type!( Teiserver.Game.MatchSettingType.id(), Teiserver.query_args() ) :: Teiserver.Game.MatchSettingType.t()
See Teiserver.Game.MatchSettingTypeLib.get_match_setting_type!/2
.
@spec get_or_create_match_setting_type(String.t()) :: Teiserver.Game.MatchSettingType.id()
See Teiserver.Game.MatchSettingTypeLib.get_or_create_match_setting_type/1
.
@spec list_match_setting_types(Teiserver.query_args()) :: [ Teiserver.Game.MatchSettingType.t() ]
See Teiserver.Game.MatchSettingTypeLib.list_match_setting_types/1
.
@spec update_match_setting_type(Teiserver.Game.MatchSettingType, map()) :: {:ok, Teiserver.Game.MatchSettingType.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchSettingTypeLib.update_match_setting_type/2
.
Functions
@spec change_match_membership(Teiserver.Game.MatchMembership.t(), map()) :: Ecto.Changeset.t()
See Teiserver.Game.MatchMembershipLib.change_match_membership/2
.
@spec create_many_match_memberships([map()]) :: {:ok, Teiserver.Game.MatchMembership.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchMembershipLib.create_many_match_memberships/1
.
@spec create_many_match_settings([map()]) :: {:ok, Teiserver.Game.MatchSetting.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchSettingLib.create_many_match_settings/1
.
@spec create_match_membership(map()) :: {:ok, Teiserver.Game.MatchMembership.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchMembershipLib.create_match_membership/1
.
@spec delete_match_membership(Teiserver.Game.MatchMembership.t()) :: {:ok, Teiserver.Game.MatchMembership.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchMembershipLib.delete_match_membership/1
.
@spec get_match_membership( Teiserver.match_id(), Teiserver.user_id(), Teiserver.query_args() ) :: Teiserver.Game.MatchMembership.t() | nil
See Teiserver.Game.MatchMembershipLib.get_match_membership/3
.
@spec get_match_membership!( Teiserver.match_id(), Teiserver.user_id(), Teiserver.query_args() ) :: Teiserver.Game.MatchMembership.t()
See Teiserver.Game.MatchMembershipLib.get_match_membership!/3
.
@spec list_match_memberships(Teiserver.query_args()) :: [ Teiserver.Game.MatchMembership.t() ]
See Teiserver.Game.MatchMembershipLib.list_match_memberships/1
.
@spec update_match_membership(Teiserver.Game.MatchMembership, map()) :: {:ok, Teiserver.Game.MatchMembership.t()} | {:error, Ecto.Changeset.t()}
See Teiserver.Game.MatchMembershipLib.update_match_membership/2
.