public static void HandlePlaySound(Session session, params string[] parameters) { try { Network.Enum.Sound sound = Network.Enum.Sound.Invalid; string message = ""; float volume = 1f; var soundEvent = new GameMessageSound(session.Player.Guid, Network.Enum.Sound.Invalid, volume); if (parameters.Length > 1) { if (parameters[1] != "") { volume = float.Parse(parameters[1]); } } message = $"Unable to find a sound called {parameters[0]} to play."; if (Enum.TryParse(parameters[0], true, out sound)) { if (Enum.IsDefined(typeof(Network.Enum.Sound), sound)) { message = $"Playing sound {Enum.GetName(typeof(Network.Enum.Sound), sound)}"; // add the sound to the player queue for everyone to hear // player action queue items will execute on the landblock // player.playsound will play a sound on only the client session that called the function session.Player.ActionApplySoundEffect(sound, session.Player.Guid); } } var sysChatMessage = new GameMessageSystemChat(message, ChatMessageType.Broadcast); session.Network.EnqueueSend(sysChatMessage); } catch (Exception) { // Do Nothing } }
public static void HandlePlaySound(Session session, params string[] parameters) { try { Network.Enum.Sound sound = Network.Enum.Sound.Invalid; string message = ""; float volume = 1f; var soundEvent = new GameMessageSound(session.Player.Guid, Network.Enum.Sound.Invalid, volume); if (parameters.Length > 1) { if (parameters[1] != "") { volume = float.Parse(parameters[1]); } } message = $"Unable to find a sound called {parameters[0]} to play."; if (Enum.TryParse(parameters[0], true, out sound)) { if (Enum.IsDefined(typeof(Network.Enum.Sound), sound)) { message = $"Playing sound {Enum.GetName(typeof(Network.Enum.Sound), sound)}"; soundEvent = new GameMessageSound(session.Player.Guid, sound, volume); } } var sysChatMessage = new GameMessageSystemChat(message, ChatMessageType.Broadcast); session.Network.EnqueueSend(soundEvent, sysChatMessage); } catch (Exception) { // Do Nothing } }