private void _OnClick() { if (dp.dialedList.SequenceEqual(new List <int> { 6, 6, 6 })) { //if target phone plot exists, that means a call is already started if (_pm.targetPhoneCall != null) { return; } //start dialing the active player call var playerCalls = Services.plotManager.playingPlot.Where(plot => plot is PlotManager.PlayerCall).ToList(); foreach (var call in playerCalls) { var phonePlotCall = call as PlotManager.PlayerCall; if (!phonePlotCall.isPutThrough) { _pm.DialOut(phonePlotCall); return; } } _pm.DialOut(); } }