Ejemplo n.º 1
0
        private void GetBatteryForDrone(Drone drone)
        {
            if (drone.GetBattery() != null)
            {
                return;
            }

            if (_Data.drones.Count >= _Data.batteries.Count)
            {
                drone.AssignBattery(BuyBattery(drone));
            }
            else
            {
                drone.AssignBattery(_Data.freeBatteries.GetMax(true));
                drone.GetBattery().AssignDrone(drone);
            }
        }
Ejemplo n.º 2
0
 private void RemoveBatteryFromDrone(Drone drone)
 {
     if (drone.GetHub() == this && _Data.freeBatteries.Add(drone.GetBattery().UID, drone.GetBattery()))
     {
         _Data.chargingBatteries.Add(drone.GetBattery().UID, drone.GetBattery());
         drone.AssignBattery(null);
     }
 }