Exemplo n.º 1
0
        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;
            }
        }