Player State
DeLimit offers an easy to use API for finding out information about other players in the session.
Discovering Players
There are two ways to discover who is in the DeLimit session - events and polling. To get a list of players currently in the session, you can access the Players
property on the DeLimitMaster object:
var comms = FindObjectOfType<DeLimitMaster>(); foreach (var player in comms.Players) { Debug.Log("Player " + player.Name + " is in the game"); }
This will give you a set of VoicePlayerState objects (including one for the local player). These objects will stay valid forever and will be updated with new information as necessary.
DeLimit also exposes some events which will get invoked when certain things happen, for example a new player joining the session.
var comms = FindObjectOfType<DeLimitMaster>(); comms.OnPlayerJoinedSession += player => { Debug.Log("Player " + player.Name + " Joined session"); } comms.OnPlayerLeftSession += player => { Debug.Log("Player " + player.Name + " Left session"); }
The player
objects passed to the event handlers here are VoicePlayerState objects which expose a lot of useful data about the players such as if they are currently talking and a live readout of the amplitue.