internal float ModifyCharge(float amount, PowerUnitData unit) { float num = 0f; if (unit.Battery != null) { if (amount >= 0f) { num = Mathf.Min(amount, unit.Battery.capacity - unit.Battery.charge); unit.Battery.charge += num; } else { num = -Mathf.Min(-amount, unit.Battery.charge); unit.Battery.charge += num; } } if (unit.Battery.charge < 1) { unit.Battery.charge = 0f; } return(num); }
internal void AddBattery(Pickupable battery, string slot) { var newBattery = new PowerUnitData(); newBattery.Initialize(battery, slot); Batteries.Add(newBattery); }