Files
tbd-station-14/Content.Client/Interfaces/IClientGameTicker.cs
ike709 31f1cf9936 Adds lobby music (#3620)
* Adds lobby music

* Add UI toggle for lobby music

* Pick the song serverside so everyone gets the same song

* Add more songs

* Fixes

* Catch-all end lobby music

* Rename it

* Catchall ambience cvar change

* Wait until we receive the lobby song to start playing one

* Fix toggling ready status resetting the song

* Comment

* Expend the last of my sanity fixing latejoin lobby music

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Move the var

Co-authored-by: ike709 <sparebytes@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-03-12 23:40:28 +01:00

28 lines
860 B
C#

using System;
using System.Collections.Generic;
using Robust.Shared.Network;
using static Content.Shared.GameTicking.SharedGameTicker;
namespace Content.Client.Interfaces
{
public interface IClientGameTicker
{
bool IsGameStarted { get; }
string? ServerInfoBlob { get; }
bool AreWeReady { get; }
string? LobbySong { get; }
bool DisallowedLateJoin { get; }
TimeSpan StartTime { get; }
bool Paused { get; }
Dictionary<NetUserId, PlayerStatus> Status { get; }
IReadOnlyList<string> JobsAvailable { get; }
void Initialize();
event Action InfoBlobUpdated;
event Action LobbyStatusUpdated;
event Action LobbyReadyUpdated;
event Action LobbyLateJoinStatusUpdated;
event Action<IReadOnlyList<string>> LobbyJobsAvailableUpdated;
}
}