public bool IsSameTerminal(LG_ComputerTerminal terminal) { if (VerifyTerminal == null || terminal == null) { return(false); } return(terminal.GetInstanceID() == VerifyTerminal.GetInstanceID()); }
public static void AddCommand(LG_ComputerTerminal terminal, string cmdText, string helpText, Action <LG_ComputerTerminal, string, string> onCmdReceived) { if (terminal == null) { return; } if (terminal.m_command.m_commandsPerString.ContainsKey(cmdText.ToLower())) { return; } TerminalMessage.OnRecievedCustomCmd += (LG_ComputerTerminal eTerminal, string cmd, string arg1, string arg2) => { if (!IsSame(terminal, eTerminal)) { return; } if (cmdText.Equals(cmd, StringComparison.OrdinalIgnoreCase)) { onCmdReceived?.Invoke(eTerminal, arg1, arg2); } }; var id = terminal.GetInstanceID(); var newCmdId = 0; if (_CommandCustomIDDict.ContainsKey(id)) { newCmdId = ++_CommandCustomIDDict[id]; } else { newCmdId = 100000; _CommandCustomIDDict.Add(id, newCmdId); } terminal.m_command.AddCommand((TERM_Command)newCmdId, cmdText, helpText); }
private static bool IsSame(LG_ComputerTerminal a, LG_ComputerTerminal b) { return(a.GetInstanceID() == b.GetInstanceID()); }