Example #1
0
 public void MoveToObject(GameObject target, MovementController[] units)
 {
     if (target.TryGetComponent(out WorldObject worldObject))
     {
         MovementController[] possibleUnits = SkipImpossible(worldObject, units);                                                           // om characters die geen interactie kunnen hebben met het object uit te sluiten.
         Vector2[]            positions     = Positioning.GetCurrentPositions(possibleUnits);                                               // voor als ze niet kunnen verplaatsen (geen ruimte)
         Vector2[]            destinations  = Positioning.GetUnitGroupDestinationsAroundWorldObject(worldObject, positions, possibleUnits); // bepalen van positie rond object
         SetTarget(worldObject, possibleUnits, destinations);                                                                               // naar opject verplaatsen en AI instellen voor interactie
     }
     else
     {
         Vector2[] positions = Positioning.GetCurrentPositions(units);
         for (int i = 0; i < units.Length; i++)
         {
             units[i].MoveToPosition(positions[i]);
             units[i].ac.actualTarget = null;
         }
     }
 }