Ejemplo n.º 1
0
 /// <summary>
 /// This routine does the movement animation.
 /// </summary>
 /// <returns>Nothing; IEnumerator is just for coroutines</returns>
 /// <param name="path">The path we want to move along</param>
 /// <param name="bCombatMenu">This combat Menu will be hide during animation</param>
 public IEnumerator MoveRoutine(BMapTile[] path, BCombatMenu bCombatMenu)
 {
     bCombatMenu.Hide();
     for (int i = 1; i < path.Length; i++)
     {
         Vector3 nextWp    = path[i].transform.position;
         Vector3 lookPoint = nextWp;
         lookPoint.y = 0;
         meshContainer.transform.LookAt(lookPoint);
         do
         {
             Vector3 translation = nextWp - transform.position;
             float   distance    = translation.magnitude;
             translation = translation.normalized * Time.deltaTime * movementSpeed;
             if (distance < translation.magnitude)
             {
                 transform.position = nextWp;
                 break;
             }
             else
             {
                 transform.Translate(transform.InverseTransformDirection(translation));
             }
             yield return(0);
         } while(transform.position != nextWp);
     }
     bCombatMenu.OpenForBUnit(parent);
     EventProxyManager.FireEvent(this, new EventDoneEvent());
 }
Ejemplo n.º 2
0
    public void PopupCombatMenu()
    {
        // reset movement display
        Activate();


        bCombatMenu.OpenForBUnit(this);
    }