Ejemplo n.º 1
0
 private bool TryProcessMove()
 {
     if (CombatManager.Instance.IsAITurn())
     {
         return(false);
     }
     else if (this._data.Target.Current == null &&
              !GUIManager.Instance.GetGUILocked() &&
              !GUIManager.Instance.GetInteractionLocked())
     {
         if (!this._data.DoubleClick)
         {
             var data = new EvTileSelectData();
             data.Target = this._data.Target;
             var e = new EvTileSelect(data);
             e.TryProcess();
             return(true);
         }
         else
         {
             var data = new EvPathMoveData();
             data.Target = this._data.Target;
             var path = new EvPathMoveUtil().GetPathMove(data);
             path.TryProcess();
             return(true);
         }
     }
     else
     {
         return(false);
     }
 }
Ejemplo n.º 2
0
 private void DoMove(CTile tile)
 {
     if (this._prevTiles.Contains(tile))
     {
         this.EndTurn(null);
     }
     else
     {
         this._prevTiles.Add(tile);
         var data = new EvPathMoveData();
         data.Char   = this._agent;
         data.Target = tile;
         var path = new EvPathMoveUtil().GetPathMove(data);
         path.AddCallback(this.InitCallbackToDetermineAction, CALLBACK_PRIORITY);
         path.TryProcess();
     }
 }