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 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); }
private Card GetCardFromTask(PowerTask task) { Network.HistFullEntity power = task.GetPower() as Network.HistFullEntity; int iD = power.Entity.ID; return(GameState.Get().GetEntity(iD).GetCard()); }
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); }
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); }
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); } }
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 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()); }
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 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()); }
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); }