Exemplo n.º 1
0
    protected override bool AddPowerSourceAndTargets(PowerTaskList taskList)
    {
        if (!this.HasSourceCard(taskList))
        {
            return(false);
        }
        this.m_joustTaskIndex = -1;
        List <PowerTask> list = taskList.GetTaskList();

        for (int i = 0; i < list.Count; i++)
        {
            PowerTask            task  = list[i];
            Network.HistMetaData power = task.GetPower() as Network.HistMetaData;
            if ((power != null) && (power.MetaType == HistoryMeta.Type.JOUST))
            {
                this.m_joustTaskIndex = i;
            }
        }
        if (this.m_joustTaskIndex < 0)
        {
            return(false);
        }
        Card card = taskList.GetSourceEntity().GetCard();

        base.SetSource(card);
        return(true);
    }
Exemplo n.º 2
0
    private Card GetCardFromTask(PowerTask task)
    {
        Network.HistFullEntity power = task.GetPower() as Network.HistFullEntity;
        int iD = power.Entity.ID;

        return(GameState.Get().GetEntity(iD).GetCard());
    }
 public void GetSettingsFromUi(out PowerTask task, out bool beepWhenFinished)
 {
     encryptionUserControl.GetOptionsFromUi();
     task = (PowerTask)jobAfterOkBackupComboBox.SelectedIndex;
     _options.Priority = (ThreadPriority)backupPriorityComboBox.SelectedIndex;
     beepWhenFinished  = hearBeepsCheckBox.Checked;
 }
    public static TAG_ZONE GetFinalZoneForEntity(Entity entity)
    {
        PowerProcessor       powerProcessor = GameState.Get().GetPowerProcessor();
        List <PowerTaskList> list           = new List <PowerTaskList>();

        if (powerProcessor.GetCurrentTaskList() != null)
        {
            list.Add(powerProcessor.GetCurrentTaskList());
        }
        list.AddRange(powerProcessor.GetPowerQueue().GetList());
        for (int i = list.Count - 1; i >= 0; i--)
        {
            List <PowerTask> taskList = list[i].GetTaskList();
            for (int j = taskList.Count - 1; j >= 0; j--)
            {
                PowerTask             task  = taskList[j];
                Network.HistTagChange power = task.GetPower() as Network.HistTagChange;
                if ((power != null) && ((power.Entity == entity.GetEntityId()) && (power.Tag == 0x31)))
                {
                    return((TAG_ZONE)power.Value);
                }
            }
        }
        return(entity.GetZone());
    }
    protected virtual bool AddPowerSourceAndTargets(PowerTaskList taskList)
    {
        if (!this.HasSourceCard(taskList))
        {
            return(false);
        }
        if (!SpellUtils.CanAddPowerTargets(taskList))
        {
            return(false);
        }
        Card card = taskList.GetSourceEntity().GetCard();

        this.SetSource(card);
        List <PowerTask> list = this.m_taskList.GetTaskList();

        for (int i = 0; i < list.Count; i++)
        {
            PowerTask task = list[i];
            Card      targetCardFromPowerTask = this.GetTargetCardFromPowerTask(task);
            if (((targetCardFromPowerTask != null) && (card != targetCardFromPowerTask)) && !this.IsTarget(targetCardFromPowerTask))
            {
                this.AddTarget(targetCardFromPowerTask);
            }
        }
        return((card != null) || (this.m_targets.Count > 0));
    }
Exemplo n.º 6
0
    public PowerTask CreateTask(Network.PowerHistory netPower)
    {
        PowerTask item = new PowerTask();

        item.SetPower(netPower);
        this.m_tasks.Add(item);
        return(item);
    }
Exemplo n.º 7
0
    private Entity LoadCardFromTask(PowerTask task)
    {
        Network.HistFullEntity power  = task.GetPower() as Network.HistFullEntity;
        Network.Entity         entity = power.Entity;
        int    iD      = entity.ID;
        Entity entity3 = GameState.Get().GetEntity(iD);

        entity3.LoadCard(entity.CardID);
        return(entity3);
    }
Exemplo n.º 8
0
        public OrderedDictionary Vector()
        {
            var v = new OrderedDictionary();

            if (Aura != null)
            {
                v.AddRange(Aura.Vector(), Prefix());
            }
            //v.AddRange(Aura != null ? Aura.Vector : Auras.Aura.NullVector, Prefix);

            if (Enchant != null)
            {
                v.AddRange(Enchant.Vector(), Prefix());
            }
            //v.AddRange(Enchant != null ? Enchant.Vector : Enchant.NullVector, Prefix);

            if (Trigger != null)
            {
                v.AddRange(Trigger.Vector(), Prefix());
            }
            //v.AddRange(Trigger != null ? Trigger.Vector : Trigger.GetNullVector(), Prefix);

            if (PowerTask != null)
            {
                v.AddRange(PowerTask.Vector(), Prefix());
            }
            //v.AddRange(PowerTask != null ? SimpleTask.GetVector(PowerTask) : SimpleTask.GetNullVector("NullPowerTask."), Prefix);

            if (DeathrattleTask != null)
            {
                v.AddRange(DeathrattleTask.Vector(), Prefix());
            }
            //v.AddRange(DeathrattleTask != null ? SimpleTask.GetVector(DeathrattleTask) : SimpleTask.GetNullVector("NullDeathrattleTask."), Prefix);

            if (ComboTask != null)
            {
                v.AddRange(ComboTask.Vector(), Prefix());
            }
            //v.AddRange(ComboTask != null ? SimpleTask.GetVector(ComboTask) : SimpleTask.GetNullVector("NullComboTask."), Prefix);

            if (TopDeckTask != null)
            {
                v.AddRange(TopDeckTask.Vector(), Prefix());
            }
            //v.AddRange(TopDeckTask != null ? SimpleTask.GetVector(TopDeckTask) : SimpleTask.GetNullVector("NullTopDeckTask."), Prefix);

            if (OverkillTask != null)
            {
                v.AddRange(OverkillTask.Vector(), Prefix());
            }
            //v.AddRange(OverkillTask != null ? SimpleTask.GetVector(OverkillTask) : SimpleTask.GetNullVector("NullOverkillTask."), Prefix);

            return(v);
        }
 protected void AddMultiplePowerTargets_FromAnyPower(Card sourceCard, List <PowerTask> tasks)
 {
     for (int i = 0; i < tasks.Count; i++)
     {
         PowerTask task = tasks[i];
         Card      targetCardFromPowerTask = this.GetTargetCardFromPowerTask(i, task);
         if (((targetCardFromPowerTask != null) && (sourceCard != targetCardFromPowerTask)) && !this.IsTarget(targetCardFromPowerTask.gameObject))
         {
             this.AddTarget(targetCardFromPowerTask.gameObject);
         }
     }
 }
Exemplo n.º 10
0
 public int FindEarlierIncompleteTaskIndex(int taskIndex)
 {
     for (int i = taskIndex - 1; i >= 0; i--)
     {
         PowerTask task = this.m_tasks[i];
         if (!task.IsCompleted())
         {
             return(i);
         }
     }
     return(-1);
 }
 protected bool AddSinglePowerTarget_FromAnyPower(Card sourceCard, List <PowerTask> tasks)
 {
     for (int i = 0; i < tasks.Count; i++)
     {
         PowerTask task = tasks[i];
         Card      targetCardFromPowerTask = this.GetTargetCardFromPowerTask(i, task);
         if ((targetCardFromPowerTask != null) && (sourceCard != targetCardFromPowerTask))
         {
             this.AddTarget(targetCardFromPowerTask.gameObject);
             return(true);
         }
     }
     return(false);
 }
    private int FindSpawnTaskIndex()
    {
        List <PowerTask> taskList = base.m_taskList.GetTaskList();

        for (int i = this.m_metaDataIndex - 1; i >= 0; i--)
        {
            PowerTask task = taskList[i];
            if (task.GetPower() is Network.HistFullEntity)
            {
                return(i);
            }
        }
        return(-1);
    }
Exemplo n.º 13
0
    public void DoTasks(int startIndex, int count, CompleteCallback callback, object userData)
    {
        bool flag           = false;
        int  taskStartIndex = -1;
        int  taskEndIndex   = Mathf.Min((int)((startIndex + count) - 1), (int)(this.m_tasks.Count - 1));

        for (int i = startIndex; i <= taskEndIndex; i++)
        {
            PowerTask task = this.m_tasks[i];
            if (!task.IsCompleted())
            {
                if (taskStartIndex < 0)
                {
                    taskStartIndex = i;
                }
                if (ZoneMgr.IsHandledPower(task.GetPower()))
                {
                    flag = true;
                    break;
                }
            }
        }
        if (taskStartIndex < 0)
        {
            taskStartIndex = startIndex;
        }
        if (flag)
        {
            ZoneChangeCallbackData data = new ZoneChangeCallbackData {
                m_startIndex       = startIndex,
                m_count            = count,
                m_taskListCallback = callback,
                m_taskListUserData = userData
            };
            this.m_zoneChangeList = ZoneMgr.Get().AddServerZoneChanges(this, taskStartIndex, taskEndIndex, new ZoneMgr.ChangeCompleteCallback(this.OnZoneChangeComplete), data);
            if (this.m_zoneChangeList != null)
            {
                return;
            }
        }
        if (Gameplay.Get() != null)
        {
            Gameplay.Get().StartCoroutine(this.WaitForGameStateAndDoTasks(taskStartIndex, taskEndIndex, startIndex, count, callback, userData));
        }
        else
        {
            this.DoTasks(taskStartIndex, taskEndIndex, startIndex, count, callback, userData);
        }
    }
Exemplo n.º 14
0
    private string FindRevealedCardId(PowerTaskList taskList)
    {
        Network.HistActionStart sourceAction = taskList.GetSourceAction();
        List <PowerTask>        list         = taskList.GetTaskList();

        for (int i = 0; i < list.Count; i++)
        {
            PowerTask task = list[i];
            Network.HistShowEntity power = task.GetPower() as Network.HistShowEntity;
            if ((power != null) && (power.Entity.ID == sourceAction.Entity))
            {
                return(power.Entity.CardID);
            }
        }
        return(null);
    }
    protected override Card GetTargetCardFromPowerTask(int index, PowerTask task)
    {
        Network.HistFullEntity power = task.GetPower() as Network.HistFullEntity;
        if (power == null)
        {
            return(null);
        }
        Network.Entity entity  = power.Entity;
        Entity         entity3 = GameState.Get().GetEntity(entity.ID);

        if (entity3 == null)
        {
            UnityEngine.Debug.LogWarning(string.Format("{0}.GetTargetCardFromPowerTask() - WARNING trying to target entity with id {1} but there is no entity with that id", this, entity.ID));
            return(null);
        }
        return(entity3.GetCard());
    }
    protected virtual Card GetTargetCardFromPowerTask(int index, PowerTask task)
    {
        Network.PowerHistory power = task.GetPower();
        if (power.Type != Network.PowerType.TAG_CHANGE)
        {
            return(null);
        }
        Network.HistTagChange change = power as Network.HistTagChange;
        Entity entity = GameState.Get().GetEntity(change.Entity);

        if (entity == null)
        {
            UnityEngine.Debug.LogWarning(string.Format("{0}.GetTargetCardFromPowerTask() - WARNING trying to target entity with id {1} but there is no entity with that id", this, change.Entity));
            return(null);
        }
        return(entity.GetCard());
    }
Exemplo n.º 17
0
    protected override Card GetTargetCardFromPowerTask(int index, PowerTask task)
    {
        Network.PowerHistory power = task.GetPower();
        if (power.Type != Network.PowerType.FULL_ENTITY)
        {
            return(null);
        }
        Network.HistFullEntity entity  = (Network.HistFullEntity)power;
        Network.Entity         entity2 = entity.Entity;
        Entity entity3 = GameState.Get().GetEntity(entity2.ID);

        if (entity3 == null)
        {
            Debug.LogWarning(string.Format("{0}.GetTargetCardFromPowerTask() - WARNING trying to target entity with id {1} but there is no entity with that id", this, entity2.ID));
            return(null);
        }
        return(entity3.GetCard());
    }
    public override bool AddPowerTargets()
    {
        base.m_visualToTargetIndexMap.Clear();
        base.m_targetToMetaDataMap.Clear();
        base.m_targets.Clear();
        List <PowerTask> taskList = base.m_taskList.GetTaskList();

        for (int i = 0; i < taskList.Count; i++)
        {
            PowerTask task = taskList[i];
            Card      targetCardFromPowerTask = this.GetTargetCardFromPowerTask(i, task);
            if (targetCardFromPowerTask != null)
            {
                this.AddTarget(targetCardFromPowerTask.gameObject);
            }
        }
        return(base.m_targets.Count > 0);
    }
    private void DoTasksUntilSpawn(Card targetCard)
    {
        int entityId = targetCard.GetEntity().GetEntityId();
        List <PowerTask> taskList = base.m_taskList.GetTaskList();
        int num2 = 0;

        for (int i = 0; i < taskList.Count; i++)
        {
            PowerTask task = taskList[i];
            Network.HistFullEntity power = task.GetPower() as Network.HistFullEntity;
            if ((power != null) && (power.Entity.ID == entityId))
            {
                num2 = i;
                break;
            }
        }
        base.m_taskList.DoTasks(0, num2 + 1);
    }
Exemplo n.º 20
0
        /// <summary>
        /// Performs the specified task
        /// </summary>
        /// <param name="task">task to perform</param>
        /// <returns>true - if OK</returns>
        public static bool DoTask(PowerTask task)
        {
            switch (task)
            {
            case PowerTask.Hibernate: return(hibernate());

            case PowerTask.LogOff: return(logOff());

            case PowerTask.Shutdown: return(shutdown());

            case PowerTask.Suspend: return(suspend());

            case PowerTask.Reboot: return(reboot());

            case PowerTask.None: return(true);

            default:
                throw new NotImplementedException(task.ToString());
            }
        }
Exemplo n.º 21
0
 public override bool AddPowerTargets()
 {
     foreach (PowerTask task in base.m_taskList.GetTaskList())
     {
         Network.PowerHistory power = task.GetPower();
         if (power.Type == Network.PowerType.FULL_ENTITY)
         {
             Network.HistFullEntity entity = power as Network.HistFullEntity;
             int    iD      = entity.Entity.ID;
             Entity entity2 = GameState.Get().GetEntity(iD);
             if (entity2 == null)
             {
                 UnityEngine.Debug.LogWarning(string.Format("{0}.AddPowerTargets() - WARNING encountered HistFullEntity where entity id={1} but there is no entity with that id", this, iD));
                 return(false);
             }
             if (entity2.IsHeroPower())
             {
                 this.m_heroPowerTask = task;
                 this.AddTarget(entity2.GetCard().gameObject);
                 if (this.m_weaponTask != null)
                 {
                     return(true);
                 }
             }
             else if (entity2.IsWeapon())
             {
                 this.m_weaponTask = task;
                 this.AddTarget(entity2.GetCard().gameObject);
                 if (this.m_heroPowerTask != null)
                 {
                     return(true);
                 }
             }
         }
     }
     this.Reset();
     return(false);
 }
Exemplo n.º 22
0
        public void SetSettingsToUi(ProgramOptions options, PowerTask task, BackupTask backupTask, bool beepWhenFinished, ThreadPriority priority)
        {
            _options          = options;
            _options.Priority = priority;

            encryptionUserControl.SetOptionsToUi(new object[] { _options, backupTask });

            encryptionUserControl.DontCareAboutPasswordLength = _options.DontCareAboutPasswordLength;
            backupPriorityComboBox.SelectedIndex   = (int)_options.Priority;
            jobAfterOkBackupComboBox.SelectedIndex = (int)task;
            hearBeepsCheckBox.Checked = beepWhenFinished;

            // if our logging level set to support
            // then user wants to get support with our log
            // so disabling power control
            if (_options.LoggingLevel == LogLevel.Support)
            {
                jobAfterOkBackupComboBox.SelectedIndex = (int)PowerTask.None;
                jobAfterOkBackupComboBox.Enabled       = false;
            }

            backupPriorityComboBox.SelectedIndex = (int)_options.Priority;
        }
Exemplo n.º 23
0
        private void Client_OnTaskFinished(object sender, PowerTask task, PowerMessage mess, bool success)
        {
            runOnUIThread(() =>
            {
                lock (listBoxRunningTasks)
                {
                    foreach (var item in listBoxRunningTasks.Items)
                    {
                        if (((TaskItem)item).taskId == task.taskId)
                        {
                            listBoxRunningTasks.Items.Remove(item);
                            break;
                        }
                    }

                    tasksStack.Remove(task.taskId);

                    if (tasksStack.Count == 0)
                    {
                        watchingTaskId = -1;
                    }
                    else
                    {
                        watchingTaskId = tasksStack.Keys.First();
                        int index      = 0;
                        foreach (var item in listBoxRunningTasks.Items)
                        {
                            if (((TaskItem)item).taskId == watchingTaskId)
                            {
                                listBoxRunningTasks.SelectedIndex = index;
                            }
                            index++;
                        }
                    }
                }
            });
        }
Exemplo n.º 24
0
 private static object Extract(PowerTask pt)
 {
     if (pt == null) return null;
     return new
     {
         toString = pt.ToString()
     };
 }
Exemplo n.º 25
0
 public TaskItem(PowerTask powerTask)
     : this(powerTask.taskId, powerTask.taskName)
 {
 }
Exemplo n.º 26
0
 private void Reset()
 {
     this.m_heroPowerTask = null;
     this.m_weaponTask    = null;
 }
 public void SetPowerTask(PowerTask powerTask)
 {
     this.m_powerTask = powerTask;
 }
Exemplo n.º 28
0
        private void Client_OnPowerMessageProcessed(object sender, PowerMessage mess)
        {
            runOnUIThread(() =>
            {
                switch (mess.messType)
                {
                case MessageType.TasksList:
                    listBoxAvailableTasks.Items.Clear();
                    foreach (PowerTaskFunc taskFunc in client.availableTasks.Values)
                    {
                        ListBoxItem item       = new ListBoxItem();
                        item.Content           = taskFunc.taskName;
                        item.PreviewMouseDown += (it, arg) =>
                        {
                            textBoxChosenTaskToRun.Text = taskNameToRun = taskFunc.taskName;
                        };
                        listBoxAvailableTasks.Items.Add(item);
                    }
                    break;

                case MessageType.TaskResult:
                    int valuesCount     = 0;
                    PowerTaskResult res = (PowerTaskResult)mess.value;
                    int[][] spectr      = ((int[][])(res).result);
                    foreach (int[] arr in spectr)
                    {
                        valuesCount += arr.Length;
                    }
                    tasksStack[res.taskId] += "Got " + valuesCount.ToString() + " values\n";
                    if (watchingTaskId == res.taskId)
                    {
                        textBoxTaskOutput.Text = tasksStack[res.taskId];
                        textBoxTaskOutput.ScrollToEnd();
                    }
                    break;

                case MessageType.TaskProgress:
                    PowerTaskProgress progress = (PowerTaskProgress)mess.value;
                    if (watchingTaskId == progress.taskId)
                    {
                        progressBarRunningTask.Value = progress.progress * 100;
                    }
                    break;

                default:
                    bool itIs = mess.value is PowerTask;
                    if (itIs)
                    {
                        PowerTask task = (PowerTask)mess.value;
                        Console.WriteLine("{0}: {1} | {2}", mess.messType, mess.value, task.taskName);
                        if (!tasksStack.ContainsKey(task.taskId))
                        {
                            return;
                        }
                        tasksStack[task.taskId] += mess.details.ToString();
                        textBoxTaskOutput.Text   = tasksStack[task.taskId];
                        textBoxTaskOutput.ScrollToEnd();
                    }
                    break;
                }
            });
        }