public double consumeFNResourcePerSecond(double power_per_second, String resourcename) { power_per_second = Math.Max(power_per_second, 0); ORSResourceManager manager = getManagerForVessel(resourcename, vessel); if (manager == null) { //UnityEngine.Debug.LogWarning("ORS - did not find manager for vessel"); return(0); } if (!fnresource_supplied.ContainsKey(resourcename)) { fnresource_supplied.Add(resourcename, 0); } double power_taken_per_second = Math.Max(Math.Min(power_per_second, fnresource_supplied[resourcename]), 0); fnresource_supplied[resourcename] -= power_taken_per_second; manager.powerDrawPerSecond(this, power_per_second, power_taken_per_second); return(power_taken_per_second); }
public double consumeFNResourcePerSecond(double power_per_second, String resourcename, ORSResourceManager manager = null) { power_per_second = Math.Max(power_per_second, 0); if (manager == null) { manager = getManagerForVessel(resourcename); } if (manager == null) { return(0); } if (!fnresource_supplied.ContainsKey(resourcename)) { fnresource_supplied.Add(resourcename, 0); } double power_taken_per_second = Math.Max(Math.Min(power_per_second, fnresource_supplied[resourcename]), 0); fnresource_supplied[resourcename] -= power_taken_per_second; manager.powerDrawPerSecond(this, power_per_second, power_taken_per_second); return(power_taken_per_second); }