// PrivateMediaScreenChat.cs using Simuspaces.Simulation; public class PrivateMediaScreenChat : SimuScriptBase { public override void Start() { // Register without the slash. Players invoke it using /yt. RegisterChatCommand("yt", OnYouTubeCommand); Log("[PrivateMediaScreenChat] Registered /yt command."); } void OnYouTubeCommand(SVChatCommandInfo info) { if (info == null || info.Args == null || info.Args.Length == 0) { Log("[PrivateMediaScreenChat] Usage: /yt "); Log("[PrivateMediaScreenChat] Usage: /yt "); return; } string screenId; string url; if (info.Args.Length == 1) { // /yt // Change every media screen for only this player. screenId = "*"; url = info.Args[0]; } else { // /yt // Change one media screen for only this player. screenId = info.Args[0]; url = info.Args[1]; } if (string.IsNullOrWhiteSpace(url)) { Log("[PrivateMediaScreenChat] URL cannot be empty."); return; } SetMediaScreenUrlForUser(info.Username, screenId, url); string sceneIdentifier = GetCurrentSceneIdentifier(); Log("[PrivateMediaScreenChat] Set screen '" + screenId + "' to '" + url + "' for only user '" + info.Username + "' in scene instance '" + sceneIdentifier + "'."); } }