Beispiel #1
0
        public bool TryConnectingToFFXIV(int processId = -1)
        {
            if (IsConnectedTo(processId))
            {
                return(true); //do nothing if it's already connected to the correct process or if any process is valid
            }
            if (processId <= 0)
            {
                processId = _processConnector.GetFFXIVProcesses().FirstOrDefault();
            }

            if (processId <= 0)                     // no process available
            {
                if (_processConnector.Disconnect()) //ensure it's disconnected
                {
                    OnProcessChanged?.Invoke(this, new ProcessChangeEventArgs(FFXIVProcessValid, FFXIVProcessId));
                }
                return(false);
            }

            if (ConnectToFFXIV(processId))
            {
                OnProcessChanged?.Invoke(this, new ProcessChangeEventArgs(FFXIVProcessValid, FFXIVProcessId));
            }
            return(FFXIVProcessValid); // either connected or not
        }
Beispiel #2
0
 public bool DisconnectFromFFXIV()
 {
     if (_processConnector.Disconnect())
     {
         OnProcessChanged?.Invoke(this, new ProcessChangeEventArgs(FFXIVProcessValid, FFXIVProcessId));
     }
     return(!FFXIVProcessValid);
 }
Beispiel #3
0
        private void OutputHandler(object sendingProcess, DataReceivedEventArgs outLine)
        {
            OnProcessChanged?.Invoke(outLine.Data);

            ProcessLog += outLine.Data + "\r\n";
        }
Beispiel #4
0
 private void ProcessConnector_OnConnectionLost(object sender, EventArgs e)
 {
     OnProcessChanged?.Invoke(this, new ProcessChangeEventArgs(FFXIVProcessValid, FFXIVProcessId));
 }