public void ChangeTargetTo(IEntityWrapper newTarget, bool blockTargetChangeNextPulse) { var methodName = "ChangeTargetTo"; LogTrace(methodName, "newTarget: {0}, blockTargetChangeNextPulse: {1}", newTarget.ID, blockTargetChangeNextPulse); if (WasTargetChangedThisFrame) { LogMessage(methodName, LogSeverityTypes.Debug, "Error: We've already changed target this frame."); return; } if (IsTargetChangeNextFrameBlocked) { LogMessage(methodName, LogSeverityTypes.Debug, "Error: Target change is blocked."); return; } if (!_meCache.Targets.Contains(newTarget)) { LogMessage(methodName, LogSeverityTypes.Debug, "Error: The given target isn't in the list of targets. However, IsLockedTarget: {0}", newTarget.IsLockedTarget); return; } newTarget.MakeActiveTarget(); WasTargetChangedThisFrame = true; //Core.StealthBot.Logging.LogMessage(ObjectName, new Core.LogEventArgs(Core.LogSeverityTypes.Debug, // "ChangeTargetTo", String.Format("Setting {0} ({1}) as active target.", // newTarget.Name, newTarget.ID))); if (blockTargetChangeNextPulse) { IsTargetChangeNextFrameBlocked = true; } }