public override Task<DebugResult> Attach(dynamic args) { string name = getString (args, "name"); var nameLower = name.ToLower (); if (nameLower.Contains ("unity") && nameLower.Contains ("editor")) { var editorProcess = FindUnityEditorProcess (); if (editorProcess == null) return Task.FromResult (new DebugResult (8001, "Could not find Unity editor process", new {})); Debugger.Connect (IPAddress.Loopback, GetDebuggerPort(editorProcess)); var debugResult = new DebugResult (); debugResult.Add(new OutputEvent("UnityDebug: Attached to Unity editor process '" + editorProcess.ProcessName + "' (" + editorProcess.Id + ")\n")); return Task.FromResult (debugResult); } return Task.FromResult (new DebugResult (8002, "Unknown target name '{_name}'. Did you mean 'Unity Editor'?", new { _name = name})); }
DebugResult CreateDebugResult(string message) { var debugResult = new DebugResult (); debugResult.Add (new OutputEvent (message)); return debugResult; }